EC2实例上Cassandra服务未运行 相关操作命令执行失效
Cassandra 服务启动异常排查方案
1 优先查看系统日志定位根因
Cassandra默认日志存储路径为/var/log/cassandra/system.log,执行以下命令输出最近50条错误记录,直接定位启动失败原因:
tail -n 50 /var/log/cassandra/system.log
常见启动失败问题及修复方案:
- 配置文件
cassandra.yaml语法错误:重点检查seeds、rpc_address、listen_address配置是否适配EC2实例的公网/私网IP规则,不要直接绑定0.0.0.0 - 数据/日志目录权限不足:执行以下命令修复权限归属
sudo chown -R cassandra:cassandra /var/lib/cassandra /var/log/cassandra - 端口被占用:Cassandra默认占用7000、9042、9160端口,执行
ss -tulnp | grep -E '(7000|9042|9160)'检查端口占用,如有冲突修改cassandra.yaml对应端口配置即可。
2 验证版本兼容性
你当前使用的Java 8、Python 2.7版本仅适配Cassandra 3.11.x及更早版本,若你安装的是Cassandra 4.0+版本,需要将Java版本升级到Java 11。执行以下命令查看当前Cassandra版本:
# Debian/Ubuntu系EC2实例执行 dpkg -l | grep cassandra # RHEL/CentOS系EC2实例执行 rpm -qa | grep cassandra
如果确认是版本不匹配问题,卸载当前Cassandra版本,安装和环境适配的版本即可。
3 修复后验证功能
完成排查修复后重启服务等待30秒再验证状态:
sudo service cassandra restart sudo service cassandra status
服务显示active (running)后再执行nodetool status和cqlsh命令验证功能正常性。
内容的提问来源于stack exchange,提问作者lingaraja
相关产品推荐
相关产品推荐

