GreenPlum安装文档

点点滴滴,简单记录。第一次写,不足之处请多包涵

文档说明:

1.greenplum-db 5.10.2版本安装,网上有很多安装方法,本篇文档也是站在各位大牛肩膀上自己稍微整理了一下

2.文档不太美观,从word复制到简述编辑器上,格式无法完美移植。特此说明:加粗处为执行命令,斜体为配置内容

1 安装说明

名称                                         版本

操作系统                                 CentOS 6.5 64bit

greenplum                              greenplum-db-appliance-5.10.2-rhel6-x86_64.zip

文件系统                                 ext4

链接:https://pan.baidu.com/s/1M-Y_cVPjNMTTQhovddVoGg

提取码:zj58

1.2 集群说明

角色                            数量                   主机名            IP

Greenplum Master     1                       node0             192.168.1.228

Greenplum Standby   无                      无                    无

Greenplum Segment  4                     node1、node2、node3、node4   192.168.1.225、192.168.1.226、192.168.1.229、192.168.1.231

2 准备工作

2.1 Linux用户

各个节点需要配置免密登录

在所有节点上创建greenplum管理员用户。

groupadd -g 530 gpadmin

useradd -g 530 -u 530 -m -d /home/gpadmin -s /bin/bash gpadmin

chown -R gpadmin:gpadmin /home/gpadmin

echo "gpadmin" | passwd --stdin gpadmin

2.2 主机名和hosts配置

所有节点的/etc/hosts配置hostname并保持一致

2.3 防火墙

禁用防火墙;

vi /etc/selinux/config

SELINUX=disabled

service iptables stop

chkconfig iptables off

2.4 系统资源配置

vim /etc/sysctl.conf

kernel.shmmni = 4096

kernel.shmall = 40000000000

kernel.shmmax = 287194767360

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.tcp_tw_recycle = 1

net.ipv4.tcp_max_syn_backlog = 4096

net.ipv4.conf.defalut.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     ###测试环境要取消这个,否则oracle启不来 ### 值为1

使资源文件生效;

sysctl -p

进程数配置;

vim /etc/security/limits.d/90-nproc.conf

*          soft    nproc     131072

root       soft    nproc     unlimited

2.5 暂时启用gpadmin sudo

因为后面的集群节点上安装greenplum时会涉及到创建目录和文件操作,在此临时启用sudo,安装成功后撤销。

visudo

gpadmin    ALL=(ALL)       ALL

gpadmin    ALL=(ALL)       NOPASSWD:ALL

2.6 复制配置文件到所有节点上

scp /etc/hosts node1:/etc

scp /etc/sysctl.conf node1:/etc

scp /etc/security/limits.d/90-nproc.conf node1:/etc/security/limits.d

scp /etc/selinux/config node1:/etc/selinux

重启操作系统。

3 安装Greenplum DB

3.1 在Master节点上安装Greenplum DB

首先在master节点上安装,将greenplum-db-appliance-5.10.2-rhel6-x86_64.zip上传到/home/gpadmin目录下

5.10.2安装需要先初始化hostfile文件

cd /home/gpadmin

vim hostfile

node0

node1

node2

node3

node4

unzip greenplum-db-appliance-5.10.2-rhel6-x86_64.zip

./greenplum-db-appliance-5.10.2-rhel6-x86_64.bin


3.2 在Master节点上配置集群host

su - gpadmin

mkdir -p /usr/local/greenplum-db/conf

vim /usr/local/greenplum-db/conf/hostlist

node0

node1

node2

node3

node4

创建一个 seg_hosts ,包含所有的Segment

Host的主机名;

vim /usr/local/greenplum-db/conf/seg_hosts

node1

node2

node3

node4

3.3 配置SSH免密连接

source /usr/local/greenplum-db/greenplum_path.sh   #不设置报错Error: unable to import module: No module named gppylib.commands

/usr/local/greenplum-db/bin/gpssh-exkeys -f /usr/local/greenplum-db/conf/hostlist

测试ssh node1,不需要密码即可登录。

3.4 Segment节点上安装Greenplum DB

在Master节点上远程创建Segment节点所需的目录,并更改目录权限和所有者为gpadmin;

su - gpadmin

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

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/seg_hosts -e -v "sudo mkdir -p /usr/local/greenplum && sudo chown gpadmin:gpadmin -R /usr/local/greenplum"


创建数据存储区域目录;

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/hostlist -e 'mkdir -p /home/gpadmin/data'


在master上创建master数据存储区域;

/usr/local/greenplum-db/bin/gpssh -h node0 -e 'mkdir -p /home/gpadmin/data/master'

在Segment节点上创建数据存储区域

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/seg_hosts -e 'mkdir -p /home/gpadmin/data/primary && mkdir -p /home/gpadmin/data/mirror'

3.5 环境变量配置

gpssh -f /usr/local/greenplum-db/conf/hostlist -e -v "cat > /home/gpadmin/.bash_profile <

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

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

export GPPORT=5432

export PGDATABASE=gp_sydb

EOF"

3.6 NTP 配置

启用master节点上的ntp,并在Segment节点上配置和启用NTP;

su - root

echo "server node0 perfer" >>/etc/ntp.conf

su – gpadmin

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

source /home/gpadmin/.bash_profile

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/hostlist -v -e 'sudo ntpd'

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/hostlist -v -e 'sudo /etc/init.d/ntpd start && sudo chkconfig --level 35 ntpd on'

4 初始化Greenplum DB

4.1 初始化

初始化 Greenplum 配置文件模板都在/url/local/greenplum-db/docs/cli_help/gpconfigs目录下,gpinitsystem_config是初始化Greenplum 的模板,此模板中Mirror Segment的配置都被注释;创建一个副本,对其修改;

su – gpadmin

cd /usr/local/greenplum-db/docs/cli_help/gpconfigs

cp gpinitsystem_config initgp_config

vim initgp_config       

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

MASTER_HOSTNAME=node0

MASTER_DIRECTORY=/home/gpadmin/data/master

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

DATABASE_NAME=gp_sydb

MACHINE_LIST_FILE=/usr/local/greenplum-db/conf/seg_hosts

执行初始化;

gpinitsystem -c initgp_config -S

执行完后,用下面语句测试是否初始化成功

psql -d gp_sydb -c 'select a.dbid,a.content,a.role,a.port,a.hostname,b.fsname,c.fselocation from gp_segment_configuration a,pg_filespace b,pg_filespace_entry c where a.dbid=c.fsedbid and b.oid=c.fsefsoid order by content;'

若初始化失败,需要删除数据目录重新初始化;

4.2安装Oracle  兼容函数 可省略

psql -d gp_sydb -f /usr/local/greenplum-db/share/postgresql/contrib/orafunc.sql    

4.3安装thinkphp兼容函数 

跳过

5 附加项

5.1增加standby

在standby服务器上执行

mdir –p home/gpadmin/data/master

chown gpadmin:gpadmin home/gpadmin/data/master

在master服务器上执行

gpinitstandby -s standby 服务器的节点

5.2 增加mirror

su –gpadmin

gpaddmirrors -p 100


5.3增加节点

5.3.1准备工作

链接:https://pan.baidu.com/s/1kR3Bil7eK8IxNyAlqIX9nA

提取码:lvyp


参考2准备工作

新节点配置与主节点同步

5.3.2 修改配置文件

主节点执行

su - gpadmin

cd /usr/local/greenplum-db/conf

vim hostlist #将新增节点加到文件最后

node0

node1

node2

node3

node4

node5

vim host_expand #将新增节点加入到文件中

ndoe5

#主节点打包

cd /usr/local

tar -czvf GP-5.10.2.tar.gz GP-5.10.2/

#将压缩包传到新的服务器上

scp GP-5.10.2.tar.gz root@node5:/usr/local

#新节点登录

cd /usr/local

tar -zxvf GP-5.10.2.tar.gz

ln -fs GP-5.10.2 greenplum-db

chown -R gpadmin:gpadmin /usr/local/GP-5.10.2

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

5.3.3配置ssh免密登录

source /usr/local/greenplum-db/greenplum_path.sh   #不设置报错Error: unable to import module: No module named gppylib.commands

/usr/local/greenplum-db/bin/gpssh-exkeys -f /usr/local/greenplum-db/conf/hostlist

5.3.4创建gp目录

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/host_expand -e -v "sudo mkdir -p /usr/local/greenplum && sudo chown gpadmin:gpadmin -R /usr/local/greenplum"

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/host_expand -e 'mkdir -p /home/gpadmin/data'

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/host_expand -e 'mkdir -p /home/gpadmin/data/primary && mkdir -p /home/gpadmin/data/mirror'

5.3.5 配置环境变量

gpssh -f /usr/local/greenplum-db/conf/host_expand -e -v "cat > /home/gpadmin/.bash_profile <

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

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

export GPPORT=5432

export PGDATABASE=gp_sydb

EOF"

5.3.6NTP配置

su – gpadmin

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

source /home/gpadmin/.bash_profile

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/hostlist -v -e 'sudo ntpd'

/usr/local/greenplum-db/bin/gpssh -f /usr/local/greenplum-db/conf/hostlist -v -e 'sudo /etc/init.d/ntpd start && sudo chkconfig --level 35 ntpd on'

5.3.7初始化新扩展

#主节点执行

su - gpadmin

source /home/gpadmin/.bash_profile

gpexpand -f /usr/local/greenplum-db/conf/host_expand

gpexpand -i gpexpand_inputfile_xx -D idap3

6 gpfdist

主节点执行

mkdir -p /home/gpadmin/gpload/data

mkdir -p /home/gpadmin/gpload/yml

chown gpadmin:gpadmin /home/gpadmin/gpload/data

chown gpadmin:gpadmin /home/gpadmin/gpload/yml

su -gpadmin

gpfdist -d /home/gpadmin/gpload/data -p 54321 -l  /home/gpadmin/gpload/gpfdist.log &

7 远程登录

echo host all gpadmin 192.0.0.0/8 trust >> /home/gpadmin/data/master/gpseg-1/pg_hba.conf

su - gpadmin

gpconfig -c optimizer -v off 没有分区表优先使用该配置

gpconfig -c optimizer -v on 有分区表使用该配置

gpconfig -c shared_buffers -v 20GB

gpconfig -c effective_cache_size -v 64GB

gpconfig -c work_mem -v 6GB

gpconfig -c max_connections -v 1500 -m 1000

gpstop -a -r -M fast

8 卸载5.10.2

文件删除

主节点

rm -rf /home/gpadmin/data/master/*

rm -rf /home/gpadmin/data/mirror/*

rm -rf /home/gpadmin/data/primary/*

rm -rf /usr/local/GP-5.10.2

rm -rf /usr/local/greenplum-db

其他节点

rm -rf /home/gpadmin/data/mirror/*

rm -rf /home/gpadmin/data/primary/*

rm -rf /usr/local/GP-5.10.2

rm -rf /usr/local/greenplum-db

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,732评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,496评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,264评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,807评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,806评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,675评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,029评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,683评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,704评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,666评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,773评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,413评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,016评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,204评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,083评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,503评论 2 343

推荐阅读更多精彩内容