前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Greenplum集群部署小记

Greenplum集群部署小记

作者头像
jeanron100
发布2018-07-26 15:14:41
1.7K0
发布2018-07-26 15:14:41
举报
文章被收录于专栏:杨建荣的学习笔记

Greenplum的分布式架构方案MPP对于海量数据处理还是很给力的,今天专门抽时间搭建了一下测试环境。

首先来简单看下Greenplum的架构,这个和Oracle,MySQL还是大不同。

它里面几乎糅括了所有的主从角色概念,比如GP节点就类似于一个集群分发器,是有standby的角色的,数据节点是segment,是有primary和mirror做为互备高可用的。

限于环境情况,我用了3台虚拟机来模拟这个集群。

其中gp01是GP计算节点,gp02,gp03是segment和mirro节点。

192.168.206.129 gp01 192.168.206.128 gp02 192.168.206.130 gp03

GP节点的standby在gp02上面。

部署的时候我用了4个segment.

所以gp02上面的结构是这样的:

primary1 primary2 mirror1 mirror2 gp_standby

gp03的结构是这样的: primary3 primary4 mirror3 mirror4

搭建GP的过程其实还是有点曲折的,但是技术点其实不是很多,回过头来看复杂度其实还好。

我们需要创建GP的标准用户,比如gpadmin

groupadd gpadmin useradd -g gpadmin gpadmin passwd gpadmin

为了能够在各个节点上面做到适配和统一,每个节点都可以建立一套统一的目录结构,比如:

cd /data mkdir -p /data/greenplum_data/{gpmaster,gpdatap1,gpdatap2,gpdatap3,gpdatap4,gpdatap5,gpdatap6,gpdatam1,gpdatam2,gpdatam3,gpdatam4,gpdatam5,gpdatam6} chown -R gpadmin:gpadmin /data/greenplum_data/ 需要注意的是主机的配置,这里建议是使用主机名的方式,避免是IP的方式。

cat /etc/hosts 192.168.206.129 gp01 192.168.206.128 gp02 192.168.206.130 gp03

前期的基本准备就差不多这些,比如内核参数,比如安装包等先略过了。

值得一提的是两个工具gpssh和gpscp,是用Python实现的,可以简单封装一下,就能拿过来自己用了。在部署的时候还是很清晰的。

gpssh gpscp

还有一点不错的就是GP的安装自带了一个配置文件,这个确实很省事。

source /usr/local/greenplum-db/greenplum_path.sh

软件的部署就是解压的过程,没什么可说的了。

说下创建数据库吧。

初始化几个变量:

export MASTER_DATA_DIRECTORY=/data/greenplum_data/gpmaster export PGPRORT=5432 export PGDATABASE=testDB

核心就是配置文件 init_seg_mirror_config了,内容如下:

ARRAY_NAME="Greenplum"

MACHINE_LIST_FILE=/usr/local/greenplum-db/config/seg_hosts

SEG_PREFIX=gpseg

PORT_BASE=33000

declare -a DATA_DIRECTORY=(/data/greenplum_data/gpdatap1 /data/greenplum_data/gpdatap2 )

MASTER_HOSTNAME=gp01

MASTER_DIRECTORY=/data/greenplum_data/gpmaster

MASTER_PORT=5432

TRUSTED_SHELL=ssh

CHECK_POINT_SEGMENTS=8

ENCODING=UTF-8

MIRROR_PORT_BASE=43000

REPLICATION_PORT_BASE=34000

MIRROR_REPLICATION_PORT_BASE=44000

declare -a MIRROR_DATA_DIRECTORY=(/data/greenplum_data/gpdatam2 /data/greenplum_data/gpdatam1)

DATABASE_NAME=testDB

安装使用如下的方式即可。

gpinitsystem -c ./init_seg_mirror_config --locale=C --max_connections=48 --su_password=gpadmin -s gp02

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 杨建荣的学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档