在Mac上使用Docker搭建Greenplum集群
踩坑记录:
本地是mac的环境,docker 和docker compose 已经安装完成了, 都是新版, 按照greenplum的github上的指导, 安装了mac的版本, 报错, 又安装了docker的版本还是报错, 没有办法, 选择了百度, 这篇恰好解决了问题.安装成功了.
本地安装docker 和 docker compose的步骤就省略了. 可以自己安装, 这个很常见. 就不意义废话了.
后验证下是否已经安装成功了.
下面就开始新建Dockerfile文件了, 其中open-source-greenplum-db-6.16.1-rhel7-x86_64.rpm在这里哦,(posu)
#新建greenplum文件夹
mkdir greenplum
#上传greenplum安装包(open-source-greenplum-db-6.16.1-rhel7-x86_64.rpm)到greenplum文件夹下. 这个文件需要提前自己下载好.
#编辑Dockerfile文件
vi Dockerfile
#复制粘贴以下内容
FROM lyasper/gphost
COPY open-source-greenplum-db-6.16.1-rhel7-x86_64.rpm /home/gpadmin/greenplum-db.rpm
RUN rpm -i /home/gpadmin/greenplum-db.rpm --nodeps --force
RUN chown -R gpadmin /usr/local/greenplum-db*
RUN rm -f /home/gpadmin/greenplum-db.rpm
#编辑docker-compose.yml文件
vi docker-compose.yml
#复制粘贴以下内容
version: '3'
services:
mdw:
hostname: mdw
image: "mygreenplum"
ports:
- "2222:22"
- "5433:5432"
sdw1:
hostname: sdw1
image: "mygreenplum"
sdw2:
hostname: sdw2
image: "mygreenplum"
etl:
hostname: etl
image: "mygreenplum"
执行Dockerfile文件
dokcer build . -t mygreenplum
编译得到自己的镜像.
下面再执行docker-compose, 得到主从结构的greenplum.
docker-compose up -d
到此集群就已经启动了. 可以使用 docker ps 查看正在运行的容器.
现在我们登陆到master节点上去进行greenplum的配置,
集群配置和初始化
登录master节点
ssh -p 2222 gpadmin@127.0.0.1 #密码: changeme
刷新配置文件
source /usr/local/greenplum-db/greenplum_path.sh
初始化集群配置, 我们只有两个节点。
./artifact/prepare.sh -s 2 -n 2
集群初始化
#刷新环境变量
source env.sh
#集群初始化
gpinitsystem -a -c gpinitsystem_config
初始化成功后如下
注意:如果次初始化失败,后续再次初始化的时候需要将之前的容器停止并刪除,否则会报错(切记),其实很简单,你只需要把创建的三个容器删除了,再次执行docker-compose up -d启动greenplum的集群,再次执行以上的命令,进行配置。
命令行登录。
#gpadmin超级用户无密码,登录master节点后直接执行以下命令即可登录
psql
为了远程登录集群,修改以下配置
# 登录master节点后,执行以下命令cd /home/gpadmin/master/gpseg-1
vi pg_hba.conf
# 后一行添加如下內容
host all all 0.0.0.0/0 trust
# 修改后重启集群
gpstop -u
docker 安装greenplum就全部结束. 部分内容参考这个人的文章, 感谢.
2021年05月27日 更新,其他同事链接我的电脑的docker的安装的greelplum。
连接我本机: ssh -p 2222 gpadmin@10.198.61.106 #密码: changeme
#gpadmin超级用户无密码,登录master节点后直接执行以下命令即可登录
链接上之后,执行sql是没有任何反应的。
需要执行一下的命令:
# 执行以下的命令,用于重新构建一遍环境变量
source /usr/local/greenplum-db/greenplum_path.sh
source env.sh
执行完成会后,再执行psql,就能进入greenplum了。非常的方便。哈哈哈.
链接后使用 gpstart -a 启动greenplum数据库.
如果嫌弃每次进来都执行上面的source命令麻烦, 可以修改.bash_profile .把上面的两条命令加上去就可以了, 只是稍微注意下路径.
本文来源:https://blog.csdn.net/u010398771/article/details/117297063
相关文章