lightdb_service.py

lightdb_service.py — 启动/停止/重启LightDB服务

Synopsis

lightdb_service.py --command | -c start,stop,restart,status [ --filename | -F install_info ] [ --cn_only | -C ] [ --dn_only | -D ] [ --primary_only | -P ] [ --standby_only | -S ] [ --node | -n node_info ] --dry-run [ --force | -f ] [ --verbose | -v ] [ --quiet | -q ] [ --parallel | -B parallel_processes ] [ --log_dir | -l directory ] [ --ignore-keepalived | -i ] [ --help | -h ]

描述

lightdb_service.py是一个实用程序,用于启动/停止LightDB服务。 它可以完全启动或停止安装程序安装的LightDB服务中的所有组件。 它还具有简单的状态检测功能,并且可以使用一些特殊模式来启动或停止服务。

必须通过安装程序安装LightDB服务才能使用LightDB服务。

lightdb_service.py必须在python3下执行。

选项

lightdb_service.py 接受以下命令行参数:

-h
--help

显示帮助信息并退出。

[-c] start,stop,restart,status
[--command ]start,stop,restart,status

启动/停止/重启/检查LightDB服务。

[-F] install_info
[--filename ]install_info

指定包含安装信息的json文件的路径(默认使用uninstall/uninstallFile.json)。

-C
--cn_only

仅启动/停止/重启协调节点。

-D
--dn_only

仅启动/停止/重启数据节点。

-P
--primary_only

仅为主要重启启动/停止/重启主节点。

-S
--standby_only

仅为备份重启启动/停止/重启备份节点。

-D
--quiet

不显示进度消息。

-n node_info
--node node_info

仅启动/停止/重启指定的节点,节点信息的格式为ip:port。

--dry-run

显示将执行的操作,但不执行它。

-f
--force

强制停止,即使有一些节点处于错误状态,也跳过不正确的节点。

-B parallel_processes
--parallel parallel_processes

并行运行的段主机数。默认为1。

-v
--verbose

调试打印。

-q
--quiet

抑制标准输出日志的状态消息。

-l directory
--log_dir directory

日志文件目录,默认为/tmp/ltAdminLogs。

--ignore-keepalived

忽略keepalived,通常用于没有keepalived的LightDB服务。

诊断

如果出现问题,请查看日志文件获取详细错误信息。

以下是错误代码和正常原因:

Table 310. 错误代码表

错误代码

原因

100

启动 LightDB 失败(请参考 LightDB 日志获取详细信息),不是主节点

101

停止 LightDB 失败(请参考 LightDB 日志获取详细信息),不是主节点

102

启动主 LightDB 失败(请参考 LightDB 日志获取详细信息)

103

停止主 LightDB 失败(请参考 LightDB 日志获取详细信息)

104

要操作的节点不在当前 LightDB 服务中。使用 '-n' 参数

105

获取 LightDB 角色失败。

106

无法获取 LightDB 进程状态,执行检查 LightDB 端口的命令失败。通常是 SSH 加密未配置。

107

LightDB 进程正在运行,但无法连接以执行 SQL。

108

LightDB 已停止,但应该正在运行。

109

LightDB 正在运行,但应该已停止。

110

无法获取 ltcluster 进程状态,因为执行获取命令失败。通常是 SSH 加密未配置或 LightDB 已停止。

111

ltclusterd 已停止,但应该正在运行。

112

ltclusterd 正在运行,但应该已停止。

113

集群中的所有 ltclusterd 均已暂停,但应该已暂停。

114

集群中的所有 ltclusterd 均已暂停,但应该已恢复。

115

集群中的所有 ltclusterd 暂停状态均未知。

116

集群中的 ltclusterd 暂停状态不一致。

117

ltclusterd 的配置文件未找到。

118

ltclusterd 的配置文件错误。

119

ltclusterd 没有配置文件。

120

ltclusterd 启动失败。

121

ltclusterd 停止失败。

122

ltclusterd 重启失败。

123

keepalived 正在运行,但应该已停止。

124

keepalived 启动失败。

125

keepalived 停止失败。

126

通用场景下执行命令失败,现在仅用于获取 standby.signal 文件数量错误。

127

判断 LightDB 角色时 standby.signal 文件的数量不正确。

128

无法获取高可用状态,因为执行命令失败。

129

高可用状态不正确(正确意味着所有服务都在正确运行)。

130

LightDB 服务的安装文件格式有误。

131

LightDB 服务的安装文件内容有误。


示例

启动所有测试:

        $ lightdb_service.py -c start
      

停止所有服务:

        $ lightdb_service.py -c stop
      

重启所有服务:

        $ lightdb_service.py -c restart
      

检查状态:

        $ lightdb_service.py -c status
      

仅启动/停止/重启主节点(活动节点和备用节点状态不变):

        $ lightdb_service.py -c start/stop/restart --primary_only
      

仅启动/停止/重启备用节点(活动节点和备用节点状态不变):

        $ lightdb_service.py -c start/stop/restart --standby_only
      

仅启动/停止/重启计算节点:

        $ lightdb_service.py -c start/stop/restart --cn_only
      

仅启动/停止/重启数据节点:

        $ lightdb_service.py -c start/stop/restart --dn_only
      

仅启动/停止/重启数据节点主节点:

        $ lightdb_service.py -c start/stop/restart --dn_only --primary_only
      

仅启动/停止/重启指定节点(活动节点和备用节点状态不变):

        $ lightdb_service.py -c start/stop/restart -n 10.20.148.122:54333
      

强制停止:

        $ lightdb_service.py -c stop -f
      

模拟运行启动命令:

        $ lightdb_service.py -c start --dry-run