【问题标题】:cassandra listening on host port, but can't connectcassandra 监听主机端口,但无法连接
【发布时间】:2016-12-13 01:43:03
【问题描述】:

当我尝试连接到 10.0.0.60 9042 时,出现错误:

[idf@node1 conf]$ cqlsh 10.0.0.60 9042
Connection error: ('Unable to connect to any servers', {'10.0.0.60': TypeError('ref() does not take keyword arguments',)})

但是,我可以看到 cassandra 正在侦听该端口。 不确定发生了什么?

[idf@node1 conf]$ nodetool status
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address    Load       Tokens  Owns (effective)  Host ID                               Rack
UN  10.0.0.60  4.02 GB    256     100.0%            aa1b3c7c-1440-4dbd-a22f-a9cbc892c282  rack1


[idf@node1 conf]$ sudo netstat -tulpn | grep -i listen | grep 22955
tcp        0      0 10.0.0.60:7000          0.0.0.0:*               LISTEN      22955/java          
tcp        0      0 127.0.0.1:7199          0.0.0.0:*               LISTEN      22955/java          
tcp        0      0 127.0.0.1:44321         0.0.0.0:*               LISTEN      22955/java          
tcp        0      0 10.0.0.60:9160          0.0.0.0:*               LISTEN      22955/java          
tcp6       0      0 10.0.0.60:9042          :::*                    LISTEN      22955/java         

[idf@node1 conf]$ ifconfig -a
docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 0.0.0.0
        ether 02:42:27:f4:35:a0  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp1s0f1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.0.60  netmask 255.255.255.0  broadcast 10.0.0.255
        inet6 fe80::225:90ff:fe1c:1c47  prefixlen 64  scopeid 0x20<link>
        ether 00:25:90:1c:1c:47  txqueuelen 1000  (Ethernet)
        RX packets 109  bytes 7996 (7.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 366  bytes 25730 (25.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device memory 0xfaee0000-faefffff  

【问题讨论】:

  • @zzn 谢谢。顺便说一句,为什么这条线在 tcp6 上? tcp6 0 0 10.0.0.60:9042 :::* LISTEN 22955/java
  • @zzn我不是故意的。我不知道。这就是我问的原因,也许这就是问题所在?
  • netstat 说它正在使用 ipv6。
  • @zzn,但这是怎么发生的呢?我没有告诉 cassandra 使用 IPV6?

标签: cassandra centos7


【解决方案1】:

尝试访问 cqlsh 如下:

   [idf@node1 conf]$ cqlsh 10.0.0.60
      OR
   [idf@node1 conf]$ cqlsh `hostname -i`

默认端口rpc_port是9160,9042是native_transport_port。

【讨论】:

  • 查看[idf@node1 conf]$ sudo netstat -tulpn |的输出grep -i 听 |上面的grep 22955。它告诉我们它正在监听 9160。我尝试了您的建议:同样的错误
  • [idf@node1 ~]$ cqlsh hostname -i 用法:cqlsh [options] [host [port]] cqlsh: error: 'fe80::225:90ff:fe1c:1c47%enp1s0f1' is不是有效的端口号。
  • 没有命令询问 cassandra 它正在侦听哪些端口以及用于什么目的,这很荒谬。
猜你喜欢
  • 2013-04-26
  • 2018-03-05
  • 2022-01-24
  • 1970-01-01
  • 1970-01-01
  • 2017-05-06
  • 1970-01-01
  • 2018-07-06
  • 1970-01-01
相关资源
最近更新 更多