Oba*_*ama 11 cassandra nosql cassandra-cli cqlsh
我正在尝试配置Cassandra Datastax Community Edition在Windows上进行远程连接,
Cassandra Server安装在Windows 7 PC上,通过本地CQLSH,它可以完美地连接到本地服务器.
但是当我尝试从同一网络中的另一台PC连接CQLSH时,我收到以下错误消息:
连接错误:('无法连接到任何服务器',{'MYHOST':错误(10061,"尝试连接到[('HOST_IP',9042)].最后一个错误:由于目标计算机主动拒绝,因此无法建立连接它")})
所以我想知道如何正确配置(我应该在cassandra.yaml配置文件上做什么更改)Cassandra服务器允许远程连接.
先感谢您!
ahl*_*hll 19
这个怎么样:
在cassandra.yaml配置文件中进行以下更改:
start_rpc: true
rpc_address: 0.0.0.0
broadcast_rpc_address: [node-ip]
listen_address: [node-ip]
seed_provider:
- class_name: ...
- seeds: "[node-ip]"
Run Code Online (Sandbox Code Playgroud)
参考:https://gist.github.com/andykuszyk/7644f334586e8ce29eaf8b93ec6418c4
小智 16
远程访问Cassandra是通过其Cassandra 2.0的旧货端口.在Cassandra 2.0.x中,默认的cqlsh监听端口是9160,由rpc_port参数在cassandra.yaml中定义.默认情况下,Cassandra 2.0.x及更早版本通过在cassandra.yaml文件中将start_rpc配置为true来启用Thrift.
在Cassandra 2.1中,cqlsh实用程序使用本机协议.在使用Datastax python驱动程序的Cassandra 2.1中,默认的cqlsh监听端口是9042.
cassandra节点应绑定到服务器网卡的IP地址 - 它不应该是127.0.0.1或localhost,这是环回接口的IP,绑定到此将阻止直接远程访问.要配置绑定地址,请使用cassandra.yaml中的rpc_address参数.将其设置为0.0.0.0将侦听所有网络接口.
您是否检查过远程计算机是否可以连接到Cassandra节点?机器之间是否有防火墙?您可以尝试以下步骤来测试它:
1)确保您可以从您所在的服务器连接到该IP:
$ ssh user@xxx.xxx.xx.xx
2)检查节点的状态并确认它显示相同的IP:
$ nodetool状态
3)运行命令以连接IP(如果未使用默认值,则仅指定端口):
$ cqlsh xxx.xxx.xx.xx
Kat的替代解决方案.使用Ubuntu 16.04
server_user@**.**.**.**
如果运行停止cassandra:
ps aux | grep cassandra
如果正在运行,将输出一大块命令/标志,例如
ubuntu 14018 4.6 70.1 2335692 712080 pts/2 Sl + 04:15 0:11 java -Xloggc:./../ logs/gc.log ........
示例中的注释14018是进程ID
kill <process_id>
(在这种情况下14018)编辑cassandra.yaml文件如下
rpc_address: 0.0.0.0
broadcast_rpc_address: **.**.**.**
< - 您服务器的IP(不能设置为0.0.0.0)./bin/cassandra -f
(来自cassandra root)cqlsh **.**.**.**
(服务器的IP)连接进行测试.该./bin/nodetool status
地址报道我的本地主机IP(127.0.0.1),但cqlsh远程仍尽管工作.
归档时间: |
|
查看次数: |
32725 次 |
最近记录: |