探索BI系统搭建的必要性与AI技术的应用潜力
630
2022-05-28
在日常运维大集群时,分发安装包、安装软件、观察集群和收集集群相关信息时,存在节点多,操作繁琐,耗时长等问题,下面有一些运维大集群操作方式分享可以提高查看、执行效率。
分发部署
大集群所有服务器维护可使用GaussDB 集群内工具 pssh pscp进行批量操作(所有机器有互信为前提):
服务器系统参数查看是否统一:
pssh -P -h ip_all_192.X "grep 'kernel.panic =' /etc/sysctl.conf"
服务器系统参数统一修改:
pssh -P -h ip_all_192.X "sed -i '/kernel.panic =/d' /etc/sysctl.conf"
pssh -P -h ip_all_192.X "echo 'vm.panic_on_oom = 2' >> /etc/sysctl.conf"
发送一个文件到所有服务器:
pscp -h ip_ganglia_256 -l root /opt/backup_dir/256/gmond.conf /usr/local/etc/gmond.conf
core设置(suse):
alias set_core="pssh -t 300 -p 200 -P -h /opt/ip_list/ip_all_172.X \"mkdir -p /home/core;chmod 777 /home/core;sed -i '/^.*core.*unlimited/d' /etc/security/limits.conf;echo '* soft core unlimited' >> /etc/security/limits.conf;echo '* hard core unlimited' >> /etc/security/limits.conf;echo '1'>/proc/sys/kernel/core_uses_pid;echo '1'>/proc/sys/kernel/suid_dumpable;echo '/home/core/core-%e-%u-%s-%t-%h-%p' >/proc/sys/kernel/core_pattern;\" "
大集群相关目录批量创建配置:
pssh -P -h ip_all_172.X "mkdir -p /opt/XML/;mkdir -p /opt/env_gaussdb;chmod -R 777 /dev/cgroup;chown root:root /opt/XML;chmod 777 /opt/XML;chmod 777 /opt/env_gaussdb;touch /var/log/btmp;mkdir -p /opt/system_monitor;chmod 777 /opt/system_monitor"
pssh -P -h ip_all_172.X "mkdir -p /data{1..4}/DataBig;chown root:root /data{1..4};chown root:root /data{1..4}/DataBig;chmod 777 /data{1..4};chmod 777 /data{1..4}/DataBig"
根据机器性能,可以调整pssh并发能力
vi `which pssh`
同样通过如下方式编写shell也可以实现:
#!/bin/sh
for i in `cat /srv/BigData/mppdb/data5/backup/iplist_all`;do ssh -q $i date;done
lvs批量配置:
安装:
pssh -t 300 -P -h /opt/ip_list/ip_120_172.X "source /opt/env_gaussdb/cluster_1025;/data1/DataBig/clu_01/wisequery/script/gs_loadbalance -t install -U clu_01 -X /opt/XML/cluster_120x4_0120.xml --master=linux1111 --standby=linux1112 --lvs-addr=172.xx.xx.xx"
卸载:
pssh -t 300 -P -h /opt/ip_list/ip_120_172.X "source /opt/env_gaussdb/cluster_1025;/data1/DataBig/clu_01/wisequery/script/gs_loadbalance -t uninstall -U clu_01 -X /opt/XML/cluster_120x4_0120.xml"
结果收集
查看集群内节点的一些配置是否统一,
gs_ssh -c "date" ##查看集群节点时间是否统一
或者查看集群内某个节点的磁盘空间使用高于某个限定值。
gs_ssh -c "df -h | grep '[5-9][0-9]%'" | grep -v FAILURE ##查看哪些节点的磁盘高于50%
关闭集群时,长时间集群无法关闭, 通过此工具可以发现哪个节点上还残留进程,快速定位:
gs_ssh -c "ps ux |grep -E 'cm_agenr|cm_server|gaussdb|gtm'| grep -v 'check'”
集群安装后可以通过gs_ssh工具批量查询和收集信息:
gs_ssh -c 'gsql -p 25308 -d postgres -c "show all;"'
资源观察
监控脚本提前编辑好,分发到服务器各个节点通过快捷方式进行启动关闭
alias stop_monitoring="pssh -t 300 -p 200 -P -h /opt/ip_list/ip_all_172.X \" sh /opt/system_monitor/kill.sh \" "
alias start_monitoring="pssh -t 300 -p 200 -P -h /opt/ip_list/ip_all_172.X \" sh /opt/system_monitor/system_check.sh > /opt/system_monitor/run.log 2>&1 & \" "
作业分析
根据从作业日志得到的报错信息 到各个CN节点去检索日志 再根据检索出的CN日志信息 获取相关的query_id、dn编号去到DN 所在的节点去获取DN日志。
集群的CN ip写入到一个文件通过遍历方式到各个节点去检索日志:
path=`pwd`
hostfilepath="$path"
cmd=$1
hostfile=$2
for node in `cat ${hostfilepath}/${hostfile}`
do
echo "------------------------------------------ $node --------------------------------------------"
ssh $node "${cmd}"
done
sh exe.sh "grep 'ERROR timeout expired' /data2/DataBig/mpp_120/log/gaussdba/mpp_120/pg_log/cn*/postgresql-2021-02*log" cn
EI企业智能 Gauss AP 数据仓库服务 GaussDB(DWS)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。