栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

【记录】CentOS7安装部署greenplum6.17详细讲解

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【记录】CentOS7安装部署greenplum6.17详细讲解

一、软件准备 1.1 环境
centOS7
greenplum6.17
1.2 gp数据库下载

下载适合自己的就行了

https://github.com/greenplum-db/gpdb/releases

这是我下的

二、前期准备工作 2.1 系统配置

ps : 系统配置三台服务器都需要对应的修改!!!!

2.1.1 关闭SELINUX (如果装过cdh可以跳过,装CDH的时候都调整过了的)

改成disabled

2.1.2 关闭防火墙(如果装过cdh可以跳过,装CDH的时候都调整过了的)
service iptables stop
chkconfig iptables off
2.1.3 配置映射(如果装过cdh可以跳过,装CDH的时候都调整过了的)

vim /etc/hosts
我这边准备将 risen-cdh01作为master
risen-cdh[02-03] 作为segment

2.1.4 修改内核配置参数
vim /etc/sysctl.conf

添加以下内容,都是官网的

kernel.shmall = 4000000000
kernel.shmmax = 500000000
kernel.shmmni = 4096
vm.overcommit_memory = 2 
vm.overcommit_ratio = 95 
net.ipv4.ip_local_port_range = 10000 65535 
kernel.sem = 500 2048000 200 40960
kernel.sysrq = 1
kernel.core_uses_pid = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.msgmni = 2048
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.conf.all.arp_filter = 1
net.core.netdev_max_backlog = 10000
net.core.rmem_max = 2097152
net.core.wmem_max = 2097152
vm.swappiness = 10
vm.zone_reclaim_mode = 0
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
vm.dirty_background_ratio = 0 
vm.dirty_ratio = 0
vm.dirty_background_bytes = 1610612736
vm.dirty_bytes = 4294967296

执行生效

sysctl -p
2.1.5 资源限制参数
 /etc/security/limits.conf

添加以下配置(*号也是,代表全部)

* soft nofile 524288
* hard nofile 524288
* soft nproc 131072
* hard nproc 131072
2.1.6 修改/etc/systemd/logind.conf

直接执行以下命令

echo "RemoveIPC=no" >> /etc/systemd/logind.conf
service systemd-logind restart
2.2 添加greenplum专属用户

三台服务器都要配

2.2.1 在每台服务器创建gpadmin 用户及用户组并赋权
groupadd -g 530 gpadmin
useradd -g 530 -u 530 -m -d /home/gpadmin -s /bin/bash gpadmin
chown -R gpadmin:gpadmin /home/gpadmin/
2.2.2 配置密码
passwd gpadmin

我密码就是 gpadmin。少于八位数要数据两次

2.3 gpadmin角色的 公钥配对 2.3.1 在三台服务器都切换成 gpadmin角色
su - gpadmin
2.3.2 三台服务器分别生成秘钥
ssh-keygen -t rsa
2.3.3 三台服务器的公钥都给一台机器

三台服务器都执行以下命令,host填一样的
这里我写的我自己的,你用的时候记得改一下

ssh-copy-id   risen-cdh01
2.3.4 检查一下上边所填host是否有所有的公钥了

切到 上述host 窗口,执行以下命令

 cat /home/gpadmin/.ssh/authorized_keys 

2.3.5 把秘钥给每台服务器都传一下,这样就能相互访问 不需要密码了
cd /home/gpadmin/.ssh/
scp authorized_keys  risen-cdh02:$PWD
(输入一次gpadmin账户的密码)
scp authorized_keys  risen-cdh03:$PWD
(输入一次gpadmin账户的密码)
2.3.6 检查秘钥是否配好了

例如 在risen-cdh01服务器上切换成 gpadmin账户,然后执行

ssh risen-cdh02


看是否切换成功。
几台服务器都相互试试。

三、正式安装

前期准备做好了,后边安装就简单了

3.1 将之前下载好的rpm包给其他几台服务器都传一下
scp open-source-greenplum-db-6.17.7-rhel7-x86_64.rpm risen-cdh02:$PWD
scp open-source-greenplum-db-6.17.7-rhel7-x86_64.rpm risen-cdh02:$PWD
3.2 三台服务器都执行一下安装命令

要在root用户下执行

rpm -ivh open-source-greenplum-db-6.17.7-rhel7-x86_64.rpm
3.3 修改安装结果目录的权限

安装完在/usr/local 目录下

chown -R gpadmin:gpadmin /usr/local/greenplum*
3.4 修改gp的配置

三台机器都修改一下

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


增加一个GPHOME , 不配可能会出问题

3.5 修改gpadmin的环境变量

切换到 gpadmin用户

su - gpadmin

找到文件

vim /home/gpadmin/.bash_profile 

增加以下配置

source /usr/local/greenplum-db/greenplum_path.sh
export MASTER_DATA_DIRECTORY=/home/gpadmin/data/master/gpseg-1
export PGPORT=5432
export PGUSER=gpadmin

生效一下

source /home/gpadmin/.bash_profile 
3.6 创建一些要用到的目录 3.6.1 master要创建的
mkdir /home/gpadmin/conf
mkdir -p /home/gpadmin/data/master
mkdir /home/gpadmin/gpconfigs
3.6.2 segment
mkdir -p /home/gpadmin/data/primary
mkdir -p /home/gpadmin/data/mirror
3.7 配置配置hostfile_gpinitsystem
vim /home/gpadmin/conf/hostfile_gpinitsystem

这个就是senment的列表

3.8 配置初始化文件

只需要在master节点配置即可

cp $GPHOME/docs/cli_help/gpconfigs/gpinitsystem_config /home/gpadmin/gpconfigs/gpinitsystem_config
vim /home/gpadmin/gpconfigs/gpinitsystem_config

直接覆盖掉,需要注意的是在注释前边要有#,配置信息不能有,在复制的时候要注意点

#数据库代号
ARRAY_NAME="Greenplum"

#segment前缀
SEG_PREFIX=gpseg

#primary segment 起始的端口号
PORT_base=33000

#指定primary segment的数据目录,网上写的是多个相同目录,多个目录表示一台机器有多个segment
declare -a DATA_DIRECTORY=(/home/gpadmin/data/primary)

#master所在机器的host name
MASTER_HOSTNAME=mdw

#master的数据目录
MASTER_DIRECTORY=/home/gpadmin/data/master

#master的端口
MASTER_PORT=5432

#指定bash的版本
TRUSTED_SHELL=/usr/bin/ssh

#将日志写入磁盘的间隔,每个段文件通常 =16MB < 2 * CHECK_POINT_SEGMENTS + 1
CHECK_POINT_SEGMENTS=8

#字符集
ENCODING=UNICODE

#mirror segment 起始的端口号
MIRROR_PORT_base=44000

# mirror的数据目录,和主数据一样,一个对一个,多个对多个
declare -a MIRROR_DATA_DIRECTORY=(/home/gpadmin/data/mirror)
3.9 正式安装

切换到 gpadmin 用户

cd /home/gpadmin
gpinitsystem -c gpconfigs/gpinitsystem_config -h conf/hostfile_gpinitsystem


如果严格安装我上边的步骤,应该是不会有太大问题的。如果有问题可以参考下边的解决方案。

3.10 补充:可能会出现的问题 3.10.1 Found indication of postmaster process on port 5432 on Master host script Exiting

解决方法:

lsof -i:5432


然后kill掉这些任务并执行几个删除命令

kill -9 上述PID
rm -rf /tmp/.s.PGSQL.5432.lock
rm -rf /tmp/.s.PGSQL.5432

这个问题就完美解决了 或者在失败之后

3.10.2 Start Function UPDATE_GPConFIG psql: FATAL: no pg_hba.conf entry for host “[local]”, user “testDB”, database “template1”, SSL off

Failed to complete obtain psql count Master gp_segment_co
nfiguration script Exiting!

有不少人遇到过这个问题,是因为参考别人的安装配置有问题,修改一下环境变量即可
可以参考我上边的步骤3.5,PGUSER这里写创建的gpadmin用户。别写成testDB,误导一片人。。。

vim /home/gpadmin/.bash_profile 

4 配置GP外部链接 4.1 进入命令行模式
psql -d postgres

4.2 设置gpadmin账户的密码
alter role gpadmin with password 'gpadmin';
4.3 修改配置文件 pg_hba.conf
vim /home/gpadmin/data/master/gpseg-1/pg_hba.conf

增加一行

host     all         all     192.168.251.0/24   trust


重载一下

pg_ctl reload -D /home/gpadmin/data/master/gpseg-1
4.4 使用dbeaver访问

END
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/308951.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号