KIC*_*KIC 4 ssh-tunnel cassandra
我有一个带有两个网络接口的服务器。Cassandra 正在侦听 eth1 上的专用内部数据库网络(无法从外部访问)。所以我做我的隧道是这样的:
ssh -f -N -L9161:192.XXX.XXX.200:9160 user@192.YYY.YYY.200 -P 9922
Run Code Online (Sandbox Code Playgroud)
其中 XXX 是内部数据库网络,YYY 是 ssh 正在侦听的网络。当我尝试时,cqlsh localhost 9161
出现以下异常:
Connection error: ('Unable to connect to any servers', {'localhost': ConnectionShutdown('Connection <AsyncoreConnection(139691023521360) localhost:9161 (closed)> is already closed',)})
Run Code Online (Sandbox Code Playgroud)
但是当我 telnet localhost 9161 时,我成功地获得了一个 telnet shell。当然,cassandra 正在运行。
任何想法如何让我的隧道工作?
小智 6
您需要代理端口 9160(Cassandra 客户端端口)和端口 9042(CQL 本机端口)。运行两个终端或使用这些标志使 ssh 客户端进入后台:
ssh -f -N -q -L 9042:192.XXX.XXX.200:9042 user@192.YYY.YYY.200 -P 9922
ssh -f -N -q -L 9160:192.XXX.XXX.200:9160 user@192.YYY.YYY.200 -P 9922
Run Code Online (Sandbox Code Playgroud)
现在您应该能够在本地主机的默认端口上与 cqlsh 连接。本地主机也是默认主机。
cqlsh -u [username] -p [password]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6560 次 |
最近记录: |