You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行systemctl start dse超时但服务正常运行的问题求助

DSE服务systemctl启动超时但实际正常运行的问题

问题现象

执行systemctl start dse命令时,systemctl返回超时失败提示,但DSE服务实际已正常启动并加入集群,相关systemd日志如下:

Jan 13 16:39:52 dse1 systemd[1]: Starting LSB: DataStax Enterprise...
Jan 13 16:39:52 dse1 dse[23839]: Starting DSE daemon : dse
Jan 13 16:39:52 dse1 dse[23839]: DSE daemon starting with only Cassandra enabled (edit /etc/default/dse to enable other features)
Jan 13 16:39:52 dse1 su[24145]: (to cassandra) root on none
Jan 13 16:39:52 dse1 su[24145]: pam_unix(su:session): session opened for user cassandra(uid=978) by (uid=0)
Jan 13 16:39:53 dse1 su[24145]: pam_unix(su:session): session closed for user cassandra
Jan 13 16:40:08 dse1 dse[23839]: WARNING: Timed out while waiting for DSE to start. The service may have started though. Please check your logs.
Jan 13 16:40:08 dse1 systemd[1]: dse.service: Control process exited, code=exited, status=1/FAILURE
Jan 13 16:40:08 dse1 systemd[1]: dse.service: Failed with result 'exit-code'.
Jan 13 16:40:08 dse1 systemd[1]: Failed to start LSB: DataStax Enterprise.

直接执行dse start-node可正常启动节点,返回信息如下:

dse start-node
Default DSE node: Starting with only Cassandra enabled (edit /etc/default/dse to enable other features)
Default DSE node: Starting with PID file /var/run/dse/dse.pid
Default DSE node: Starting with heap dump file /var/lib/cassandra/java_1736787699.hprof
Default DSE node: Starting with HotSpot error log file /var/lib/cassandra/hs_err_1736787699.log
Default DSE node: Starting with STDOUT/ERR file /var/log/cassandra/output.log
Default DSE node: Main process PID: 66706
Default DSE node: Received ready signal.

output.log中仅存在无关日志错误:

ERROR in ch.qos.logback.core.joran.action.AppenderRefAction - Could not find an appender named [SparkMasterFileAppender].
ERROR in ch.qos.logback.core.joran.action.AppenderRefAction - Could not find an appender named [SparkWorkerFileAppender].

环境信息

  • Oracle Linux 9
  • Java版本:11.0.24 2024-07-16 LTS
  • DSE仅启用事务模式
  • 测试过多个DSE 6.9.X版本

已尝试方案

  • yum干净安装
  • OpsCenter干净安装
  • 更换不同DSE 6.9.X版本

解决方法

1. 调整DSE启动脚本超时时间

DSE的LSB启动脚本默认超时阈值较短,导致systemd误判启动失败。修改/etc/init.d/dse脚本中的超时配置:
找到代码中的TIMEOUT=15行,将数值调整为更长的时间(比如TIMEOUT=60),保存后重新执行systemctl start dse测试。

2. 替换为systemd原生服务配置

LSB脚本在systemd环境下兼容性有限,建议替换为原生systemd服务文件:

  1. 创建/etc/systemd/system/dse.service文件,写入以下内容:
[Unit]
Description=DataStax Enterprise
After=network.target

[Service]
User=cassandra
Group=cassandra
ExecStart=/usr/bin/dse start-node
ExecStop=/usr/bin/dse stop-node
Restart=on-failure
RestartSec=5
TimeoutStartSec=120

[Install]
WantedBy=multi-user.target
  1. 重新加载systemd配置:
systemctl daemon-reload
  1. 启用并启动服务:
systemctl enable dse
systemctl start dse

3. 消除日志配置错误(可选)

日志中的Appender错误不影响服务运行,但可通过修改/etc/dse/logback.xml消除:找到引用SparkMasterFileAppender和SparkWorkerFileAppender的<appender-ref>节点,将其注释或删除(当前未启用Spark组件)。

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 23:31:04