资讯专栏INFORMATION COLUMN

Greenplum数据库备机替换

IT那活儿 / 2151人阅读
Greenplum数据库备机替换

点击上方“IT那活儿”,关注后了解更多内容,不管什么活儿,干就完了!!!

01

备机替换流程图




备注:做任何的修改操作之前,必需备份文件,备份的文件就放在当前路径,日期为当天日期。
例如:cp /etc/hosts  /etc/hosts. `date +%Y%m%d`
牢记备份的重要性!!!!


02

登陆master


2.1 需先登录数据库查看是否有宕机主机,如果有则需要打印,没有继续执行,语句如下:
psql -Atc "select * from gp_segment_configuration where status=d"
2.2 获取被替换主机目录,第二大步骤中会用到此目录。
psql -Atc "select  b.content,b.hostname, a. fselocation from 
pg_filespace_entry a , gp_segment_configuration b where 
a.fsedbid =b.dbid and b.hostname = hostname ;"


2.3 提取master 主机参数,md5 值与后续备机做比较。


1) md5sum /etc/sysctl.conf
2) md5sum /etc/security/limits.conf
3) md5sum /etc/security/limits.d/?0-nproc.conf    问号代表主机品牌不同,数字不同
4) md5sum /etc/selinux/config
2.4 软件包/usr/local/Greenplum*。

03

登陆备机,检查备机环境


备  机:  danji   ***.***.3.95
问题主机:gp2   ***.***.3.99
把备机的主机名修改成替换下来的主机名(源主机),保持主机名一致,然后修改/etc/hosts文件,修改需要替换主机的IP地址。
3.1 备机环境检查
显示当前登陆的IP,hostname,用户。
[root@danji ~]#hostrname -i
[root@danji ~]#hostrname
[root@danji ~]#whoami
3.2 检查备机目录,创建对应文件夹
3.2.1 备机创建和源主机相同的文件夹目录,具体根据集群目录而定。
ls -rtl “a. fselocation”目录为需要被替换主机的目录。
3.2.2 没有则创建(’-p’ 一次可以创建多级文件夹)。
mkdir -p /data{1,2}/{primary,mirror}/{gpfs,default}


3.2.3 为创建的目录赋权。

例如:
取到的目录路径为:data1/mirror/gpfs/gpseg21 只取 data* 进行赋属主,组权限。
chown-R gpadmin:gpadmin /data*
3.2.4 赋权后检查目录权限。
ls -rtl
3.3 检查备机参数与master 主机参数对比,如果不同,则从master 上拷贝到备机上。
重复操作第一大步骤中第3小点的操作(备机上操作)。
如果MD5sum 值不同,则从master 上拷贝到备机上。
例如:
scp ***.***.3.96:/etc/sysctl.conf :/etc/sysctl.conf
注:/etc/sysctl.conf 文件传输后,需要在备机上执行sysctl -p。
3.4 查看防火墙状态
查看主机防火墙是否已关:systemctl status firewalld
临时关闭:systemctl stop firewalld
永久关闭:systemctl disable firewalld
3.5 检查备机数据库包
如果备机中已存在master数据库对应的软件包,且版本一致,则不需要操作,如没有对应的软件包,则从master把软件包拷贝到备机的相应目录下。
为了以防万一,这边还是建议拷贝。
3.5.1 从master主机拷贝软件包到备机上scp -rp master:/usr/local/greenplum-db* /usr/local/。
3.5.2 检查备机软件包ls -lrt /usr/local。
3.5.3 删除 /usr/local/greenplum-db 软链接,重新对/usr/local/greenplum-db 打软连接。
ln -s  源文件  目标文件。
使用如下命令重新创建软链接,其中greenplum-db-* 这个目录需根据环境而变化。
cd /usr/local
rm -f greenplum-db
ln -f greenplum-* greenplum-db
3.5.4 创建软链接完成后,检查备机软件包。
ls -rtl /usr/local
3.6 修改主机名
例如:原备机主机名为danji , 待更改主机名后,显示的主机名为 gp2。
备份:
cp /etc/sysconfig/network /etc/sysconfig/network. `date +%Y%m%d`
Vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=gp2



04

重做互信,分发hosts文件


修改master的/etc/hosts文件,重做互信,分发hosts文件。
4.1 更新hosts文件,需要把之前的ip与主机名的映射关系改变,只改ip不改主机名。
备份:
cp /etc/hosts /etc/hosts. `date +%Y%m%d`
[root@mdw~]# vi /etc/hosts
***.***.3.99 gp2 ====》 ***.***.3.95 gp2 #gp2被替换,IP改成备机ip,主机名不变
4.2 source 环境变量
source/usr/local/greenplum-db/greenplum_path.sh
4.3 分发/etc/hosts文件到所有集群主机,集群做互信(新机器要输入密码)。
[root@master~]# gpssh-exkeys -f ~/all_hosts


4.4 分发


gpscp-f ~/all_hosts /etc/hosts =:/etc/hosts
4.5 验证是否分发成功
[root@mdw~]# gpssh -f ~/all_hosts
=>cat /etc/hosts |grep gp2



05

执行全量恢复


5.1 调度全部停止开始进行全量恢复(在master节点),将残余进程清理干净。
psql -c “chekpoint”
gpstop -M fast
检查是否已停库完成,ps -ef |grep “M master” |grep -v grep 如果有进程则未停库完成。
5.2 以维护模式启动数据库
gpstart -m
gprecoverseg -F
使用gpstate -e查看同步进度。
5.3 以维护模式停止数据库
gpstop -m
启动数据库gpstart,查看数据库状态确认没问题。
gpstate -e。


本文作者:晏鹏宇

本文来源:IT那活儿(上海新炬王翦团队)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129654.html

相关文章

  • 探索Greenplum的实践,了解新一代大数据处理利器

    摘要:上有主节点和从节点两部分,两者主要的功能是生成查询计划并派发,以及协调并行计算,同时在上保存着,这个全局目录存着一组数据库系统本身所具有的元数据的系统表。 前言:近年来,互联网的快速发展积累了海量大数据,而在这些大数据的处理上,不同技术栈所具备的性能也有所不同,如何快速有效地处理这些庞大的数据仓,成为很多运营者为之苦恼的问题!随着Greenplum的异军突起,以往大数据仓库所面临的很多...

    supernavy 评论0 收藏0
  • centos7.3下 greenplum-db 安装、配置文档

    摘要:下安装配置文档一系统要求系统版本要求根据官方文档支持以下几种系统文件系统要求数据存储目录为文件系统二下安装服务器列表主节点数据节点数据节点主节点切换备用节点修改系统配置项关闭关闭防火墙修改内核配置参数并执行使之生 centos7.3下 greenplum-db 安装、配置文档 一.系统要求 1.系统版本要求:根据官方文档: greenplumd-b支持以下几种linux系统: ...

    neuSnail 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<