Greenplum 添加mirror步骤
原文链接:https://yq.aliyun.com/articles/695864
[TOC]
概述
新安装的greenplum集群只有primary节点,没有mirror。高可用性没得到保证。所以就需要为集群添加mirror节点
注意:数据量过大时添加mirror,会有较大的磁盘压力,因为后台会一直同步数据,这一点线上系统需要注意
添加前情况
初始化的时候只有primary
gpstate -b
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:-Greenplum Primary Segment Configuration
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:----------------------------------------
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:-gw_sdw1 /data/primary/gpseg0 40000 2 0
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:-gw_sdw1 /data/primary/gpseg1 40001 3 1
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:-gw_sdw1 /data/primary/gpseg2 40002 4 2
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:-gw_sdw1 /data/primary/gpseg3 40003 5 3
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:-gw_sdw2 /data/primary/gpseg4 40000 6 4
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:-gw_sdw2 /data/primary/gpseg5 40001 7 5
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:-gw_sdw2 /data/primary/gpseg6 40002 8 6
- 20190326:00:48:33:005423 gpinitsystem:gw_mdw1:gpadmin-[INFO]:-gw_sdw2 /data/primary/gpseg7 40003 9 7
- Continue with Greenplum creation Yy/Nn>
查看系统配置表,发现只有primary节点
- postgres=# SELECT * from gp_segment_configuration ;
- dbid | content | role | preferred_role | mode | status | port | hostname | address | replication_port | san_mounts
- ------+---------+------+----------------+------+--------+-------+----------+---------+------------------+------------
- 1 | -1 | p | p | s | u | 5432 | gw_mdw1 | gw_mdw1 | |
- 2 | 0 | p | p | s | u | 40000 | gw_sdw1 | gw_sdw1 | |
- 6 | 4 | p | p | s | u | 40000 | gw_sdw2 | gw_sdw2 | |
- 3 | 1 | p | p | s | u | 40001 | gw_sdw1 | gw_sdw1 | |
- 7 | 5 | p | p | s | u | 40001 | gw_sdw2 | gw_sdw2 | |
- 4 | 2 | p | p | s | u | 40002 | gw_sdw1 | gw_sdw1 | |
- 8 | 6 | p | p | s | u | 40002 | gw_sdw2 | gw_sdw2 | |
- 5 | 3 | p | p | s | u | 40003 | gw_sdw1 | gw_sdw1 | |
- 9 | 7 | p | p | s | u | 40003 | gw_sdw2 | gw_sdw2 | |
- (9 rows)
添加步骤
在所有需要添加mirror的主机,创建存放mirror的数据目录
可以使用gpssh命令
gpssh -f seg_hosts -e 'mkdir -p /data/mirror'
生成addmirror文件
执行gpaddmirrors 命令,键入存放mirror节点的日志,生成配置文件
- [gpadmin@gw_mdw1 ~]$ gpaddmirrors -o ./addmirror
- 20190326:00:56:21:030831 gpaddmirrors:gw_mdw1:gpadmin-[INFO]:-Starting gpaddmirrors with args: -o ./addmirror
- 20190326:00:56:21:030831 gpaddmirrors:gw_mdw1:gpadmin-[INFO]:-local Greenplum Version: 'postgres (Greenplum Database) 4.3.1.0 build 6'
- 20190326:00:56:21:030831 gpaddmirrors:gw_mdw1:gpadmin-[INFO]:-master Greenplum Version: 'PostgreSQL 8.2.15 (Greenplum Database 4.3.1.0 build 6) on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC) 4.4.2 compiled on Jun 11 2014 17:23:40'
- 20190326:00:56:21:030831 gpaddmirrors:gw_mdw1:gpadmin-[INFO]:-Obtaining Segment details from master...
- Enter mirror segment data directory location 1 of 4 >
- /data/mirror
- Enter mirror segment data directory location 2 of 4 >
- /data/mirror
- Enter mirror segment data directory location 3 of 4 >
- /data/mirror
- Enter mirror segment data directory location 4 of 4 >
- /data/mirror
- 20190326:00:57:15:030831 gpaddmirrors:gw_mdw1:gpadmin-[INFO]:-Configuration file output to ./addmirror successfully.
查看文件内容如下
- [gpadmin@gw_mdw1 ~]$ cat addmirror
- filespaceOrder=
- mirror0=0:gw_sdw2:41000:42000:43000:/data/mirror/gpseg0
- mirror1=1:gw_sdw2:41001:42001:43001:/data/mirror/gpseg1
- mirror2=2:gw_sdw2:41002:42002:43002:/data/mirror/gpseg2
- mirror3=3:gw_sdw2:41003:42003:43003:/data/mirror/gpseg3
- mirror4=4:gw_sdw1:41000:42000:43000:/data/mirror/gpseg4
- mirror5=5:gw_sdw1:41001:42001:43001:/data/mirror/gpseg5
- mirror6=6:gw_sdw1:41002:42002:43002:/data/mirror/gpseg6
- mirror7=7:gw_sdw1:41003:42003:43003:/data/mirror/gpseg7
执行添加命令
- [gpadmin@gw_mdw1 ~]$ gpaddmirrors -i addmirror
- 20190326:01:08:45:031106 gpaddmirrors:gw_mdw1:gpadmin-[INFO]:-Starting gpaddmirrors with args: -i addmirror
- 20190326:01:08:45:031106 gpaddmirrors:gw_mdw1:gpadmin-[INFO]:-local Greenplum Version: 'postgres (Greenplum Database) 4.3.1.0 build 6'
- 20190326:01:08:45:031106 gpaddmirrors:gw_mdw1:gpadmin-[INFO]:-master Greenplum Version: 'PostgreSQL 8.2.15 (Greenplum Database 4.3.1.0 build 6) on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC) 4.4.2 compiled on Jun 11 2014 17:23:40'
命令没有报错,查看mirror节点的情况
使用gpstate -m查看,发现所有的mirror正在同步数据,因为我的集群新建,很快就同步完成了,此时再执行gpstate -m就可以看到Data Status的状态是Synchronized(已同步的)
- [gpadmin@gw_mdw1 ~]$ gpstate -m
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:-Starting gpstate with args: -m
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:-local Greenplum Version: 'postgres (Greenplum Database) 4.3.1.0 build 6'
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:-master Greenplum Version: 'PostgreSQL 8.2.15 (Greenplum Database 4.3.1.0 build 6) on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC) 4.4.2 compiled on Jun 11 2014 17:23:40'
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:-Obtaining Segment details from master...
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:--------------------------------------------------------------
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:--Current GPDB mirror list and status
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:--Type = Group
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:--------------------------------------------------------------
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:- Mirror Datadir Port Status Data Status
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:- gw_sdw2 /data/mirror/gpseg0 41000 Passive Resynchronizing
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:- gw_sdw2 /data/mirror/gpseg1 41001 Passive Resynchronizing
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:- gw_sdw2 /data/mirror/gpseg2 41002 Passive Resynchronizing
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:- gw_sdw2 /data/mirror/gpseg3 41003 Passive Resynchronizing
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:- gw_sdw1 /data/mirror/gpseg4 41000 Passive Resynchronizing
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:- gw_sdw1 /data/mirror/gpseg5 41001 Passive Resynchronizing
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:- gw_sdw1 /data/mirror/gpseg6 41002 Passive Resynchronizing
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:- gw_sdw1 /data/mirror/gpseg7 41003 Passive Resynchronizing
- 20190326:01:09:51:031359 gpstate:gw_mdw1:gpadmin-[INFO]:--------------------------------------------------------------
查看节点状态
发现所有的mirror已经启动
- postgres=# SELECT * from gp_segment_configuration ;
- dbid | content | role | preferred_role | mode | status | port | hostname | address | replication_port | san_mounts
- ------+---------+------+----------------+------+--------+-------+----------+---------+------------------+------------
- 1 | -1 | p | p | s | u | 5432 | gw_mdw1 | gw_mdw1 | |
- 2 | 0 | p | p | s | u | 40000 | gw_sdw1 | gw_sdw1 | 43000 |
- 10 | 0 | m | m | s | u | 41000 | gw_sdw2 | gw_sdw2 | 42000 |
- 3 | 1 | p | p | s | u | 40001 | gw_sdw1 | gw_sdw1 | 43001 |
- 11 | 1 | m | m | s | u | 41001 | gw_sdw2 | gw_sdw2 | 42001 |
- 4 | 2 | p | p | s | u | 40002 | gw_sdw1 | gw_sdw1 | 43002 |
- 12 | 2 | m | m | s | u | 41002 | gw_sdw2 | gw_sdw2 | 42002 |
- 5 | 3 | p | p | s | u | 40003 | gw_sdw1 | gw_sdw1 | 43003 |
- 13 | 3 | m | m | s | u | 41003 | gw_sdw2 | gw_sdw2 | 42003 |
- 6 | 4 | p | p | s | u | 40000 | gw_sdw2 | gw_sdw2 | 43000 |
- 14 | 4 | m | m | s | u | 41000 | gw_sdw1 | gw_sdw1 | 42000 |
- 7 | 5 | p | p | s | u | 40001 | gw_sdw2 | gw_sdw2 | 43001 |
- 15 | 5 | m | m | s | u | 41001 | gw_sdw1 | gw_sdw1 | 42001 |
- 8 | 6 | p | p | s | u | 40002 | gw_sdw2 | gw_sdw2 | 43002 |
- 16 | 6 | m | m | s | u | 41002 | gw_sdw1 | gw_sdw1 | 42002 |
- 9 | 7 | p | p | s | u | 40003 | gw_sdw2 | gw_sdw2 | 43003 |
- 17 | 7 | m | m | s | u | 41003 | gw_sdw1 | gw_sdw1 | 42003 |
- (17 rows)
Greenplum 添加mirror步骤的更多相关文章
- Deepgreen/Greenplum 删除节点步骤
Deepgreen/Greenplum删除节点步骤 Greenplum和Deepgreen官方都没有给出删除节点的方法和建议,但实际上,我们可以对节点进行删除.由于不确定性,删除节点极有可能导致其他的 ...
- pytest文档38-allure.setp添加测试用例步骤
前言 一般流程性的测试用例,写成自动化用例时,步骤较多写起来会比较长.在测试用例里面添加详细的步骤有助于更好的阅读,也方便报错后快速的定位到问题. 举个常见的测试场景用例:从登陆开始,到浏览商品添加购 ...
- 01 Mybatis框架添加英雄步骤
客户端发出请求的几种方式 通过浏览器的地址栏中发出请求 通过html页面中的超链接发出请求 通过html页面中的form表单发出请求 通过前端框架发出请求 工程中使用数据库需要做的几件事: 在pom. ...
- oneThink后台添加插件步骤详解
内容管理框架:oneThink 版本:V1.1.141212 (注:v1.1也有很多版本,一不小心就下到V1.1.140202 去了,还有其他版本,建议去代码托管平台下载最新版本) 我也不偷懒,把每一 ...
- 【转】Hadoop集群添加磁盘步骤
转自:http://blog.csdn.net/huyuxiang999/article/details/17691405 一.实验环境 : 1.硬件:3台DELL服务器,CPU:2.27GHz*16 ...
- ASP.NET Core 添加区域步骤(详细)
1 前言 早就想总结一下,但是没时间,这次有时间了,就详细的把步骤写出来. 2 步骤 2.1 添加区域 右键项目->添加->区域,如图1: 区域名称:Ceshi 添加完之后解决方案管理器会 ...
- linux操作系统不重启添加raid0步骤
1.限制:本步骤仅适用于LSI芯片的raid卡,可以通过以下蓝色指令判断是否LSI芯片 [root@HKC-Lab-CDN ~]# lspci | grep -i lsi 03:00.0 RAID b ...
- 阿里云移动推送 ios项目添加SDK步骤
添加阿里云Pods仓库和各产品SDK Pod依赖,配置步骤如下: 1. CocoaPods集成添加阿里云Pods仓库,Podfile添加: source 'https://github.com/ali ...
- 阿里云移动推送 安卓项目添加SDK步骤
Gradle的Emas服务插件会加载您下载的 aliyun-emas-services.json 文件.请修改工程的build.gradle使用该插件.配置步骤如下: 1. 修改项目级目录下build ...
随机推荐
- 20191213-RF中报告打不开提示Opening Robot Framework report failed
配置好Jenkins的RF框架后跑了一次autotest发现哦豁report打不开,网上找了一堆方法都是只能临时解决,重启后又失效了.现在给出临时解决方案和永久解决方案 首先错误信息如下: 临时解决 ...
- 【LEETCODE】51、数组分类,简单级别,题目:581,830,1010,665
package y2019.Algorithm.array; /** * @ClassName FindUnsortedSubarray * @Description TODO 581. Shorte ...
- 2. RDD编程
2.1 编程模型 在Spark中,RDD被表示为对象,通过对象上的方法调用来对RDD进行转换.经过一系列的transformations定义RDD之后,就可以调用actions触发RDD的计算,act ...
- 【scratch3.0教程】 2.3 奥运五环
(1)编程前的准备 在设计一个作品之前,必须先策划一个脚本,然后再根据脚本,收集或制作素材(图案,声音等),接着就可以启动Scratch,汇入角色.舞台,利用搭程序积木的方式编辑程序,制作出符合脚本的 ...
- SpringCloud之熔断器Hystrix及服务监控Dashboard
目的: 服务雪崩效应 服务熔断服务降级 Hystrix默认超时时间设置 Hystrix服务监控Dashboard 服务雪崩效应 雪崩效应就是一种不稳定的平衡状态也是加密算法的一种特征,它指明文 ...
- chmod: changing permissions of 'xxx': Operation not permitted
众所周知,在linux系统中,权限最大的是root账号,但凡修改涉及到系统本身的重大权限的操作,都需要root的权限才能操作.但是有些时候也有root干不了的事情. 比如:chmod: changin ...
- Java设计模式之委派模式(Dellegate/Dispather)
概述: 委派模式有点像代理模式又有点像策略模式. 区别在于代理模式注重过程,委派模式注重结果. 生活中也有很多委派模式的例子:例如公司老板给项目经理下达任务,将任务全权交给项目经理,有项目经理根据一定 ...
- 微信公众号 分享接口 签名通过 分享无效果(JSSDK自定义分享接口的策略调整)
为规范自定义分享链接功能在网页上的使用,自2017年4月25日起,JSSDK“分享到朋友圈”及“发送给朋友”接口,自定义的分享链接,其域名或路径必须与当前页面对应的公众号JS安全域名一致,否则将调用失 ...
- 阿里云ECS云服务器Linux Tomcat启动慢 访问网页转圈
状况: 今天购买了一台阿里云云服务器,按照正常的方式安装JDK,mysql,以及Tomcat 这里的版本信息有 系统 :Centos 7 tomcat: apache-tomcat-8.5.45.ta ...
- Linux sftp命令
sftp是Secure File Transfer Protocol的缩写,安全文件传送协议.可以为传输文件提供一种安全的网络的加密方法.sftp 与 ftp 有着几乎一样的语法和功能.SFTP 为 ...