一、概述
1、背景信息
gs_check改进增强,统一化当前系统中存在的各种检查工具,例如gs_check、gs_checkos等,帮助用户在openGauss运行过程中,全量的检查openGauss运行环境、操作系统环境、网络环境及数据库执行环境,也有助于在openGauss重大操作之前对各类环境进行全面检查,有效保证操作执行成功。
2、注意事项
- 必须指定-i或-e参数,-i会检查指定的单项,-e会检查对应场景配置中的多项。
- 如果-i参数中不包含root类检查项或-e场景配置列表中没有root类检查项,则不需要交互输入root权限的用户及其密码。
- 可使用--skip-root-items跳过检查项中包含的root类检查,以免需要输入root权限用户及密码。
- MTU值不一致时可能导致检查缓慢或进程停止响应,当巡检工具出现提示时请修改各节点MTU值一致后再进行巡检。
- 交换机不支持当前设置的MTU值时,即使MTU值一致也会出现通信问题引起进程停止响应,需要根据交换机调整MTU大小。
3、语法
• 单项检查:
gs_check -i ITEM [...] [-U USER] [-L] [-l LOGFILE] [-o OUTPUTDIR] [--skip-root-items][--set][--routing]
• 场景检查:
gs_check -e SCENE_NAME [-U USER] [-L] [-l LOGFILE] [-o OUTPUTDIR] [--skip-root-items] [--time-out=SECS][--set][--routing][--skip-items]
• 显示帮助信息:
gs_check -? | --help
• 显示版本号信息:
gs_check -V | --version
4、参数说明
-U
运行openGauss的用户名称。取值范围:运行openGauss的用户名称。
-L
本地执行。
如果不加-L,他即使检查本机信息也会优先使用SSH连接本机,如果没做免密互连,就会报错报错
"[GAUSS-53042]: ERROR: Execute SSH command on host 192.168.10.131 faild. The exception is:"
-i
指定检查项。格式-i CheckXX详细的检查项请参见表1 openGauss状态检查表。
-e
场景检查项。默认的场景有inspect(例行巡检)、upgrade(升级前巡检)、binary_upgrade(就地升级前巡检)、health(健康检查巡检)、
install(安装)等,用户可以根据需求自己编写场景。
-l
指定日志文件路径,指定路径时需添加.log后缀。
-o
指定检查结果输出文件夹路径。
--skip-root-items
跳过需要root权限执行的检查项。
--skip-items
跳过指定的检查项。
--format
设置结果报告的格式。
--set
修复支持设置的Abnormal项。
--cid
检查ID,仅被内部check进程使用。
--time-out
设置超时时间。单位为秒,默认为1500s,若用户自定义超时时间不得少于1500s。
--routing
指定业务IP的网段,格式为IP地址:子网掩码。
--disk-threshold="PERCENT"
检查磁盘占用时可选指定告警阈值,可指定1-99之间的整数,不输入则默认为90。检查其他项时不需要该参数。
-?, --help
显示帮助信息。
-V, --version
显示版本号信息。
二、示例
1、这个命令可以切换到omm用户直接使用
2、检查openGauss实例连接
[omm@gsdb01 ~]$ gs_check -i CheckDBConnection
Parsing the check items config file successfully
[GAUSS-53042]: ERROR: Execute SSH command on host 192.168.10.131 faild. The exception is:
#没做本机免密,且没有加—L参数,导致报错
[omm@gsdb01 ~]$ gs_check -i CheckDBConnection -L
2023-03-10 16:45:42 [NAM] CheckDBConnection
2023-03-10 16:45:42 [STD] 检查能否连接数据库,如果连接成功则检查项通过,否则检查项不通过
2023-03-10 16:45:42 [RST] OK
The database connection is normal.
2023-03-10 16:45:42 [RAW]
source '/home/omm/.bashrc' && gsql -m -d postgres -p 26000 -c 'select pg_sleep(1);'
3、检查cpu使用情况
[omm@gsdb01 ~]$ gs_check -i CheckCPU -L
2023-03-10 16:46:35 [NAM] CheckCPU
2023-03-10 16:46:35 [STD] 检查主机CPU占用率,如果idle 大于30%,或者 iowait 小于 30%.则检查项通过,否则检查项不通过
2023-03-10 16:46:35 [RST] OK
2023-03-10 16:46:35 [RAW]
Linux 4.19.90-2107.6.0.0100.oe1.bclinux.x86_64 (gsdb01) 03/10/23 _x86_64_ (8 CPU)
16:46:30 CPU %user %nice %system %iowait %steal %idle
16:46:31 all 0.38 0.00 0.00 0.00 0.00 99.62
16:46:32 all 0.37 0.00 0.12 0.00 0.00 99.50
16:46:33 all 0.25 0.00 0.00 0.00 0.00 99.75
16:46:34 all 0.50 0.00 0.50 0.00 0.00 99.00
16:46:35 all 0.13 0.00 0.00 0.00 0.00 99.87
Average: all 0.32 0.00 0.12 0.00 0.00 99.55
4、执行场景检查结果:
gs_check -e inspect #inspect(例行巡检)
Parsing the check items config file successfully
The below items require root privileges to execute:[CheckBlockdev CheckIOConfigure CheckMTU CheckRXTX CheckMultiQueue CheckFirewall CheckSshdService CheckSshdConfig CheckCrondService CheckMaxProcMemory CheckBootItems CheckFilehandle CheckNICModel CheckDropCache]
Please enter root privileges user[root]: #默认账号是root,直接回车就行
Please enter password for user[root]: #root的密码
Check root password connection successfully
Distribute the context file to remote hosts successfully
Start to health check for the cluster. Total Items:57 Nodes:3
Checking... [=========================] 57/57
Start to analysis the check result
CheckClusterState...........................OK
The item run on 3 nodes. success: 3
CheckDBParams...............................OK
.........................................................................
CheckMpprcFile..............................OK
The item run on 3 nodes. success: 3
Analysis the check result successfully
Failed. All check items run completed. Total:57 Success:49 Warning:5 NG:3 Error:0
For more information please refer to /opt/huawei/wisequery/script/gspylib/inspection/output/CheckReport_inspect_201902207129254785.tar.gz