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. SPSS for Mac 安装教程

    Step1 下载安装文件 链接:https://pan.baidu.com/s/1M5Eh7ph3ys6mHRbAn_h_Wg 提取码:o0m7 Step2 解压安装 将下载好的压缩包解压,点击SPS ...

  2. 【2.0】使用默认日志slf4j配置

    一.SpringBoot日志简介 SpringBoot使用Commons Logging进行所有内部日志记录,但底层日志实现保持开放状态.为Java Util Logging,Log4j2和Logba ...

  3. Matlab Code for Visualize the Tracking Results of OTB100 dataset

    Matlab Code for Visualize the Tracking Results of OTB100 dataset 2018-11-12 17:06:21 %把所有tracker的结果画 ...

  4. SSH框架整合,css、js会被过滤器过滤掉

    如果是默认状态 <!--struts2过滤器--> <filter> <filter-name>struts2</filter-name> <fi ...

  5. 剑指offer 02:替换空格

    题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”.例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 解题代码 public cla ...

  6. CSP中的选择

    P ∩ Q (P or Q) 由机器做出选择,环境无法控制,设计软件时只实现一个即可 P[]Q一般选择(Genral choice) 环境可以控制选择P或Q,若P不可接受这个动作,则执行Q,若Q不可接 ...

  7. nginx windows版 下载和启动

    nginx Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.在连 ...

  8. SDWebImage 的简单使用方法

    第一步,下载SDWebImage,导入工程 第二步,在需要的地方导入头文件:#import   "UIImageView+WebCache.h" 第三步,调用sd_setImage ...

  9. [easyUI] 树形菜单 tree

    0.效果图 1. 一个id为mytree的无序列表 <h2>easy UI Tree</h2> <ul id="mytree"></ul& ...

  10. CKEditor富文本编辑器

    CKEditor 富文本即具备丰富样式格式的文本.在运营后台,运营人员需要录入课程的相关描述,可以是包含了HTML语法格式的字符串.为了快速简单的让用户能够在页面中编辑带格式的文本,我们引入富文本编辑 ...