1环境准备
1.1硬件配置
Master:
10.0.61.1
16C,64G,系统盘100G,数据盘1000G Centos 7.6 64位
Segment:
10.0.61.2
16C,64G,系统盘100G,数据盘1000G Centos 7.6 64位
Segment:
10.0.61.3
16C,64G,系统盘100G,数据盘1000G Centos 7.6 64位
GP版本:
greenplum-db-6.7.0-rhel7-x86_64.rpm
1.2关闭防火墙
在确定机器配置的时候,要保证所有机器的网络都是通的,并且每台机器的防火墙都是关闭的,避免存在网络不通的问题。
查看防火墙状态
sudo systemctl status firewalld
禁用防火墙
sudo systemctl disable firewalld
1.3关闭SElinux
修改 /etc/selinux/config 设置,使用sestatus检查是否关闭
sudo vim /etc/selinux/config
SELINUX=disabled
1.4禁用IPC
将logind.conf中RemoveIPC=no注释放开
sudo vim /etc/systemd/logind.conf
RemoveIPC=no
1.5禁用THP
自CentOS6版本开始引入了Transparent Huge Pages(THP),从CentOS7版本开始,该特性默认就会启用。
尽管THP的本意是为提升内存的性能,不过某些数据库厂商还是建议直接关闭THP(比如说ORACLE、MariaDB、MongoDB等),否则可能会导致性能出现下降。
首先检查THP的启用状态:
[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/defrag
[always] madvise never
[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never
这个状态就说明都是启用的。
我们这个时候当然可以逐个修改上述两文件,来禁用THP,但要想一劳永逸的令其永久生效,还是参考下列的步骤。
编辑rc.local文件:
[root@localhost ~]# vim /etc/rc.d/rc.local
增加下列内容:
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
保存退出,然后赋予rc.local文件执行权限:
[root@localhost ~]# chmod +x /etc/rc.d/rc.local
最后重启系统,以后再检查THP应该就是被禁用了
[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/defrag
always madvise [never]
1.6配置hosts
在配置/etc/hosts时,习惯将Master机器叫做mdw,将Segment机器叫做sdw,配置好后,使用ping命令确定所有hostname都是通的。
10.0.61.1 mdw
10.0.61.2 sdw1
10.0.61.3 sdw2
复制hosts至另外两个节点(需要接收服务器root密码)
scp /etc/hosts sdw1:/etc
scp /etc/hosts sdw2:/etc
修改每台主机的主机名
sudo hostname mdw
sudo vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=mdw
1.7修改内核
GP5.0 之后给出了部分计算公式,可以根据机器性能调整配置,这里我们就先使用官方推荐配置
sudo vim /etc/sysctl.conf
kernel.shmmax = 5000000000
kernel.shmmni = 4096
kernel.shmall = 400000000
kernel.sem = 250 512000 100 2048
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_tw_recycle = 1
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.conf.all.arp_filter = 1
net.ipv4.ip_local_port_range = 10000 65535
net.core.netdev_max_backlog = 10000
net.core.rmem_max = 2097152
net.core.wmem_max = 2097152
vm.overcommit_memory = 2
设置完成后 重载参数
sudo sysctl -p
1.8系统资源限制
sudo vim /etc/security/limits.conf
增加以下参