无法连接到 EC2 上的 cassandra 服务器?
Posted
技术标签:
【中文标题】无法连接到 EC2 上的 cassandra 服务器?【英文标题】:Unable to connect to cassandra server on EC2? 【发布时间】:2014-08-07 19:42:23 【问题描述】:我已经设置了一个新的 EC2 实例来在 EC2 上运行 cassandra,但我遇到了一堆似乎没有帮助的问题。我正在运行 apache-cassandra-2.1.0-rc3
我在我的 EC2 实例上打开了端口 9160、9042,说它的 IP 地址是 1.2.3.4
由于这是单节点系统,我没有打开其他端口,如
http://www.datastax.com/documentation/cassandra/2.0/cassandra/install/installAMISecurityGroup.html
当我尝试使用带有集群配置的 python 驱动程序连接到该主机时:
cluster = Cluster(contact_points=['1.2.3.4',], port=9160)
我收到错误:
File "....cluster.py", line 1649, in _reconnect_internal
raise NoHostAvailable("Unable to connect to any servers", errors)
cassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', '1.2.3.4': error(111, 'Connection refused'))
关于我需要在 cassandra.yml 文件中使用什么咒语以允许外部客户端连接在 EC2 实例上运行的 cassandra 实例的任何想法?
【问题讨论】:
【参考方案1】:用这个修改 cassandra.yaml:
rpc_address: 0.0.0.0
broadcast_rpc_address: <your ec2 private ip address>
在你的 python 代码中你应该使用端口 9042。
请记住,这样您就可以将您的 cassandra 集群打开到 Internet。
【讨论】:
以上是关于无法连接到 EC2 上的 cassandra 服务器?的主要内容,如果未能解决你的问题,请参考以下文章
无法连接到 Nodejs EC2 服务器上的 SQL Server 数据库
无法连接到端口 8080 上的 EC2 Windows 实例
我无法使用 DataStax Python 驱动程序连接到 Cassandra