azure - 无法在同一网络上访问 Cassandra
问题描述
我正在尝试在 Azure VM 上运行 Spark Cassandra Kafka 集成演示。我确实在本地运行了演示,我得到了结果。当我尝试连接到 Cassandra VM 时,出现以下错误:
尝试查询的所有主机都失败(尝试:/10.1.0.6:9042 (com.datastax.driver.core.exceptions.TransportException: [/10.1.0.6:9042] 无法连接))
我有 3 个(连接的)虚拟机在 CentOs 7 上运行,它们可以相互 ping 通。我已经禁用了他们的防火墙。我还在安全组中添加了入站端口。
这可能会有所帮助:当我使用 nmap 检查每台机器上的某些特定端口(例如 9042)时,它显示它在本地打开,但是当我检查其他地址端口时,它显示它们已关闭。
版本信息:spark-version:2.3.1 Scala-version:2.11.7 java-version:1.8.0_181 cqlsh:5.0.1 | 卡桑德拉 3.9.0 | CQL 规范 3.4.2
解决方案
首先,同一 Vnet 中的 Azure VM 可以相互访问。您已经通过相互 ping 进行了检查。
您可以按照以下步骤进行检查:
- 如果允许所有 VM 的端口 9042 的流量,请检查安全规则。
- 检查服务是否监听 9042 端口,是否可以在本地访问。
- 检查防火墙是否允许来自端口 9042 的流量。
如果您不介意,您可以在测试连接时将 NSG 与 VM 的网络接口分离,只保留与子网关联的 NSG。
推荐阅读
- javascript - 如何在谷歌函数中绘制圆形或矩形等图形对象?
- javascript - Highmaps:当 colorAxis 中有数据类时,legendItemClick 不起作用,有人有解决方法吗?
- python - 使用 Python 抓取图像链接
- json - 如何从复杂的 json 创建简单的可编码结构
- python - Choropleth 地图不显示
- iis-7 - 停用网站 url 重定向到 IIS 中的另一个站点
- actions-on-google - 有没有办法使用预定的数据库输入或使用谷歌操作自动调用谷歌主页或语音助手?
- macos - MacOS VulkanInfo 报告 0 个验证层
- powershell - 如何在 PowerShell 中排除 Start-Transcript 的标头?
- transactions - 比特币全节点,在某些区块中显示奇怪的交易