greenplum生产集群中segment故障恢复

目录

 

一、greenplum集群环境

二、segment故障检查

2.1gpstate -m日志信息

2.2gpstate -c 日志信息

2.3gpstate -e 日志信息

2.4gpstate -s 日志信息

2.5故障说明

三、segment故障恢复

3.1在master主机上运行下面命令,重新激活失败的segment

3.2运行gpstate 命令用于验证重新同步过程状态

3.3运行gprecoverseg命令,使用-r参数将segment恢复到原来初始化时的角色设置

3.4查看gpcc状态


一、greenplum集群环境

该生产环境集群由四台服务器构成,其中一台为primary master节点,一台为standby master节点,两外两台为segment节点,每个segment节点有四个segment(两个primary segment,两个mirror segment),segment采用group方式进行备份(sdw1的备份都在sdw2上,sdw2的备份都在sdw1上),其角色分配如下图所示:

二、segment故障检查

2.1gpstate -m日志信息

2.2gpstate -c 日志信息

2.3gpstate -e 日志信息

2.4gpstate -s 日志信息

                 (1)sdw1节点的日志信息

    (2)sdw2节点的日志信息

2.5故障说明

Sdw1节点primary segment正常,mirror segment被激活,其mirror segment为sdw2节点上的primary segment备份。Sdw2节点primary segment失败,mirror segment失败。此时集群环境能够正常提供服务,全部负载到sdw1节点上。

使用select * from gp_segment_configuration查看segment角色信息,如下图所示:

三、segment故障恢复

3.1在master主机上运行下面命令,重新激活失败的segment

$ gprecoverseg

3.2运行gpstate 命令用于验证重新同步过程状态

$ gpstate -m

当primary segment发生故障时,mirror segment会被激活为primary segment。运行gprecoverseg命令之后,失败的primary segment成为了mirror segment,而被激活的mirror segment成为了primary segment,segment实例不会返回到在系统初始化时配置的首选角色。这意味着某些segment主机上可能运行多个primary segment实例,而某些segment主机上运行较少的segment,即系统可能处于潜在的不平衡状态。如下图所示,sdw1上的mirror segment变为了primary segment,sdw2上的primary segment变为了mirror segment。即sdw2的primary segment运行在sdw1节点上,系统处于不平衡状态。

此时GPCC的状态为:

3.3运行gprecoverseg命令,使用-r参数将segment恢复到原来初始化时的角色设置

$ gprecoverseg -r

3.4查看gpcc状态

 

posted @ 2018-12-15 22:27  大数据技术与数仓  阅读(796)  评论(0)    收藏  举报