You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Cassandra及DSE启动失败:UnknownHostException错误排查求助

解决Cassandra/DSE启动时的UnknownHostException问题

先看你给出的错误日志:

ERROR [main] 2018-04-23 15:36:39,630 CassandraDaemon.java:723 - Local host name unknown: java.net.UnknownHostException: jarvis: jarvis: Temporary failure in name resolution

这个报错的核心是系统无法将主机名jarvis解析为对应的IP地址,咱们可以用这几个方法快速修复:

方法1:修改/etc/hosts文件(最常用)

手动绑定主机名和IP是最直接的解决方式:

  • 打开终端编辑hosts文件:
    sudo nano /etc/hosts
  • 在文件末尾添加一行,把你的主机名(这里是jarvis)和本地IP对应起来,比如:
    127.0.0.1 jarvis
    如果你有固定内网IP,也可以写实际的内网IP,比如192.168.1.100 jarvis
  • 保存退出后,测试解析是否正常:ping jarvis,能ping通的话再重启Cassandra/DSE就没问题了。

方法2:直接指定Cassandra绑定的IP

不想修改hosts文件的话,可以在配置里直接指定IP:

  • 找到DSE环境下的Cassandra配置文件,通常在/etc/dse/cassandra/cassandra.yaml
  • 找到listen_addressrpc_address这两个配置项,把它们改成机器的实际IP,或者直接设为localhost
  • 保存配置后,重新执行./dse cassandra启动服务。

方法3:检查系统主机名配置

有时候是主机名本身的配置出了问题:

  • 先查看当前主机名:hostname
  • 如果主机名不对,修改它:sudo hostnamectl set-hostname jarvis(这里的jarvis是你需要的主机名)
  • 再确认/etc/hostname文件里的内容和新主机名一致,不一致的话同步修改即可。

优先试试方法1,大部分情况下修改hosts文件就能快速解决这个问题,要是还有问题再尝试其他方法。

内容的提问来源于stack exchange,提问作者Aravinth

火山引擎 最新活动