Greenplum集群部署小结( 二 )


Greenplum集群部署小结
文章图片
2)GP的容量规划 , 这一次经过讨论是选择了折中的配置 , 即(6+6)*10+2 , 具体解释就是一共12台服务器 , 其中有10台服务器是Segment节点 , 每台上面部署了6个Primary,6个Mirror , 另外2台部署了Master和Standby
3)内核参数的配置和调整
除了基础的kernel.shmmax和kernel.shmall配置之外 , 还有如下的一些配置需要调整:
vm.swappiness=10
vm.zone_reclaim_mode=0
vm.dirty_expire_centisecs=500
vm.dirty_writeback_centisecs=100
vm.dirty_background_ratio=0#SeeSystemMemory
vm.dirty_ratio=0
vm.dirty_background_bytes=1610612736
vm.dirty_bytes=4294967296
vm.min_free_kbytes=3943084
vm.overcommit_memory=2
kernel.sem=50020480002004096
集群部署的大体流程:
1)首先是配置/etc/hosts , 需要把所有节点的IP和主机名都整理出来 。
2)配置用户 , 很常规的步骤
groupaddgpadmin
useraddgpadmin-ggpadmin
passwdgpadmin
3)配置sysctl.conf和资源配置
4)使用rpm模式安装
yuminstall-yaprapr-utilbzip2krb5-develzip
#rpm-ivhopen-source-greenplum-db-6.16.2-rhel7-x86_64.rpm
Preparing...#################################[100%]
Updating/installing...
1:open-source-greenplum-db-6-6.16.2#################################[100%]
5)配置两个host文件 , 也是为了后面进行统一部署方便 , 在此建议先开启gpadmin的sudo权限 , 可以通过gpssh处理一些较为复杂的批量操作
6)通过gpssh-exkeys来打通ssh信任关系 , 这里需要吐槽这个ssh互信 , 端口还得是22 , 否则处理起来很麻烦
gpssh-exkeys-fhostlist
7)较为复杂的一步是打包master的Greenplum-db-6.16.2软件 , 然后分发到各个segment机器中 , 整个过程涉及文件打包 , 批量传输和配置 , 可以借助gpscp和gpssh , 比如gpscp传输文件 , 如下的命令会传输到/tmp目录下
gpscp-f/usr/local/greenplum-db/conf/hostlist/tmp/greenplum-db-6.16.2.tar.gz=:/tmp
8)Master节点需要单独配置相关的目录 , 而Segment节点的目录可以提前规划好 , 比如我们把Primary和Mirror放在不同的分区 。
mkdir-p/data1/gpdata/gpdatap1
mkdir-p/data1/gpdata/gpdatap2
mkdir-p/data2/gpdata/gpdatam1
mkdir-p/data2/gpdata/gpdatam2
9)整个过程里最关键的就是gpinitsystem_config配置了 , 因为Segment节点的ID配置和命名 , 端口区间都是根据一定的规则来动态生成的 , 所以对于目录的配置需要额外注意 。
10)部署GP集群最关键的命令是
gpinitsystem-cgpinitsystem_config-s【standby_hostname】
整个过程大约5分钟~10分钟以内会完成 。
在此也走了不少弯路 , 比如一些配置不完整 , 防火墙权限不够 , 导致部署的时候界面卡在那里 ,
比如其中一个问题 , /etc/hosts配置不全导致Primary可以启动 , 但是Mirror无法启动 , 问题看起来很奇怪 , 而且从GP的日志里面的信息也很简略 , 如果难以定位 , 还可以直接到相应的Segment节点上查看相应的日志 , 查看日志是个技术活 , 如果出现卡顿 , 不要干等着 , 得看看后端到底在哪个环节卡住了 , 需要同步查看日志的刷新来进行问题的定位和修正 , 在这方面GP的一些安装体验还是比较粗糙的 。
Greenplum集群部署小结】安装部署这件事 , 就像一个无形的门槛 , 只要自己做过一次 , 相信这些步骤都很简单 , 反之就像一座绕不开的大山 , 始终绕不过去 , 对于安装部署 , 最全面的文档还是官方文档 。