【大数据平台搭建】Greenplum 6.17 集群搭建

7 篇文章 0 订阅
6 篇文章 1 订阅

集群规划

HostIP功能
centos01192.168.52.221master
centos02192.168.52.222segment
centos03192.168.52.223segment

总共是三台机器组成的一个集群,不搭建 standby 节点

系统环境

名称说明
操作系统Centos7
GreenplumGreenplum 6.17
JavaJDK8
GCCGCC 4.8.5

修改系统文件

修改系统资源限制,/etc/security/limits.conf 文件添加以下信息:

* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072

修改系统内核信息,/etc/sysctl.conf 文件添加以下信息:

# kernel.shmall用以下命令计算 echo $(expr $(getconf _PHYS_PAGES) / 2)
kernel.shmall = 357475    
# kernel.shmmax用以下命令计算 echo $(expr $(getconf _PHYS_PAGES) / 2 \* $(getconf PAGE_SIZE))
kernel.shmmax = 1464217600         
kernel.shmmni = 4096
vm.overcommit_memory = 2
vm.overcommit_ratio = 95

kernel.sem = 500 2048000 200 4096
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 = 3
vm.dirty_ratio = 10

修改完毕后执行命令立即生效

sysctl -p

修改/etc/security/limits.d/下的 **-nproc.conf 文件为(该文件名称可能为20-nproc.conf 或 90-nproc.conf):

*          soft    nproc     131072

关闭 selinux,修改/etc/sysconfig/selinux:

SELINUX=disabled

设置 /etc/hosts 所有节点的映射、关闭防火墙等操作之前搭建hadoop、spark 集群时已经配置过,不在赘述

添加用户群组

此处步骤不可省略!!!因为后续初始化 greenplum 时无法使用 root 用户进行操作!!!

添加 gpadmin 用户群组并赋予相应权限

# 添加群组
groupadd -g 530 gpadmin
# 添加用户
useradd -g 530 -u 530 -m -d /home/gpadmin -s /bin/bash gpadmin
# 更改所有者
chown -R gpadmin:gpadmin /home/gpadmin
# 修改密码
passwd gpadmin

配置三台机器 gpadmin 用户的ssh免密登录,此处步骤不可省略!!!(详见 Centos 7 集群配置SSH免密登录)否则后续初始化 greenplum 时需要输入 n 次三台机器的 gpadmin 登录密码 (当初头铁懒得配置,结果反复输入三台机器的密码很累不说,最后,初始化中间批量创建gpseg时还出现了异常,无法进行)

安装Greenplum

切换 gpadmin 用户,创建配置文件夹:

su gpadmin 
mkdir -p /home/gpadmin/conf

创建 hostlist并编辑文件:

vim /home/gpadmin/conf/hostlist

centos01
centos02
centos03

创建 seg_hosts 文件,并编辑:

vim /home/gpadmin/conf/seg_hosts
 
centos02
centos03

三台机器分别都安装 greenplum 到指定目录,下载地址

rpm -ivh --prefix=/usr/local/services/greenplum/  open-source-greenplum-db-6.17.0-rhel7-x86_64.rpm

此步骤如果报错,一般是由于缺少所需的依赖导致,按照提示安装所需的依赖即可

# 像我的机器缺少apr、apr-util等,按照提示一一安装即可
yum install -y apr-util

切换为root用户,greenplum 配置免密连接

source /usr/local/services/greenplum/greenplum-db/greenplum_path.sh 
gpssh-exkeys -f /home/gpadmin/conf/hostlist

批量创建数据目录,并授权

# 免密连接,三台机器批量操作
gpssh -f /home/gpadmin/conf/hostlist

mkdir -p /opt/greenplum/data/master
mkdir -p /opt/greenplum/data/primary
mkdir -p /opt/greenplum/data/mirror
mkdir -p /opt/greenplum/data2/primary
mkdir -p /opt/greenplum/data2/mirror

# 对用户授权
chown -R gpadmin:gpadmin /usr/local
chown -R gpadmin:gpadmin /opt

配置 gpadmin 用户的环境变量

# 打开文件
vim /home/gpadmin/.bash_profile

# 添加的内容
source /usr/local/services/greenplum/greenplum-db/greenplum_path.sh
export MASTER_DATA_DIRECTORY=/opt/greenplum/data/master/gpseg-1
export GPPORT=5432
export PGDATABASE=gp_sydb

# 应用改变,立即生效
source .bash_profile

初始化数据库

新建一个初始化配置文件 initgp_config

cd /usr/local/services/greenplum/greenplum-db/docs/cli_help/gpconfigs
cp gpinitsystem_config initgp_config

修改配置文件 initgp_config:

declare -a DATA_DIRECTORY=(/opt/greenplum/data/primary /opt/greenplum/data/primary  /opt/greenplum/data2/primary /opt/greenplum/data2/primary)
declare -a MIRROR_DATA_DIRECTORY=(/opt/greenplum/data/mirror /opt/greenplum/data/mirror  /opt/greenplum/data2/mirror /opt/greenplum/data2/mirror)
 
ARRAY_NAME=”gp_sydb”                                           #初始化数据库名称
MASTER_HOSTNAME=centos01                                       #主节点名称
MASTER_DIRECTORY=/opt/greenplum/data/master                    #资源目录为之前创建的资源目录
MASTER_DATA_DIRECTORY=/opt/greenplum/data/master/gpseg-1       
DATABASE_NAME=gp_sydb                                          #配置的初始化数据库名称
MACHINE_LIST_FILE=/home/gpadmin/conf/seg_hosts                 

切换 gpadmin 用户,执行初始化(必须使用之前创建的用户操作,不能在root用户下操作)

source /usr/local/services/greenplum/greenplum-db/greenplum_path.sh
gpinitsystem -c initgp_config -D

此步骤如果出错的话,需要将初始化生成的 gpseg 文件全部删除,重新开始初始化(/opt/greenplum/data/ /opt/greenplum/data2内primary、master内的创建的 gpseg-1等),具体的错误信息可以在 /home/gpadmin/gpAdminLogs 内的日志查看

Greenplum连接外部客户端时报错的处理

报错信息:no pg_hba.conf entry for host

修改主节点下的 /opt/greenplum/data/master/gpseg-1/pg_hba.conf 配置文件即可

# 添加一行内容,表示允许任何用户连接
host   all   all   0.0.0.0/0    trust

数据库操作

命令意义
gpstart启动数据库
gpstop -r重启
gpstop -u仅重新载入配置文件的更改
gpstop停止数据库
psql -d gp_sydb登录 gp_sydb 数据库
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值