Can';t使用公共IP启动Cassandra服务器(端口7000错误)
我正在centos 6.8上安装cassandra服务器,并更改为公共IP 通过使用方法,但在使用cassandra-f-R启动服务器时它卡住了,我得到了以下错误:Can';t使用公共IP启动Cassandra服务器(端口7000错误),cassandra,datastax,Cassandra,Datastax,我正在centos 6.8上安装cassandra服务器,并更改为公共IP 通过使用方法,但在使用cassandra-f-R启动服务器时它卡住了,我得到了以下错误: ERROR [main] 2019-09-10 11:42:31,684 CassandraDaemon.java:749 - Fatal configuration error org.apache.cassandra.exceptions.ConfigurationException: Unable to bind to a
ERROR [main] 2019-09-10 11:42:31,684 CassandraDaemon.java:749 - Fatal
configuration error
org.apache.cassandra.exceptions.ConfigurationException: Unable to bind to
address /<public ip>:7000. Set listen_address in cassandra.yaml to an
interface you can bind to, e.g., your private IP address on EC2
at org.apache.cassandra.net.MessagingService.getServerSockets(MessagingService.java:739) ~[apache-cassandra-3.11.4.jar:3.11.4]
at org.apache.cassandra.net.MessagingService.listen(MessagingService.java:681) ~[apache-cassandra-3.11.4.jar:3.11.4]
at org.apache.cassandra.net.MessagingService.listen(MessagingService.java:665) ~[apache-cassandra-3.11.4.jar:3.11.4]
at org.apache.cassandra.service.StorageService.prepareToJoin(StorageService.java:796) ~[apache-cassandra-3.11.4.jar:3.11.4]
at org.apache.cassandra.service.StorageService.initServer(StorageService.java:683) ~[apache-cassandra-3.11.4.jar:3.11.4]
at org.apache.cassandra.service.StorageService.initServer(StorageService.java:632) ~[apache-cassandra-3.11.4.jar:3.11.4]
at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:388) [apache-cassandra-3.11.4.jar:3.11.4]
at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:620) [apache-cassandra-3.11.4.jar:3.11.4]
at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:732) [apache-cassandra-3.11.4.jar:3.11.4]
ERROR[main]2019-09-10 11:42:31684 cassandrademon.java:749-致命
配置错误
org.apache.cassandra.exceptions.ConfigurationException:无法绑定到
地址/:7000。将cassandra.yaml中的listen_地址设置为
您可以绑定到的接口,例如EC2上的专用IP地址
在org.apache.cassandra.net.MessagingService.getServerSockets(MessagingService.java:739)~[apache-cassandra-3.11.4.jar:3.11.4]
在org.apache.cassandra.net.MessagingService.listen(MessagingService.java:681)~[apache-cassandra-3.11.4.jar:3.11.4]
在org.apache.cassandra.net.MessagingService.listen(MessagingService.java:665)~[apache-cassandra-3.11.4.jar:3.11.4]
在org.apache.cassandra.service.StorageService.prepareToJoin(StorageService.java:796)~[apache-cassandra-3.11.4.jar:3.11.4]
在org.apache.cassandra.service.StorageService.initServer(StorageService.java:683)~[apache-cassandra-3.11.4.jar:3.11.4]
在org.apache.cassandra.service.StorageService.initServer(StorageService.java:632)~[apache-cassandra-3.11.4.jar:3.11.4]
在org.apache.cassandra.service.cassandrademon.setup(cassandrademon.java:388)[apache-cassandra-3.11.4.jar:3.11.4]
在org.apache.cassandra.service.cassandrademon.activate(cassandrademon.java:620)[apache-cassandra-3.11.4.jar:3.11.4]
在org.apache.cassandra.service.cassandrademon.main(cassandrademon.java:732)[apache-cassandra-3.11.4.jar:3.11.4]
我尝试在/cassandra.yaml中进行更改
rpc_address: 0.0.0.0
listen_address: <public ip>
broadcast_rpc_address: <public ip>
rpc_地址:0.0.0.0
收听地址:
广播地址:
但它仍然停留在这一点上
rpc_地址
和广播_rpc_地址
是客户端的地址,但您需要配置节间通信
(与OSS Cassandra相同):
cassandra.yaml
中,将listen\u地址
设置为节点的私有IP地址,将broadcast\u地址
设置为节点的公共IP地址。这允许一个EC2区域中的DataStax企业节点绑定到另一个区域中的节点,从而支持多个数据中心。对于区域内流量,DataStax Enterprise在建立连接后切换到专用IP
cassandra.yaml
文件中种子节点的地址设置为公共IP的地址。专用IP不能在网络之间路由。例如:
谢谢。你救了我一天。但是在listen\u地址中,我使用localhost代替我的私有IP。私有IP不起作用。不管怎样,谢谢你的建议。