首页 > 数据库 > > 数据库管理工具-gs_om
GaussDB 100提供了gs_om工具帮助对集群的运行状态进行监控,包括启动集群、停止集群、启动节点、停止节点、启动单az、查询集群状态、启动etcd、停止etcd、切换主备实例、修改IP、显示帮助信息和显示版本号信息等功能。
gs_om -t start [ -h HOSTNAME ] [-I INSTANCENAME ] [-g GROUPNAME] [--az=AZNAME] [-l LOGFILE]停止集群
gs_om -t stop [ -h HOSTNAME ] [-I INSTANCENAME ] [-g GROUPNAME] [-l LOGFILE]查询集群状态
gs_om -t status [-h HOSTNAME | --az=AZNAME] [-o OUTPUT] [-l LOGFILE]切换主备实例
gs_om -t switch -h HOSTNAME -I DBNAME [-l LOGFILE]手动拉起ETCD
gs_om -t startetcd [-l LOGFILE]手动停止ETCD
gs_om -t stopetcd [-l LOGFILE]修改IP
gs_om -t changeip -X XMLFILE [--rollback] [-l LOGFILE]查询集群esn编号
gs_om -t esn变更备DN角色
gs_om -t update -I INSTANCENAME [--role=standby|passive] [-l LOGFILE]修改ETCD用户的密码
gs_om -t change_passwd -U USER [-l LOGFILE]CN隔离恢复
gs_om -t recoverycn [--backup-dir=BACKUPDIR] [--reserved-conf] [-l LOGFILE]只能恢复状态显示为DELETED的CN。
gs_om { -? | --help }显示版本号信息
gs_om { -V | --version }参数说明
gs_om命令的类型。
取值范围:start、stop、status、switch、startetcd、stopetcd、changeip、esn、change_passwd、recoverycn。

指定日志文件及存放路径。
默认值:$GAUSSLOG/om/gs_om.log
显示帮助信息。
显示版本号信息。
指定需要启动的服务器名称。一次只能启动一个服务器。
取值范围:服务器名称。
不指定服务器名称时,表示启动整个集群。
指定要启动的实例名称。可启动的实例类型有CM、CN、DN、GTS,不支持启动ETCD。
指定需要启动的group名称。
指定需要启动的az。暂不支持启动安装有GTS集群的az。注:一个az中可能部署有多个节点。
指定需要停止实例所在的服务器名称。一次只能停止一个服务器。
取值范围:实例所在的服务器名称。
不指定服务器名称时,表示停止整个集群。
指定要停止的实例名称。可停止的实例类型有CM、CN、DN、GTS,不支持停止ETCD。
指定需要停止的group名称。
指定需要待查询的服务器名称。
取值范围:服务器名称。
不指定服务器时,表示查询整个集群。
--az
指定需要待查询的AZ名称。
取值范围:AZ1,AZ2,AZ3。
不指定AZ时,表示查询整个集群。
输出到指定的output文件中。
如果不指定,直接显示在屏幕上。
指定需要切换实例的服务器名称。
取值范围:实例所在服务器名称。
指定的实例名称。
新的集群配置文件路径。
取值范围:clusterconfigchangeip.xml的路径。
当自动回滚失败时,用户排除错误后,输入该参数执行手动回滚操作。
ETCD鉴权用户。
取值范围: root、jdbc_shard。

恢复故障CN时,故障CN数据的备份路径。
是否使用DELETED CN的原配置文件(zengine.ini)重装实例。
集群状态如表1所示。
字段 | 字段含义 | 字段值 |
|---|---|---|
az_state | az状态 |
|
cluster_state | 集群状态 |
|
balanced | 显示是否有集群实例发生过主备切换。 |
|
每一行表示一个AZ状态,每个AZ状态包含3个字段:AZ,ROLE,STATUS
字段 | 字段含义 | 字段值 |
|---|---|---|
AZ | 站点名称 | 配置文件中的命名。 |
ROLE | 站点角色 | 分为3种角色:主、备、仲裁,对应primary,standby,quorum。 |
STATUS | 站点状态 |
|
每一行表示一个Host状态,每个Host包含HOST、AZ、STATUS、IP信息。
字段 | 字段含义 | 字段值 |
|---|---|---|
HOST | 主机名称 | 配置文件中的命名,一般是主机名。 |
AZ | 站点名称 | 配置文件中的命名,主机所在的站点名。 |
STATUS | 主机状态 |
|
IP | 主机IP | 主机的IP。 |
实例包含CM/ETCD/CN/DN/GTS。
其中静态信息:INSTANCE,ID,HOST,PORT,DataDir,字段值含义针对不同实例基本相同。
动态信息:STATUS,ROLE,字段值含义针对不同实例有所区别。

当配置文件不配置GTS实例时,可以正常安装集群,只是集群状态中不会显示GTS的实例信息。
字段 | 字段含义 | 字段值 |
|---|---|---|
INSTANCE | 实例名称 | 配置文件中的实例命令。 |
ID | 实例ID | 实例ID。 |
HOST | 主机名称 | 实例所在的主机名。 |
PORT | 端口 | CM不涉及端口,所以不显示; ETCD显示的是Client Port; CN、DB Group显示提供服务的端口。 |
DataDir | 各实例存储数据的目录 | CM不存储本地信息,不涉及,所以不显示。 |
字段 | 字段含义 | 字段值 |
|---|---|---|
STATUS | 实例状态 |
|
ROLE | 实例角色 |
|
字段 | 字段含义 | 字段值 |
|---|---|---|
STATUS | 实例状态 |
|
ROLE | 实例角色 |
|
字段 | 字段含义 | 字段值 |
|---|---|---|
STATUS | 实例状态 |
|
ROLE | 实例角色 | no role:CN不分主备,所以没有角色。 |
字段 | 字段含义 | 字段值 |
|---|---|---|
STATUS | 实例状态 |
|
ROLE | 实例角色 |
|
字段 | 字段含义 | 字段值 |
|---|---|---|
STATUS | 实例状态 |
|
ROLE | 实例角色 |
|
每一行表示一个主机上配置的管理IP,管理平面通过管理IP登录主机。
字段 | 字段含义 | 字段值 |
|---|---|---|
HOST | 主机名称 | 配置文件中的命名,一般是主机名。 |
IP | 管理平面登录主机所使用的IP | 配置文件中innerManageIp1的参数值。如果未配置该参数,则使用backIP。一个主机上可配置多个管理IP。 |
记录了用户在执行查询集群状态命令时的执行主机和查询时间。
字段 | 字段含义 | 字段值 |
|---|---|---|
HOSTNAME | 主机名称 | 执行查询命令的主机名。 |
TIME | 当前时间 | 执行查询命令的当前时间。 |
每一行表示一个主DN上配置的浮动IP。
字段 | 字段含义 | 字段值 |
|---|---|---|
HOST | 主机名称 | 配置文件中已配置浮动IP的主DN所在主机的名称。 |
主DN名称:主DN所在主机IP | 主DN名称:主DN所在主机IP,例如,DB1_1:10.10.0.11。 | 配置文件中已配置浮动IP的主DN的名称:主DN所在主机IP。 |
IP | 主DN的浮动IP值 | 配置文件中主DN的floatIp值。 |
omm@plat1:~> gs_om -t start
Starting cluster
=========================================
cluster_state : Normal
Successfully started cluster.
=========================================
End started cluster.
omm@plat1:~> gs_om -t start -h plat1
Starting node.
=========================================
Successfully started node.
=========================================
End started node.
omm@plat1:~> gs_om -t start -h plat1 -I DB1_1
Starting instance
=========================================
Successfully started instance.
=========================================
End started instance.
omm@plat1:~> gs_om -t start -g group_1
Starting group
=========================================
Successfully started group.
=========================================
End started group.omm@plat1:~> gs_om -t start --az=AZ3
Starting az
=========================================
Starting specified az in the cluster.
Clean old cm and etcd for specified AZ.
Successfully clean old cm and etcd for specified AZ.
Restarting etcd for specified AZ.
Successfully restarted etcd for specified AZ.
Checking the etcd status.
Successfully checked the etcd status.
Restarting cm agent for specified AZ.
Successfully restarted cm agent for specified AZ.
start the specified az in the cluster.
....................80s
======================================================================
Finish to start the specified az in the cluster.
omm@plat1:~> gs_om -t stop
Stopping cluster.
=========================================
Successfully stopped cluster.
=========================================
End stop cluster.
omm@plat1:~> gs_om -t stop -h plat1
Stopping node.
=========================================
Successfully stopped node.
=========================================
End stop node.
omm@plat1:~> gs_om -t stop -h plat1 -I DB1_1
Stopping instance.
=========================================
Successfully stopped instance.
=========================================
End stop instance.
omm@plat1:~> gs_om -t stop -g group_1
Stopping group
=========================================
Successfully stopped group.
=========================================
End stop group.
omm@plat1:~> gs_om -t startetcd
Restarting etcd in the cluster.
Clean old cm and etcd for cluster.
Successfully clean old cm and etcd for cluster.
Restart etcd for cluster.
Restart cmAgent for cluster.
Successfully restarting etcds in the cluster.

使用“gs_om -t startetcd”命令拉起ETCD后,集群中的CM server仍处于STOPPED状态,此时需要使用“gs_om -t start”命令手动重启集群才可恢复CM server到正常状态。
omm@plat1:~> gs_om -t stopetcd
Stop etcd is a high-risk operation. Are you sure you want to continue (yes/no)?yes
Checking the cluster condition for stopping etcd.
Checking the inst process on every node for stoppig etcd.
Successfully checked the inst process on every node for stopping etcd.
Successfully checked the cluster condition for stopping etcd.
Stopping etcd in the cluster.
Clean old cm and etcd for cluster.
Successfully clean old cm and etcd for cluster.
Successfully stopped etcd in the cluster.
omm@plat1:~> gs_om -t status
Set output to terminal.
--------------------------------------------------------------------Cluster Status--------------------------------------------------------------------
az_state : fine
cluster_state : Normal
balanced : true
----------------------------------------------------------------------AZ Status-----------------------------------------------------------------------
AZ:AZ1 ROLE:primary STATUS:ONLINE
AZ:AZ2 ROLE:standby STATUS:ONLINE
AZ:AZ3 ROLE:quorum STATUS:ONLINE
---------------------------------------------------------------------Host Status----------------------------------------------------------------------
HOST:plat1 AZ:AZ1 STATUS:ONLINE IP:10.10.0.11
HOST:plat2 AZ:AZ2 STATUS:ONLINE IP:10.10.0.12
HOST:plat3 AZ:AZ3 STATUS:ONLINE IP:10.10.0.13
----------------------------------------------------------------Cluster Manager Status----------------------------------------------------------------
INSTANCE:CM1 ROLE:primary STATUS:ONLINE HOST:plat1 ID:1
INSTANCE:CM2 ROLE:slave STATUS:ONLINE HOST:plat2 ID:2
INSTANCE:CM3 ROLE:slave STATUS:ONLINE HOST:plat3 ID:3
---------------------------------------------------------------------ETCD Status----------------------------------------------------------------------
INSTANCE:ETCD1 ROLE:follower STATUS:ONLINE HOST:plat1 ID:7001 PORT:22231 DataDir:/guassdb/data/data_etcd
INSTANCE:ETCD2 ROLE:follower STATUS:ONLINE HOST:plat2 ID:7002 PORT:22231 DataDir:/guassdb/data/data_etcd
INSTANCE:ETCD3 ROLE:leader STATUS:ONLINE HOST:plat3 ID:7003 PORT:22231 DataDir:/guassdb/data/data_etcd
----------------------------------------------------------------------CN Status-----------------------------------------------------------------------
INSTANCE:cn_5001 ROLE:no role STATUS:ONLINE HOST:plat1 ID:5001 PORT:9079 DataDir:/gaussdb/data/data_cn1
----------------------------------------------------------Instances Status in Group (group1)----------------------------------------------------------
INSTANCE:DB1_1 ROLE:primary STATUS:ONLINE HOST:plat1 ID:6001 PORT:15431 DataDir:/gaussdb/data/data_dn
INSTANCE:DB2_1 ROLE:standby STATUS:ONLINE HOST:plat2 ID:6002 PORT:15431 DataDir:/gaussdb/data/data_dn
---------------------------------------------------------------------Manage IP------------------------------------------------------------------------
HOST:plat3 IP:10.10.0.19
HOST:plat2 IP:10.10.0.22
HOST:plat1 IP:10.10.0.24
-------------------------------------------------------------------Query Action Info------------------------------------------------------------------
HOSTNAME: plat1 TIME: 2019-09-11 14:16:09.804124
------------------------------------------------------------------------Float Ip------------------------------------------------------------------
HOST:plat1 DB1_1:10.10.0.11 IP:10.10.0.25
omm@plat1:~>gs_om -t switch -h plat2 -I DB2_1
Switching instances.
Successfully switched cluster.
omm@plat1:~> gs_om -t status
Set output to terminal.
--------------------------------------------------------------------Cluster Status--------------------------------------------------------------------
az_state : fine
cluster_state : Normal
balanced : false
----------------------------------------------------------------------AZ Status-----------------------------------------------------------------------
AZ:AZ1 ROLE:primary STATUS:ONLINE
AZ:AZ2 ROLE:standby STATUS:ONLINE
AZ:AZ3 ROLE:quorum STATUS:ONLINE
---------------------------------------------------------------------Host Status----------------------------------------------------------------------
HOST:plat1 AZ:AZ1 STATUS:ONLINE IP:10.10.0.11
HOST:plat2 AZ:AZ2 STATUS:ONLINE IP:10.10.0.12
HOST:plat3 AZ:AZ3 STATUS:ONLINE IP:10.10.0.13
----------------------------------------------------------------Cluster Manager Status----------------------------------------------------------------
INSTANCE:CM1 ROLE:primary STATUS:ONLINE HOST:plat1 ID:1
INSTANCE:CM2 ROLE:slave STATUS:ONLINE HOST:plat2 ID:2
INSTANCE:CM3 ROLE:slave STATUS:ONLINE HOST:plat3 ID:3
---------------------------------------------------------------------ETCD Status----------------------------------------------------------------------
INSTANCE:ETCD1 ROLE:follower STATUS:ONLINE HOST:plat1 ID:7001 PORT:22231 DataDir:/guassdb/data/data_etcd
INSTANCE:ETCD2 ROLE:follower STATUS:ONLINE HOST:plat2 ID:7002 PORT:22231 DataDir:/guassdb/data/data_etcd
INSTANCE:ETCD3 ROLE:leader STATUS:ONLINE HOST:plat3 ID:7003 PORT:22231 DataDir:/guassdb/data/data_etcd
----------------------------------------------------------------------CN Status-----------------------------------------------------------------------
INSTANCE:cn_5001 ROLE:no role STATUS:ONLINE HOST:plat1 ID:5001 PORT:9079 DataDir:/gaussdb/data/data_cn1
----------------------------------------------------------Instances Status in Group (group1)----------------------------------------------------------
INSTANCE:DB1_1 ROLE:standby STATUS:ONLINE HOST:plat1 ID:6001 PORT:15431 DataDir:/gaussdb/data/data_dn
INSTANCE:DB2_1 ROLE:primary STATUS:ONLINE HOST:plat2 ID:6002 PORT:15431 DataDir:/gaussdb/data/data_dn
---------------------------------------------------------------------Manage IP------------------------------------------------------------------------
HOST:plat3 IP:10.10.0.19
HOST:plat2 IP:10.10.0.22
HOST:plat1 IP:10.10.0.24
-------------------------------------------------------------------Query Action Info------------------------------------------------------------------
HOSTNAME: plat1 TIME: 2019-09-11 14:16:09.804124
------------------------------------------------------------------------Float Ip------------------------------------------------------------------
HOST:plat1 DB1_1:10.10.0.11 IP:10.10.0.25
omm@plat1:~> gs_om -t changeip -X /opt/software/gaussdb/clusterconfigchangeip.xml
Distributing files to all nodes.
Successfully distributed files.
Checking the cluster configuration differences.
Creating the backup directory.
Successfully created backup directory.
Backup cluster configuration.
Successfully backup cluster configuration.
Modifying instance configuration files.
Successfully modified instance configuration files.
Restart Etcd cluster for changing Ip.
Clean old cm and etcd for cluster.
Successfully clean old cm and etcd for cluster.
Restart etcd for cluster.
Successfully restart Etcd cluster for changing Ip.
Starting the cluster.
Successfully started the cluster.
Updating cluster node info.
Successfully updated cluster node info.
Checking the cluster status.
Successfully checked the cluster status.
Successfully changed cluster's IP addresses.
omm@plat1:~> gs_om -t change_passwd -U jsbc_shard
Start change jdbc_shard password.
Get new password.
Please enter password:
Change password in etcd.
Change authentication key file.
Restart cm agent.
Restart cm agent for cluster.
Successfully change jdbc_shard password.
omm@plat1:~> gs_om -t recoverycn
Start to recovery cn.
Get deleted cn.
Check deleted cn datadir and backup dir.
Successfully check deleted cn datadir and backup dir.
Close cm update node route.
Close the CM heartbeat about CN.
Add node info of deleted CNs on other instances.
Successfully add node info of deleted CNs on other instances.
Restore deleted CNs.
Successfully restore deleted CNs.
Handle the pending dist trans of deleted CNs.
............................28s
Completed to handle the pending dist trans of deleted CNs.
Backup the deleted CNs.
...........................27s
Successfully backup the deleted CNs.
Export metadata from original instance.
Export metadata from original instance DB1_1.
Successfully export metadata from original instance.
Reconstruct deleted CNs.
60s
Successfully reconstruct deleted CNs.
Start deleted CNs.
Successfully start deleted CNs.
Open the CM heartbeat about CN.
Close cm update node route.
Successfully recovery cn.
omm@plat1:~> gs_om -t esn
GS1FFFFFCFFA163E5DCE185D3E6851
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3156046/ ,如需转载,请注明出处,否则将追究法律责任。