greenplum 安装教程


1、安装步骤

准备

  1. github地址:https://gp-docs-cn.github.io/docs/
  2. 下载地址:

安装

第一步:修改host文件,全部节点机器都要修改

vi /etc/hostslinux

172.17.13.160 v1 gpmaster
172.17.13.161 v2 gpsegment1
172.17.13.162 v3 gpsegment2

第二步:建立用户和用户组(全部机器都要修改)

 建立用户组命令:groupadd -g 530 gpadmin 
 建立用户命令:useradd -g 530 -u530 -m -d /home/gpadmin -s /bin/bash gpadmin 
 修改密码命令:passwd gpadmin

第三步:修改系统内核(全部机器都要修改)

vi /etc/sysctl.confgit

kernel.shmmax = 500000000
kernel.shmmni = 4096
kernel.shmall = 4000000000
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.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

立马生效sysctl -pgithub

第四步:修改文件打开限制: (每台机子都要修改)

vi /etc/security/limits.conf数据库

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

第五步:关闭防火墙:(每台机子都要修改)

启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld 
开机禁用  : systemctl disable firewalld
开机启用  : systemctl enable firewalld

第六步:关闭SELINUX (每台机子都要修改)

vi /etc/selinux/configbash

SELINUX=disabled

第七步:设置时区 (每台机子都要修改)

timedatectl set-timezone Asia/Shanghai

第八步:建立安装文件目录(每台机子都要修改)

mkdir /opt/greenplum
chown -R gpadmin:gpadmin /opt/greenplum

第九步:上传安装包到master(master上执行)


第10步:在master上安装greenplum(master上执行,用root用户装)

赋权命令:   chmod +x greenplum-db-5.11.3-rhel7-x86_64.bin
执行安装命令: ./greenplum-db-5.11.3-rhel7-x86_64.bin
安装过程当中修改安装目录:/opt/greenplum/greenplum-db
安装成功后:安装目录的权限修改成gpadmin  命令以下:
命令: chown -R gpadmin:gpadmin /opt/greenplum

成功截图以下

第11步:建立配置文件(master上执行,用gpadmin用户)

vi ./conf/hostlist(新增文件)    (在这个目录/opt/greenplum/conf,须要建立conf文件夹)

gpmaster
gpsegment1
gpsegment2

 vi ./conf/seg_hosts(新增文件)

gpsegment1
gpsegment2

第12步:打通全部节点 (master上执行,用gpadmin用户,注意:此步骤若是打通失败,须要重启机器后再执行下面命令)

source /opt/greenplum/greenplum-db/greenplum_path.sh
gpssh-exkeys -f /opt/greenplum/conf/hostlist   (注意当前路径)

显示   [INFO] completed successfully  即打通成功输入图片说明服务器

测试节点是否打通成功cookie

gpssh -f /opt/greenplum/conf/hostlist
pwd

成功截图以下:ssh

输入图片说明

第13步:将安装包分发到每一个子节点(master上执行,用gpadmin用户)

cd /opt/greenplum
tar -cf gp.tar greenplum-db/
gpscp -f /opt/greenplum/conf/hostlist gp.tar =:/opt/greenplum/   (复制到每台机器命令) 

批量复制成功后去segment系统查看文件是否存在 ,若是存在执行如下命令解压

 gpssh -f /opt/greenplum/conf/hostlist
     => cd /opt/greenplum
     => tar -xf gp.tar
     => ll (能够查看是否安装成功)
     => exit
到此全部节点安装完成

成功截图以下输入图片说明tcp

第14步:初始化数据库(master上执行,用gpadmin用户)

批量建立greenplum数据存放目录  如:/home/gpadmin/gpdata/gpmasteride

 命令:  gpssh -f  /opt/greenplum/conf/hostlist
    => cd /home/gpadmin
    => mkdir gpdata
    => cd gpdata
    => mkdir gpmaster gpdatap1 gpdatap2 gpdatam1 gpdatam2 
    => ll
    => exit

成功截图以下输入图片说明

第15步: 配置.bash_profile环境变量(每台机器都须要修改)

vi /home/gpadmin/.bash_profile

 新增如下内容:
source /opt/greenplum/greenplum-db/greenplum_path.sh
export MASTER_DATA_DIRECTORY=/home/gpadmin/gpdata/gpmaster/gpseg-1
export PGPORT=5432

立马生效

source /home/gpadmin/.bash_profile

第16步: 初始化配置文件(master上执行,用gpadmin用户)

vi  /opt/greenplum/conf/gpinitsystem_config

ARRAY_NAME="Greenplum"
SEG_PREFIX=gpseg
PORT_BASE=33000
declare -a DATA_DIRECTORY=(/home/gpadmin/gpdata/gpdatap1 /home/gpadmin/gpdata/gpdatap2)
MASTER_HOSTNAME=gpmaster
MASTER_DIRECTORY=/home/gpadmin/gpdata/gpmaster
MASTER_PORT=5432
TRUSTED_SHELL=/usr/bin/ssh
MIRROR_PORT_BASE=43000
REPLICATION_PORT_BASE=34000
MIRROR_REPLICATION_PORT_BASE=44000
declare -a MIRROR_DATA_DIRECTORY=(/home/gpadmin/gpdata/gpdatam1 /home/gpadmin/gpdata/gpdatam2)
MACHINE_LIST_FILE=/opt/greenplum/conf/seg_hosts

第17步: 初始化数据库(master上执行,用gpadmin用户)

批量初始化命令

gpinitsystem -c /opt/greenplum/conf/gpinitsystem_config -h /opt/greenplum/conf/hostlist

单库初始化命令

gpinitsystem -c /opt/greenplum/conf/gpinitsystem_config -s gpmaster

第18步: 设置访问白名单(master上执行,用gpadmin用户)

vi /home/gpadmin/gpdata/gpmaster/gpseg-1/pg_hba.conf

# TYPE  DATABASE        USER            ADDRESS                 METHOD
 host    all            all             10.10.56.17/24             trust

修改配置生效 (master上执行,用gpadmin用户) gpstop -u

经常使用命令

中止数据库  gpstop -M fast -a 启动数据库  gpstart -m

备注

1. 须要安装命令ifconfig、netstat

二、 常见问题处理

2.1维护问题

2.1.1  白名单pg_hba.conf文件配置错误,致使数据库没法重启。

  • 现象: 数据库启动,在这一句卡住了,不动。
20200413:11:13:08:006443 gpstart:gpmaster:gpadmin-[INFO]:-Starting Master instance in admin mode

2.1.1  gp某个seg启动失败

  • 现象:gp某个segment启动异常。 gpstate -m输入图片说明gpstate -m输入图片说明

  • 缘由:服务器宕机重启后,启动异常,经查看,硬盘存储不够,segment恢复失败

  • 解决:增长一部份内存,而后手动恢复seg 产生一个恢复文件:gprecoverseg -o ./recov 查看须要恢复的seg: cat recov 进行恢复: gprecoverseg -i ./recov 查看恢复状态: gpstate -m

2.1.2 备份恢复

 使用 gprecoverseg -F
  • 错误:输入图片说明
  • 提示 : perl: command not found *解决办法:

    yum -y install perl perl-devel 安装依赖便可 全部的服务器都要安装

  • 解决mirror和primary 互换的问题
    gprecoverseg -r
  • 报错:-gprecoverseg failed. (Reason='Some segments are not yet synchronized.  All segments must be synchronized to rebalance.') exiting...输入图片说明
  • 缘由 这时候节点正在恢复。须要等到恢复完成便可
相关文章
相关标签/搜索