GreenPlum安装

前提

局域网已配置ip、ntp时间同步、yum源

环境

IP

主机名

作用

管理IP

62.65.168.42

node42

master

62.65.168.25

62.65.168.43

node43

standby

62.65.168.26

62.65.168.44

node44

segment

62.65.168.27

62.65.168.45

node45

segment

62.65.168.28

62.65.168.46

node46

segment

62.65.168.29

62.65.168.47

node47

segment

62.65.168.30

搭建步骤

没有明确说的是,要在每台机器都执行

修改hostname

echo "node42" > /etc/hostname

echo "node43" > /etc/hostname

echo "node44" > /etc/hostname

echo "node45" > /etc/hostname

echo "node46" > /etc/hostname

echo "node47" > /etc/hostname

禁用selinux

sed -i "s#^SELINUX.*#SELINUX=disabled#g"  /etc2/selinux/config

修改内核参数

cat <<EOF >> /etc/sysctl.conf

kernel.shmmax = 5000000000000

kernel.shmmni = 32768

kernel.shmall = 40000000000

kernel.sem = 2000 4096000 2000 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.ip_forward = 0

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 = 1025 65535

net.core.netdev_max_backlog = 10000

net.core.rmem_max = 2097152

net.core.wmem_max = 2097152

vm.overcommit_memory = 2

vm.overcommit_ratio=95

vm.dirty_background_ratio = 0

vm.dirty_ratio = 0

vm.dirty_background_bytes = 1610612736

vm.dirty_bytes = 4294967296

EOF

sysctl -p

修改/etc/hosts

cat <<EOF >> /etc/hosts

62.65.168.42 node42

62.65.168.43 node43

62.65.168.44 node44

62.65.168.45 node45

62.65.168.46 node46

62.65.168.47 node47

EOF

加入服务logind

echo "RemoveIPC=no" >> /etc/systemd/logind.conf

service systemd-logind restart

关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

设置network

cat <<EOF >> /etc/sysconfig/network

networking=yes

hostname=node42

EOF

 

cat <<EOF >> /etc/sysconfig/network

networking=yes

hostname=node43

EOF

 

cat <<EOF >> /etc/sysconfig/network

networking=yes

hostname=node44

EOF

 

cat <<EOF >> /etc/sysconfig/network

networking=yes

hostname=node45

EOF

 

cat <<EOF >> /etc/sysconfig/network

networking=yes

hostname=node46

EOF

 

cat <<EOF >> /etc/sysconfig/network

networking=yes

hostname=node47

EOF

修改打开文件限制

cat <<EOF >> /etc/security/limits.conf

* soft nofile 524288

* hard nofile 524288

* soft nproc 131072

* hard nproc 131072

EOF

修改ssh连接数

cat <<EOF >> /etc/ssh/sshd_config

MaxStartups 200

MaxSessions 200

EOF

修改磁盘读取块大小

grubby --update-kernel=ALL --args="elevator=deadline"

grubby --update-kernel=ALL --args="transparent_hugepage=never"

 

根据具体设备设置42机械磁盘为sdb 其余5台机械磁盘为sda,通过fdisk -l确定机械磁盘

42 机械磁盘为sdb  

echo deadline > /sys/block/sdb/queue/scheduler

echo /sbin/blockdev --setra 16384 /dev/sdb  >> /etc/rc.d/rc.local

43----47 机械磁盘为sda  

echo deadline > /sys/block/sda/queue/scheduler

echo /sbin/blockdev --setra 16384 /dev/sda  >> /etc/rc.d/rc.local

设置/etc/rc.d/rc.local执行权限

 /etc/rc.local是/etc/rc.d/rc.local的快捷方式,均需要有x权限即执行权限

chmod +x /etc/rc.d/rc.local

chmod +x /etc/rc.local

 

重启

reboot

创建用户

useradd gpadmin

修改密码

passwd gpadmin

密码修改为gpadmin  和用户名一样

集群ssh免密

生成秘钥

ssh-keygen -t rsa

配置免密

sh-copy-id gpadmin@node42

ssh-copy-id gpadmin@node43

ssh-copy-id gpadmin@node44

ssh-copy-id gpadmin@node45

ssh-copy-id gpadmin@node46

ssh-copy-id gpadmin@node47

上传文件到主节点

root 用户操作

将greenplum-db-6.13.0-rhel7-x86_64.rpm上传到node42上

复制安装包到集群所有机器

root 用户操作

 scp greenplum-db-6.13.0-rhel7-x86_64.rpm root@node43:/root/

 scp greenplum-db-6.13.0-rhel7-x86_64.rpm root@node44:/root/

 scp greenplum-db-6.13.0-rhel7-x86_64.rpm root@node45:/root/

 scp greenplum-db-6.13.0-rhel7-x86_64.rpm root@node46:/root/

 scp greenplum-db-6.13.0-rhel7-x86_64.rpm root@node47:/root/

 

安装greenplum

root 用户操作

yum install -y greenplum-db-6.13.0-rhel7-x86_64.rpm

赋权

chown -R gpadmin:gpadmin /usr/local/greenplum*

环境变量配置

gpadmin用户操作

cat <<EOF >> /home/gpadmin/.bashrc

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

export PGPORT=5432

export PGUSER=gpadmin

export MASTER_DATA_DIRECTORY=/home/gpadmin/data/master/gpseg-1

export PGDATABASE=gp_sydb

export LD_PRELOAD=/lib64/libz.so.1 ps

EOF

source /home/gpadmin/.bashrc

创建所有主机文件

gpadmin用户操作

只在master节点操作

cat <<EOF >> /home/gpadmin/hostfile_exkeys

node42

node43

node44

node45

node46

node47

EOF

创建数据节点主机文件

gpadmin用户操作

只在master节点操作

该文件少了master节点:node42,和备用节点node43

cat <<EOF >> /home/gpadmin/hostfile_segonly

node44

node45

node46

node47

EOF

gpssh-exkeys交换ssh

gpadmin用户操作

只在master节点操作

gpssh-exkeys -f /home/gpadmin/hostfile_exkeys

创建数据文件夹

gpadmin用户操作

只在master节点操作

gpssh -f /home/gpadmin/hostfile_exkeys

mkdir data

cd data

mkdir master

mkdir primary

mkdir mirror

该步骤之后每台主机下都会创建 data目录,data目录下都会创建master、primary、mirror文件夹

连通性检查

gpadmin用户操作

只在master节点操作

 

gpcheckperf -f /home/gpadmin/hostfile_exkeys -r N -d /tmp

检查一下是不是万兆带宽

数据库初始化文件

gpadmin用户操作

只在master节点操作

复制初始化文件

 

cp /usr/local/greenplum-db/docs/cli_help/gpconfigs/gpinitsystem_config /home/gpadmin/gpinitsystem_config

修改初始化文件

gpadmin用户操作

只在master节点操作

 

declare -a DATA_DIRECTORY=(/home/gpadmin/data/primary /home/gpadmin/data/primary )

该项配置设置主节点数据存储位置,括号里边有几个代表每台主机创建几个postgresql数据库实例,即segment的实例数,上边示例是2个。

雪亮工程里边配置了10个目录,所以每台机器有10个节点。因为雪亮机器是20核,推荐2核配一个节点,所以配了10个。

 

MASTER_HOSTNAME=node42

该项配置设置主节点机器名字

 

MASTER_DIRECTORY=/home/gpadmin/data/master

该项配置设置主节点数据存储位置

 

declare -a MIRROR_DATA_DIRECTORY=(/home/gpadmin/data/primary /home/gpadmin/data/primary)

该项配置设置是备节点数据存储位置,规则同DATA_DIRECTORY,括号里边数量和DATA_DIRECTORY保持一致。

greenplum数据分主节点和备节点,主节点挂掉时候备节点数据会启用。

 

DATABASE_NAME=gp_sydb

该项配置设置默认数据库名字,和环境变量数据库名字保持一致,不然会失败。

 

MACHINE_LIST_FILE=/home/gpadmin/hostfile_segonly

该项配置数据节点的主机列表文件位置

初始化数据库

gpadmin用户操作

只在master节点操作

gpinitsystem -c gpinitsystem_config -s node43

-s node43代表备用主节点是node43机器

设置远程登录

echo "host all gpadmin 0.0.0.0/0 md5">> /home/gpadmin/data/master/gpseg-1/pg_hba.conf

gpstop -u

gpstop -u 意思是重新加载数据库配置

登录验证

psql

只要出现以上信息,代表集群安装成功

设置管理员密码

alter user gpadmin with password 'gpadmin';

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大数据开发工程师-宋权

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值