1. 概述

本文档仅限于指导Greenplum 4.3.7.3(对应安装包greenplum-db-4.3.7.3-build-2-RHEL5-x86_64.bin)版本在CentOS6.5 系统进行集群式安装指导。其他greenplum版本和centos系统不保证可以顺利安装完成。

本例集群为3台服务器,包括1个master节点,2个数据节点,每个数据节点设置1个segment和1个mirror

服务器ip

服务器名称

用途

192.168.21.1

mdw

Master节点

192.168.21.2

sdw1

数据节点

192.168.21.3

sdw2

数据节点

注:本文中的主机ip和服务器名称为举例说明,安装请以情况操作

2. 系统参数调整

2.1 以root用户登录,修改所有集群服务器(master和所有node)OS参数。

关闭防火墙

#service iptables stop

#chkconfig iptables off

打开 /etc/selinux/config 设置

SELINUX=disabled

在/etc/sysctl.conf文件中修改一下参数后重启或者以sysctl –p 命令是参数生效(注意备份原配置文件):

kernel.shmmax = 500000000

kernel.shmmni = 4096

kernel.shmall = 4000000000

kernel.sem = 250 5120000 100 2048

#SEMMSL SEMMNS SEMOPM SEMMNI

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.default.rp_filter = 1

net.ipv4.conf.default.arp_filter = 1

net.ipv4.conf.all.arp_filter = 1

net.ipv4.ip_local_port_range = 1025 65535

net.core.netdev_max_backlog = 10000

vm.overcommit_memory = 2

打开/etc/security/limits.conf 在文件的末尾追加如下内容:

* soft nofile 65536

* hard nofile 65536

* soft nproc 131072

* hard nproc 131072

* soft core unlimited

root用户登录,在所有集群服务器(master和所有node)上创建用户及用户组

#groupadd gpadmin

#useradd -g gpadmin gpadmin

#passwd gpadmin

#New password: <输入想要的密码回车>

#Retype new password: <再次输入想要的密码回车>

注意设置每台的密码

3. 数据库安装

 root用户登录在所有集群服务器进行解压安装

#unzip greenplum-db-4.3.7.3-build-2-RHEL5-x86_64.zip

#./greenplum-db-4.3.7.3-build-2-RHEL5-x86_64.bin

默认路径是/usr/local,需要输入[yes|no]的地方一律输入yes 回车

最终会看到“Installation complete”的字样, Greenplum数据库已经安装到/usr/local/greenplum-db下了。

Greenplum的环境变量已经在greenplum_path.sh中设置了,我们须要source一下

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

主结点和从结点的全部执行完前三步后开始执行第四步

4. 初始化集群

以root用户登录所有集群服务器改变greenplum安转目录的owner为gpadmin:

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

#chgrp –R  gpadmin  /usr/local/greenplum-db

以root用户登录master服务器编辑 /etc/hosts文件追加如下内容:(ip地址和服务器名以实际为准)

192.168.21.1       mdw

192.168.21.2       sdw1

192.168.21.3       sdw2

切换成gpadmin用户在master服务器,创建包含所有主机名的文件 /home/gpadmin/all_hosts内容如下:

mdw

sdw1

sdw2

以gpadmin用户在master服务器创建含segment 主机名的文件 /home/gpadmin/seg_hosts内容如下:

sdw1

sdw2

以gpadmin用户在master服务器和所有主机建立信任关系

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

$ gpssh-exkeys -f /home/gpadmin/all_hosts

如果这一步提示密码错误,则需要进行下面的配置,在/etc/ssh /sshd_config

文件下追加下面内容,所有的GP结点都小设置。

KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1

如果使用上述方法还是提示密码错误:可以通过,在gpadmin用户下执行ssh-keygen命令来生成密钥对,然后将公钥拷贝到所有节点的认真文件。注意:所有的服务器都到做这个操作。

以gpadmin用户在master服务器通过gpssh命令创建master和segment主机上的数据存放目录

$cd /home/gpadmin

$ gpssh -f all_hosts

Note: command history unsupported on this machine ...

=>

输入pwd回车应该可以看到3台服务器的当前目录,说明通道建立成功,可以同步操作了。

=> pwd

[sdw2] /home/gpadmin

[sdw1] /home/gpadmin

[ mdw] /home/gpadmin

分别创建master目录、primary节点目录、mirror节点目录,此处创建的目录用于存储数据库数据,需根据实际情况指定创建目录的位置。

=> mkdir -p /ids/gpadmin/masterdata

=> mkdir -p /ids/gpadmin/segmentdata

=> mkdir -p /ids/gpadmin/segdatamirror

注意:以上存储gp数据的目录以实际情况为准。

mkdir: cannot create directory `/ids/gpadmin': Permission denied

mkdir gpadmin

chown gpadmin:gpadmin gpadmin

=> mkdir  /ids/gpadmin/masterdata

=> mkdir  /ids/gpadmin/segmentdata

=> mkdir  /ids/gpadmin/segdatamirror

ctrl+d 退出

exit 退出

以gpadmin用户在master服务器同步时钟

gpssh -f /home/gpadmin/all_hosts  -v  ntpd

以gpadmin用户在master服务器将MASTER_DATA_DIRECTORY加入环境中,修改gpadmin用户的.bash_profile:

打开文件/home/gpadmin/.bash_profile在最后追加如下内容:

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

MASTER_DATA_DIRECTORY=/ids/gpadmin/masterdata/gpseg-1

export MASTER_DATA_DIRECTORY

export PGPORT=5432

export PGDATABASE=postgres

注意:MASTER_DATA_DIRECTORY目录请以实际情况为准

执行如下命令:   source  /home/gpadmin/.bash_profile

以gpadmin用户在master服务器创建/home/gpadmin/gpinitsystem_config文件,并追加如下内容:

ARRAY_NAME="EMC Greenplum DW"

SEG_PREFIX=gpseg

PORT_BASE=33000

declare -a DATA_DIRECTORY=(/ids/gpadmin/segmentdata  /ids/gpadmin/segmentdata)

MASTER_HOSTNAME=gp-22

MASTER_DIRECTORY=/ids/gpadmin/masterdata

MASTER_PORT=5432

MACHINE_LIST_FILE=/home/gpadmin/seg_hosts

TRUSTED_SHELL=ssh

CHECK_POINT_SEGMENTS=8

ENCODING=UNICODE

MIRROR_PORT_BASE=43000

REPLICATION_PORT_BASE=34000

MIRROR_REPLICATION_PORT_BASE=44000

declare -a MIRROR_DATA_DIRECTORY=(/ids/gpadmin/segdatamirror /ids/gpadmin/segdatamirror)

注意:DATA_DIRECTORY,MIRROR_DATA_DIRECTORY,MASTER_DIRECTORY 请以实际为准

以gpadmin用户在master服务器运行配置文件初始化greenplum数据库:

$gpinitsystem -c /home/gpadmin/gpinitsystem_config

这个初始化过程中,会提示:Continue with Greenplum creation Yy/Nn输入Y 或者y

初始化成功后,Greenplum会自动启动,可以这么查看进程

$ps -e|grep postgres

如果有进程则说明启动成功,同理可去其他数据节点服务器使用该命名查看是否节点启动成功能工。

至此greenplum的集群已经安装成功且启动完成。

如果失败,去他指定的log查看日志

gpcheck -f /home/gpadmin/all_hosts -m gp-23

登录数据库

$psql postgres

设置密码

修改数据库管理员密码

postgres=# alter role gpadmin with password 'XXXXX';

修改任意远程客户端可登录gp数据库:

vi /ids/gpadmin/masterdata/gpseg-1/pg_hba.conf

在文件的最后追加如下内容保存并关闭

host     all      all   0.0.0.0/0  md5

vi /ids/gpadmin/masterdata/gpseg-1/postgres.conf

去掉#listen_addresses = '*' 前面的 #  保存退出

执行命令使配置生效

pg_ctl reload -D /ids/gpadmin/masterdata/gpseg-1/

创建个简单用户:

create role cloud password ‘cloud’;

赋值管理员权限给cloud用户

grant gpadmin to cloud;

注意:/home/gpadmin/masterdata目录根据安装实际目录路径决定

greenplum安装错误搜集:

1 在进行指定配置文件初始化时报错,查看日志文件信息为向节点插入端口=40000时不成功

解决办法:greenplum数据库是适用ed编辑器来进行文件编辑的。所以需要在linux系统上安装好ed编辑器。安装办法yum -y install ed

其他greenplum 管理方面的命令请自行寻找相关手册或文档学习。

Greenplum(4.3.73)集群安装手册的更多相关文章

  1. Greenplum 5.21.1 集群安装部署

    简单来说GPDB是一个分布式数据库软件,其可以管理和处理分布在多个不同主机上的海量数据.对于GPDB来说,一个DB实例实际上是由多个独立的PostgreSQL实例组成的,它们分布在不同的物理主机上,协 ...

  2. 『GreenPlum系列』GreenPlum 4节点集群安装(图文教程)

      目标架构如上图   一.硬件评估 cpu主频,核数推荐CPU核数与磁盘数的比例在12:12以上Instance上执行时只能利用一个CPU核资源进行计算,推荐高主频 内存容量 网络带宽重分布操作 R ...

  3. 【Oracle 集群】Oracle 11G RAC教程之集群安装(七)

    Oracle 11G RAC集群安装(七) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总. ...

  4. kafka2.9.2的伪分布式集群安装和demo(java api)测试

    目录: 一.什么是kafka? 二.kafka的官方网站在哪里? 三.在哪里下载?需要哪些组件的支持? 四.如何安装? 五.FAQ 六.扩展阅读   一.什么是kafka? kafka是LinkedI ...

  5. Ubuntu_10.04下Hadoop-0.20.2集群配置手册

    Ubuntu_10.04下Hadoop-0.20.2集群配置手册 一.软硬件环境的准备 下面的文章来自hadoopor.com,我先交待一下我自己的环境: 两台机器,每台机器上面两个虚机(vmware ...

  6. Nginx+Tomcat+MemCached 集群配置手册

    系统实施文档 Nginx+Tomcat+MemCached 集群配置手册 目    录 第1章   概述 1.1   目标 互联网的快速发展带来了互联网系统的高负载和高可用性, 这要求我们在设计系统架 ...

  7. zookeeper 介绍与集群安装

    zookeeper 介绍 ZooKeeper是一个分布式开源框架,提供了协调分布式应用的基本服务,它向外部应用暴露一组通用服务——分布式同步(Distributed Synchronization). ...

  8. Kibana安装(图文详解)(多节点的ELK集群安装在一个节点就好)

    对于Kibana ,我们知道,是Elasticsearch/Logstash/Kibana的必不可少成员. 前提: Elasticsearch-2.4.3的下载(图文详解) Elasticsearch ...

  9. Mdrill集群安装

    Mdrill集群安装 mdrill是阿里妈妈-adhoc-海量数据多维自助即席查询平台下的一个子项目.旨在帮助用户在几秒到几十秒的时间内,分析百亿级别的任意维度组合的数据.mdrill是一个分布式的在 ...

随机推荐

  1. _quest_random

    -- 随机任务-- 可以实现玩家随机获取任务-- 小技巧:需要控制物品法防,在_function_menu表配置物品indexID为28 `comment`备注 `questId`任务ID `chan ...

  2. BZOJ 2423 (求LCS的长度和种类数)

    Description 字符序列的子序列是指从给定字符序列中随意地(不一定连续)去掉若干个字符(可能一个也不去掉)后所形成的字符序列.令给定的字符序列X=“x0,x1,…,xm-1”,序列Y=“y0, ...

  3. 算法笔记--极大极小搜索及alpha-beta剪枝

    参考1:https://www.zhihu.com/question/27221568 参考2:https://blog.csdn.net/hzk_cpp/article/details/792757 ...

  4. vue form表单验证

    <el-select v-model="ruleForm.region" placeholder="请选择活动区域"> <el-option ...

  5. (14)线程- Event事件和守护线程Daemon

    <一>Event事件 线程Event基本和进程的Event语法是一样的 # wait() 动态给程序加阻塞 # set() 将内部属性改成True # clear() 将内部属性改成Fal ...

  6. ES6 新加的类型Symbol()

    Symbol()如果一个对象中的键已经存在,但目前我们目前不知道这个键是存在的,然后我们去给这个键赋值,Symbol()就不会改变这个键对应的值

  7. restore not found的错误

    tensorflow保存模型后,restore的时候报参数not found是什么原因呢 一般预测的流程是:建图然后restore参数,很有可能你的变量作用域和train的时候不一样,那么在现在的变量 ...

  8. centos7安装doxygen

    编译 编译过程参考官网:https://www.stack.nl/~dimitri/doxygen/download.html 编译过程: git clone https://github.com/d ...

  9. Linux下maven安装

    1.下载maven的tar.gz格式文件到/opt文件夹下 2.解压mavenmaven压缩包 tar -xvzf maven.tar.gz -C /usr/local 3.配置maven的环境变量 ...

  10. 2018,ANG发展峰会惊喜来袭

    区块链的分享——ANG发展峰会重大来袭!2018年10月28日 时至今日,区块链技术已经被越来越多的人所熟知.法国著名的高新公司——凡赛公司汇集世界区块链专家,斥巨资打造了行业领先的区块链技术团队,并 ...