如何变更wps文档中插入批注的文字字号? 目前已知的方法都不起作用。如:1.选择批注内容,右键字体后
912
2022-05-29
1. 适用场景
DN状态异常(down)
CN处于deleted或down状态
2. 前提条件
1) GaussDB A集群安装成功,且处于已启动状态。
2) DN环的主、备实例不能同时损坏,DN环的主、从备实例不能同时损坏,DN环的备、从备实例不能同时损坏,即一个DN环中只能损坏一个实例。
3) GaussDB A集群内如下实例至少存在一个正常运行的:
◾CMServer
◾CMAgent
◾GTM
◾Coordinator
4) 如果某个GTM实例存在故障,则要求实例修复前另外一个GTM实例必须为最高可用模式。
3. 注意事项
1) 操作要在正常节点执行,不能在被修复节点执行
2) 在前一次修复结束后才能再次执行修复。
2) 修复前不能锁定GaussDB A集群。
3) 修复故障实例过程中系统将关闭“自动剔除故障CN”功能,完成后系统再次打开该功能。因此建议在开始修复前确认故障的CN已经被自动剔除(即故障的CN状态为Deleted),否则在修复过程中用户执行DDL会报错。
4) 实例修复前用户手动在故障实例上配置的guc参数、pg_hba.conf配置的白名单会丢失,需要提前备份。
5) gs_replace不涉及cn的,可以在线执行;gs_replace涉及cn的,8.0版本之前,必须离线执行;gs_replace涉及cn的,8.0版本之后,只要保证被修复的cn没有DDL业务即可
4. 对系统影响
由于过程中会短暂锁集群,锁集群后用户下发的包含显式启动事务的DDL语句会出现等待,集群解锁后会报错或等待时间超过20分钟会报错。如包含创建临时表操作,在集群解锁后会报错(Don't support temp table when need reconnect pooler)。
5. 准备工作
5.1检查集群状态
步骤1 以omm用户登录GaussDB A集群的第一个正常的cn节点
步骤2 执行以下命令,启用环境变量
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
步骤3 执行以下命令,查看GaussDB A集群当前状态
cm_ctl query -Cv
查看具体故障实例所在节点:实例不是“Normal”状态,且持续5分钟没有自恢复
[ Cluster State ]
cluster_state : Degraded
redistributing : No
balanced : Yes
[ Datanode State ]
node instance state | node instance state | node instance state
--------------------------------------------------------------------------------------------------------------------------
1 redhat1-1 6001 P Down Disk damaged | 2 redhat1-2 6002 S Standby Normal | 3 redhat1-3 3002 R Secondary Normal
1 redhat1-1 6003 P Primary Normal | 3 redhat1-3 6004 S Standby Normal | 2 redhat1-2 3003 R Secondary Normal
2 redhat1-2 6005 P Primary Normal | 3 redhat1-3 6006 S Standby Normal | 1 redhat1-1 3004 R Secondary Normal
2 redhat1-2 6007 P Primary Normal | 1 redhat1-1 6008 S Standby Normal | 3 redhat1-3 3005 R Secondary Normal
3 redhat1-3 6009 P Primary Normal | 1 redhat1-1 6010 S Standby Normal | 2 redhat1-2 3006 R Secondary Normal
3 redhat1-3 6011 P Primary Normal | 2 redhat1-2 6012 S Standby Normal | 1 redhat1-1 3007 R Secondary Normal
步骤4以上查询结果为例,故障实例所在节点名称为redhat1-1
5.2关闭集群通信白名单(需要离线时做)
注意:若被修复节点上没有cn,在没有IO压力的情况下可以在线操作。如果被修复节点有cn,则必须离线操作!
步骤 1 现场实施人员知会并确认用户已完成数据库业务停止操作。
步骤 2 以omm用户登录第一个正常的CN节点,执行如下命令注释用户白名单
以默认CN实例目录/srv/BigData/mppdb/data1/coordinator为示例,现场需根据实际情况进行调整。
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
gs_ssh -c "hostname && if [ -f /srv/BigData/mppdb/data1/coordinator/pg_hba.conf ]; then cp -f /srv/BigData/mppdb/data1/coordinator/pg_hba.conf /srv/BigData/mppdb/data1/coordinator/pg_hba.conf_comment; fi "
gs_ssh -c "hostname && if [ -f /srv/BigData/mppdb/data1/coordinator/pg_hba.conf ]; then sed -i '/^[^#].*sha256.*/s/\(.*\)/#@#@#/g' /srv/BigData/mppdb/data1/coordinator/pg_hba.conf; fi "
gs_ssh -c "hostname && if [ -f /srv/BigData/mppdb/data1/coordinator/pg_hba.conf ]; then sed -i '/^[^#].*md5.*/s/\(.*\)/#@#@#/g' /srv/BigData/mppdb/data1/coordinator/pg_hba.conf; fi "
步骤 3 以omm用户登录第一个正常的CN节点,关闭MPPDB实例节点下的后台访问连接和应用连接。具体操作如下:
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
gs_ssh -c "ps ux |grep -w gsql |grep -v grep |awk '{print $2}' |xargs -r kill -9"
gs_ssh -c "ps ux |grep -w ap_agent |grep -v grep |awk '{print $2}' |xargs -r kill -9"
步骤 4 以omm用户登录每一个正常CN节点,执行如下命令重启CN。
执行以下命令,获取到CN的进程Pid
ps -ef | grep /srv/BigData/mppdb/data1/coordinator | grep -v grep
执行以下命令,杀死CN进程
kill -9 Pid
执行以下命令,观察CN被重新拉起,并且Pid与之前获取的Pid不同
ps -ef | grep /srv/BigData/mppdb/data1/coordinator | grep -v grep
6. 变更步骤
6.1清理残留文件
步骤1 以omm用户登录被修复的节点
步骤2 执行以下命令,启用环境变量
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
步骤3 使用如下命令在需要修复实例的主机上清理可能存在的残留文件。此命令仅在上次修复故障实例执行失败的情况下需要执行。
if [ -f $PGHOST/GaussReplace.dat ];then rm $PGHOST/GaussReplace.dat;fi
说明
该文件为替换故障实例、替换主机中产生的用于记录执行步骤的临时文件,如果在上次执行过程中出现宕机或网卡中断等,可能会导致该文件残留。在替换故障实例前检查该文件是否存在,且生成时间非本次替换故障实例的时间,则可判断为上次执行的残留文件,删除该文件后,继续执行替换故障实例。
6.2修改原cn目录名称(被修复节点有cn时做)
步骤1 以omm用户登录需要被修复的节点
步骤2 执行以下命令,启用环境变量
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
步骤3 使用如下命令修改原cn目录名称,防止修失败回退后误拉起损坏的cn。
mv /srv/BigData/mppdb/data1/coordinator /srv/BigData/mppdb/data1/coordinator_bak
6.3配置实例
步骤1 以omm用户登录GaussDB A集群的健康节点
步骤2 执行以下命令,启用环境变量
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
步骤3 执行以下命令,完成故障实例所在节点配置操作
gs_replace -t config -h redhat1-1
说明
配置操作会清理替换实例的空间,初始化替换实例,配置替换实例。
如果收到提示:“GAUSS_50201: The XXX does not exist.”,则请检查对应的实例数据目录是否存在。如果不存在,请重新创建目录后再次执行上述命令。
如果指定主机的表空间所在磁盘出现故障,从而导致表空间中的数据损坏,更换新磁盘后,需要指定“--force”参数对该主机强制进行表空间数据的恢复。如果在config阶段指定“--force”参数,则在start阶段也必须指定“--force”参数。
6.4还原cn的白名单(被修复节点有cn时做)
如果有配置lvs,每个cn的白名单相同,可跳过此小节。
步骤1 以omm用户登录需要被修复的节点
步骤2 执行以下命令,启用环境变量
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
步骤3 使用如下命令将备份的白名单还原,操作前确认备份的白名单文件没有损坏。
cp /srv/BigData/mppdb/data1/coordinator_bak/pg_hba.conf /srv/BigData/mppdb/data1/coordinator/
6.5恢复集群通信白名单(需要离线时做)
步骤1 以omm用户登录第一个正常的CN节点,执行如下命令注释用户白名单
以默认CN实例目录/srv/BigData/mppdb/data1/coordinator为示例,现场需根据实际情况进行调整。
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
gs_ssh -c "hostname && if [ -f /srv/BigData/mppdb/data1/coordinator/pg_hba.conf_comment ]; then sed -i '/^#@#@#.*/s/#@#@#\(.*\)//g' /srv/BigData/mppdb/data1/coordinator/pg_hba.conf && rm -f /srv/BigData/mppdb/data1/coordinator/pg_hba.conf_comment; fi "
6.6启动实例
步骤1 以omm用户登录GaussDB A集群的健康节点
步骤2 执行以下命令,启用环境变量
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
步骤3 执行以下命令,完成故障实例所在节点启动操作
gs_replace -t start -h redhat1-1
启动操作会启动集群替换实例的主机
gs_replace -t start -h redhat1-1
Starting.
======================================================================
Successfully started instance process. Waiting to become Normal.
======================================================================
.
======================================================================
Start succeeded on all nodes.
Start succeeded.
6.7重置实例
参考主备均衡方案实施。
https://bbs.huaweicloud.com/forum/thread-145786-1-1.html
6.8更新lvs(被修复节点有cn时做)
步骤1 以root用户身份登录服务器,执行source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile命令启动环境变量。
步骤2 执行gs_loadbalance更新负载均衡配置。
gs_loadbalance -t reload -U omm -X ${BIGDATA_HOME}/FusionInsight_MPPDB_*/*_*_MPPDBServer/etc/mppdb-install-config.xml --lvs-addr=10.146.156.101
路径中红色斜体替换为实际版本路径
参数说明
-U:运行集群的操作系统用户名。必选。
-X:集群配置文件。必选。
--lvs-addr:后续供客户端连接的LVS IP地址。必选。
7. 验证步骤
7.1确认结果
1)后台集群状态验证
步骤1 以omm用户登录GaussDB A集群的第一个正常的cn节点
步骤2 执行以下命令,启用环境变量
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
步骤3 执行以下命令,查看GaussDB A集群当前状态
cm_ctl query
如下则为正常
[ Cluster State ]
cluster_state : Normal
redistributing : No
balanced : Yes
2)客户业务验证
验证方案需包括DDL和DML语句
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。