当前位置: 首页 > article >正文

【openGauss】检查工具gs_check,gs_checkperf的应用

1. gs_check

(1)检查指定项(以CheckCPU为例)

在执行gs_check -i CheckCPU时如果出现如下报错是因为没有为集群配置过免密,即使当前环境为单机也要求要配置ssh互信,有两种解决办法

image.png

办法一:配置ssh互信,第一步执行ssh-keygen生成密钥(默认加密算法为rsa,如果不更换算法可以不指定),第二步执行ssh-copy-id 报错的host,将密钥发送到对应的主机

image.png

办法二:使用gs_sshexkey工具配置互信,使用一个文件记录需要配置互信主机的ip,一个ip占一行

image.png
image.png

办法三:在命令的最后添加-L指定为本地执行(但是只能获取当前节点的性能

image.png

如果出现如下图报错是因为当前系统没有sar命令,手动安装就可以解决这个问题,并不是所有检查项都需要sar,比如图中gs_check -i CheckClusterState检查集群状态时是可以正常执行的

image.png

使用yum安装缺少的sar,如果出现如下图所示异常,或是异常信息与下图相似都是ImportError … not found,特别是在安装openGauss前yum可用,但是安装openGauss后出现异常,出现故障的原因可能是因为安装openGauss时自动配置的环境变量将lib路径指定到了openGauss的lib,与yum实际所需的版本不符(与linux自带lib冲突)

image.png

解决办法是找到环境变量文件(/etc/profile),将LD_LIBRARY_PATH变量注释,source环境变量(source /etc/profile)后会依旧无法使用,这个更改需要重启操作系统,然后yum就可以用了

image.png

重新安装sysstat(sar)

image.png

重新执行gs_check -i CheckCPU

image.png

在不指定-L的情况下默认获取整个集群的所有节点的性能,所以得到的查询结果可能存在多个,所以检查结果会打包成压缩包

(2)检查指定场景(以例行巡检为例)

默认情况下,例行巡检会检查所有默认配置的选项,其中会包含有root权限才可以查询的检查项,所以在执行gs_check -i 后需要输入root用户密码,以授权检查对应检查项

image.png

可以通过设置一个参数跳过所有root权限的检查项不检查:–skip-root-items,可以从下图中看到执行命令后不需要输入root用户名及密码,并且总检查项从57减少到了42项

image.png

(3)自定义检查场景

在openGauss中支持用户自定义检查项与检查场景,自定义检查场景配置在xml文件中(文件名必须是scene_XXX.xml)
① 将场景要检查的检查项编写到xml文件中(此案例文件名为scene_checkTest.xml),格式如下:

<?xml version="1.0" encoding="utf-8" ?>  
<scene name="checkTest" desc="check cluster parameters before checkTest.">  
<configuration/>  
<allowitems>  
<!-- 检查CPU使用率 -->  
<item name="CheckCPU"/>  
<!-- 检查CPU核数 -->  
<item name="CheckCpuCount"/>  
<!-- 检查防火墙状态 -->  
<item name="CheckFirewall" />  
</allowitems>  
</scene> 

其中scene配置的是场景信息,name为场景名称,即检查时gs_check -e 后面指定的场景名称,desc为当前场景的描述信息;item配置实际要做的检查项。
① 配置好xml文件后,将文件复制到openGauss数据库工具目录中的script/gspylib/inspection/config/路径下,数据库工具目录在安装时的clusterconfig.xml文件中配置过(一般是/opt/install/om),当前案例完成目录是/opt/install/om/script/gspylib/inspection/config/
② 检查场景对应的xml文件都要求具有可执行权限,但是自定义的xml文件默认是不具有可执行权限的,使用chmod为xml文件添加执行权限
③ 以上操作全部执行完后就可以执行gs_check -e 场景名称,结果如下所示

image.png

(4)自定义检查项

通过Python编写如果获取自定义的检查的值及如何检查的过程,生成一个Python文件,默认存在的CheckCPU的Python文件内容如下:

image.png

此文件也需要具有可执行权限,将上一步编写的Python文件存放到/opt/install/om/script/gspylib/inspection/items目录下,在items目录下根据检查项类型进行了目录划分,比如CPU属于系统性能,对应的Python文件存放于items/os目录下

image.png

在config目录中有一个items.xml文件,里面记录的就是各种检查项,如果要自定义检查项,根据格式将检查项信息添加到xml文件中

image.png

一个checkitem就是一个检查项的配置信息,注意checkitem标签中的name属性要与Python文件名称相同

image.png

2.gs_checkperf

gs_checkperf使用-i指定检查项,有两种可选项PMK、SSD,默认是PMK,检查项包括如下内容

image.png

直接执行gs_checkperf(-i PMK可以省略不写)结果如下:

image.png

在检查PMK对应的检查项时指定–detail可以查看详细信息

image.png

当想要检查SSD性能时必须指定-i SSD,并且因为SSD只有root用户才可以查看,还需要通过-U指定数据库用户,检查SSD权限不允许指定–detail参数,具体如下图所示:

image.png

登录到root用户,执行gs_checkperf -U omm -i SSD命令,出现如图所示的报错是因为当前环境并未安装使用SSD,所以无法查询


http://www.kler.cn/a/305326.html

相关文章:

  • 腾讯云nginx SSL证书配置
  • Rust 建造者模式
  • GitLab 如何跨版本升级?
  • Docker入门系列——Docker-Compose
  • 洞察鸿蒙生态,把握开发新机遇
  • 论文阅读《机器人状态估计中的李群》
  • Redisson 异步释放锁
  • 什么是485无线通信
  • 磁盘写操作压力测试工具的设计与实现
  • ChatGLM3模型搭建教程
  • OpenCV结构分析与形状描述符(20)计算一个包围给定点集的最小外接圆函数minEnclosingCircle()的使用
  • 研1日记12
  • C++系列-函数对象/仿函数
  • [网络]TCP/IP协议 之 网络层IP协议(3)
  • 艾丽卡的区块链英语小课堂
  • 基于ssm+vue+uniapp的新生报到系统小程序
  • 第4步CentOS配置SSH服务用SSH终端XShell等连接方便文件上传或其它操作
  • 实战外网配置——光猫桥接+路由器PPPoE拨号+防火墙外网链路健康检查+外网流量负载均衡
  • kafka mirror maker之实现两个kafka集群之间的数据同步
  • HTML + CSS - 网页布局之一般布局浮动布局
  • JVM 体系与结构
  • Node.js 中间件与洋葱模型
  • SonicWall SSL VPN曝出高危漏洞,可能导致防火墙崩溃
  • java --- 性能优化01
  • Git使用—把当前仓库的一个分支push到另一个仓库的指定分支、基于当前仓库创建另一个仓库的分支并推送到对应仓库(mit6828)
  • 使用 easyX 库实现顺序表插入操作的可视化