更换同一服务双节点同时故障的节点
操作场景
同一服务所在的双节点同时出现故障无法恢复,或者服务器操作系统或硬件故障导致无法使用的场景下进行节点更换,更换过程中请保持被更换节点下电状态。
双节点同时故障的服务可能包括OMS、LdapServer。
在恢复双故障节点时,如果涉及到OMS、LdapServer,需要手动恢复相应组件的数据,其他相关服务在更换故障节点并恢复元数据后,通过一键修复集群即可恢复。
前提条件
- GaussDB 200集群安装成功,且处于已启动状态。
- 准备新的硬件服务器,新服务器的硬件(CPU,内存,磁盘等指标)条件必须满足GaussDB 200安装的基本要求,等同或者优于被更换服务器的配置。
- 被更换的节点保持下电状态。
- 已获取到发生故障前故障节点上组件备份数据(主要包括OMS、LdapServer等的备份数据,具体以故障节点上实际安装的实例为准,备份方法及策略请参考备份恢复相关章节)。
说明:
集群备份数据文件的具体存放位置请咨询系统管理员,集群“default”任务的备份数据默认保存位置为主备管理节点的“${BIGDATA_DATA_HOME}/LocalBackup/”目录下,例如“/srv/BigData/LocalBackup”。
注意事项
- 新节点的root用户密码与环境中其他节点的root用户密码保持一致。
- 新节点的IP地址与被替换节点IP地址完全一致。
- 必须是主备实例所在的节点同时故障后才需要按照此章节执行操作。
- OMS和LdapServer组件单独故障或者同时故障时,都需同时恢复OMS数据和LdapServer数据。
准备数据
- FusionInsight Manager系统管理员帐户的用户名、密码。
- 服务器的操作系统管理员帐户密码。
- 故障点之前最新的并且时间点尽可能一致的OMS备份数据和LdapServer备份数据,以及涉及的其他组件的数据。
操作步骤
- 将故障节点下电,选取新节点安装与被替换节点相同版本的操作系统,新节点配置的IP地址、主机名、时间时区信息需要与被替换节点保持一致。
说明:
如果故障节点上有集群组件的备份文件,下电前将备份文件拷贝到新节点上用于数据恢复。
- 执行preinstall脚本,完成OS的预配置和分区挂载。
具体操作请参考软件安装。
执行preinstall操作前,需要修改对应的操作系统配置文件“preinstall.ini”,只保留新替换节点的IP地址及分区信息,防止影响到集群内的其他正常节点。
例如,需要替换的节点IP地址为192.168.10.10、192.168.10.11,修改“preinstall.ini”文件内的“g_hosts”和“g_parted_conf”参数如下(可通过配置规划工具直接生成,也可以从软件安装脚本工具包“FusionInsight_SetupTool_6.5.1.tar.gz”中获取):
g_hosts="192.168.10.[10,11]" g_user_name="root" g_port=22 g_parted=2 g_parted_conf="192.168.10.10:host0.ini;192.168.10.11:host1.ini;" g_add_pkg=1 g_pkgs_dir="redhat-6.4:/media/" g_log_file="/tmp/fi-preinstall.log" g_debug=0 g_hostname_conf="192.168.10.10:192.168.20.10:host0;192.168.10.11:192.168.20.11:host1;192.168.10.12:192.168.20.12:host2;"
- 被替换的节点中是否同时包含主、备OMS。
- 是,执行4。
- 否,执行10。
如果被替换的节点只包含一个OMS节点,请参考更换管理节点进行操作。
- 在执行完preinstall的两个节点上,参考安装双机Manager,安装主备Manager。
说明:
- 被更换节点如果不是全新节点,可能由于之前卸载不完全,遗留残余信息(如操作系统中存在omm用户或ID为2000的用户等),导致Manager安装失败。此时,请根据界面提示,在“${BIGDATA_HOME}/om-server/om/inst”目录执行./uninstall.sh命令,卸载Manager后,再重新安装Manager。
- 如果用户更换过HA根证书,在被更换节点解压软件包后(例如解压到“/opt”),需要执行以下步骤添加证书:
- 进入“/opt/FusionInsight_Manager/software/hasslCert”目录。
cd /opt/FusionInsight_Manager/software/hasslCert
- 准备根证书,将需要更换的HA根证书文件“root-ca.crt”和密钥文件“root-ca.pem”放置到“/opt/FusionInsight_Manager/software/hasslCert”目录内。
此根证书需要与更换管理节点前的根证书一致。
- 修改“/opt/FusionInsight_Manager/software/hasslCert/hasslCert.ini”文件内的“password”(默认为空)为生成根证书的密码。
例如修改为“password=Bigdata_123”,集群安装完成后会删除这个密码。
- 确认故障前集群是否安装过OMS补丁。
- 是,执行6。
- 否,执行7。
- 使用双节点恢复工具安装OMS补丁。
- 分别在主、备OMS节点上创建目录“${BIGDATA_DATA_HOME}/Manager/patch/”,将最新的补丁安装包拷贝到上述目录下,并确保目录和补丁包用户为omm:wheel,权限为700。
- 在主OMS节点上执行su - omm切换到omm用户,然后执行以下命令禁止OMS双机主备倒换。
可以通过登录安装了Manager的节点IP地址,执行sh ${BIGDATA_HOME}/om-server/om/sbin/status-oms.sh命令来查看当前Manager的主备信息,回显信息中“HAActive”参数值为“active”的节点即为主节点,“standby”为备节点。
cd ${OMS_RUN_PATH}/workspace/ha/module/hacom/tools/
./ha_client_tool --forbidswitch --name=product --time=360
- 执行以下命令禁用主备文件同步。
cd ${OMS_RUN_PATH}/workspace/ha/module/hacom/tools/
./ha_client_tool --disabledsync --name=product
- 执行OMS补丁安装脚本“install_oms_patch.sh”安装OMS补丁。
说明:
- 执行脚本命令前需要确认“install_oms_patch.sh”脚本的用户属组为omm:wheel。
- 如果故障前系统安装过多个补丁,此处恢复时只需安装最新的补丁包即可。
- 当前集群的最新版本号可以从OMS、LdapServer的最新备份文件名中获取,系统默认的备份文件名称为版本号_数据源_任务执行时间.tar.gz,例如6.5.1_OMS_20180204020014.tar.gz。
例如在RedHat系统中执行以下命令:
cd ${CONTROLLER_HOME}/sbin
./install_oms_patch.sh ${BIGDATA_DATA_HOME}/Manager/patch/FusionInsight_MPPDB_6.5.1_redhat.tar.gz
补丁安装成功后,登录备OMS节点,继续执行安装脚本安装补丁。
- 在主OMS节点上使用omm用户执行以下命令取消禁止OMS双机主备倒换。
cd ${OMS_RUN_PATH}/workspace/ha/module/hacom/tools/
./ha_client_tool --cancelforbidswitch --name=product
- 执行以下命令取消禁止主备文件同步。
cd ${OMS_RUN_PATH}/workspace/ha/module/hacom/tools/
./ha_client_tool --enabledsync --name=product
- 手动恢复OMS和LdapServer数据。
- 使用omm用户登录主OMS节点,执行以下命令使用故障前备份的数据恢复OMS数据。
例如OMS备份文件为6.5.1_OMS_20180204020014.tar.gz,上传至“${BIGDATA_DATA_HOME}”目录下,需要确保omm用户对该路径有相应操作权限,文件的用户属组为omm:wheel。
cd ${CONTROLLER_HOME}/sbin
sh huaweibigdata_backup.sh -r ${BIGDATA_DATA_HOME}/6.5.1_OMS_20180204020014.tar.gz
- 在主OMS节点上执行以下命令禁止OMS双机主备倒换。
cd ${OMS_RUN_PATH}/workspace/ha/module/hacom/tools/
./ha_client_tool --forbidswitch --name=product --time=360
- 使用omm用户登录主OMS节点,执行以下命令恢复LdapServer数据。
例如LdapServer备份文件为6.5.1_LDAP_20180204020014.tar.gz,上传至“${BIGDATA_DATA_HOME}”目录下,需要确保omm用户对该路径有相应操作权限,文件的用户属组为omm:wheel。
说明:
命令执行后,忽略其中的WARNING信息。
cd ${CONTROLLER_HOME}/ldapserver/ldapserver/local/script/
sh ldapserver_restore.sh -s ${BIGDATA_DATA_HOME}/6.5.1_LDAP_20180204020014.tar.gz
- 使用omm用户分别登录主备OMS节点,执行如下命令重启OMS。
cd ${CONTROLLER_HOME}/sbin
./restart-oms.sh
执行sh ${BIGDATA_HOME}/om-server/om/sbin/status-oms.sh,查看主管理节点的“HAAllResOK”是否为“normal”表示重启OMS成功。
- 使用omm用户登录主OMS节点,执行以下命令取消禁止OMS双机主备倒换。
cd ${OMS_RUN_PATH}/workspace/ha/module/hacom/tools/
./ha_client_tool --cancelforbidswitch --name=product
- 如果故障前集群已加载了License文件,登录FusionInsight Manager重新导入License文件,然后执行8。
参考加载License进行操作。
- 使用PuTTY,以root登录主管理节点,执行命令su - ommdba切换到ommdba用户。执行以下命令查看主备OMS是否完成数据同步,其中OMS数据库管理员用户密码默认为“dbChangeMe@123456”:
gs_ctl query -P OMS数据库管理员用户密码
Ha state: LOCAL_ROLE : Primary ... Senders info: ... RECEIVER_REPLAY_LOCATION : 1/24C11300 SYNC_PERCENT : 99% SYNC_STATE : sync ...
若“SYNC_PERCENT”为“99%”,则同步完成,同步完成后可进行下一步操作,否则请继续等待。
- 使用omm用户登录被更换的节点,执行以下命令更新节点中的“/etc/hosts”文件。
sh ${BIGDATA_HOME}/om-server/om/sbin/updateOMSHosts.sh
界面提示以下信息表示执行成功:
Succeed to update /etc/hosts.
- 参考重装主机,进行修复集群操作。
- 如果替换的节点包含LdapServer,登录FusionInsight Manager,选择“运维 > 备份恢复 > 恢复管理”,参考创建恢复任务:
- 若已执行7,则跳过本步骤,执行12。
- 若未执行7,则使用故障前的备份文件在集群中恢复OMS和LdapServer数据。
- 等待几分钟,登录FusionInsight Manager,检查是否存在“ALM-12006 节点故障”告警信息。
- 是,请参考ALM-12006 节点故障进行处理。
- 否,结束操作。
查看更多:华为GaussDB 200 更换故障节点「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」关注作者【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。评论
- 被替换的节点中是否同时包含主、备OMS。