本教程是通過(guò)GitHub用戶(hù)lij55開(kāi)源的Docker配置進(jìn)行快速部署Greenplum集群。僅供開(kāi)發(fā)人員測(cè)試學(xué)習(xí)使用舱卡,不可商用眠副。
0X00敲才、準(zhǔn)備工作
- 安裝docker:菜鳥(niǎo)教程
- 下載docker配置文件
git clone https://github.com/lij55/gphost.git
- 下載Greenplum沉御,lij55的配置文件分5.x和6.x的版本窃爷,根據(jù)自己的需求把Greenplum-db-xxx.rpm放到對(duì)應(yīng)的example目錄下粤剧。本教程采用的是greenplum-db-6.12.0-rhel7-x86_64.rpm,所以需要放到exampale6目錄下长窄。
% ls -l gphost/example6
build.sh
docker-compose.yaml
Dockerfile
greenplum-db-6.12.0-rhel7-x86_64.rpm
readme.org
reset
0X01滔吠、生成鏡像
在下載的gphost/example6中有配置好的Dockerfile,最終會(huì)生成mygreenplum6挠日、lyasper/gphost兩個(gè)鏡像疮绷。
# cd gphost/example6
% docker build . -t mygreenplum6
0X02、啟動(dòng)容器
容器通過(guò)docker-compose進(jìn)行管理嚣潜,在gphost/example6中有配置好的docker-compose.yaml冬骚,默認(rèn)有1個(gè)master節(jié)點(diǎn)、2個(gè)segment節(jié)點(diǎn)、1個(gè)etl服務(wù)器只冻,可根據(jù)自己的需求修改docker-compose.yaml文件庇麦。
docker-compose up -d
0X03、配置集群
登陸集群master節(jié)點(diǎn)喜德,一定要是gpadmin用戶(hù)山橄。
# 登陸master節(jié)點(diǎn)
ssh -p 6222 gpadmin@127.0.0.1
# 或者 ssh -p 6222 gpadmin@0.0.0.0
# 密碼: changeme
# 初始化配置文件
source /usr/local/greenplum-db/greenplum_path.sh
# 配置greenplum文件
artifact/prepare.sh -s 2 -n 2
# -s: segment(容器)的個(gè)數(shù)
# -n: 每個(gè)segment(容器)上primary的個(gè)數(shù)
# 初始化集群,會(huì)生成env.sh 文件(greenplum所需的環(huán)境變量)
gpinitsystem -a -c gpinitsystem_config
source env.sh
# 開(kāi)啟遠(yuǎn)程無(wú)密碼訪問(wèn)
artifact/postinstall.sh
# 查看安裝結(jié)果
ps -ef | grep postgres
不出意外就會(huì)安裝成功舍悯。
0X04航棱、測(cè)試集群
通過(guò)Navicat、dbeavor萌衬、pgadmin等客戶(hù)端都可以連接饮醇。
0X05、參考
- GitHub: lij55/gphost
- 菜鳥(niǎo)教程: Docker