一、安装环境准备

1、磁盘环境准备

磁盘分区典型配置如下:


文件系统 文件格式    大小
  /        ext3   50GB,Linux系统的根目录,所有的目录都挂在这个目录下面,建议大小为5GB以上
  /boot    ext3   用来存放与Linux系统启动有关的程序,比如启动引导装载程序等,建议大小为200MB
  swap     swap   1*RAM,实现虚拟内存,建议大小是物理内存的1~2倍

/usr     ext3   用来存放Linux系统中的应用程序,其相关数据较多,建议大于3GB以上

/var     ext3   用来存放Linux系统中经常变化的数据以及日志文件,建议大于1GB以上

/tmp     ext3   将临时盘在独立的分区,可避免在文件系统被塞满时影响到系统的稳定性。建议大小为500MB以上

/data1   xfs    依据数据量而定
  /data2   xfs    依据数据量而定

/home    ext3   存放普通用户的数据,是普通用户的宿主目录,建议大小为剩下的空间


 2、设置GP 推荐的OS 参数

注:标示“三台主机”的表示要在三台电脑上都做该操作,“master节点”表示只在mdw主机上操作

 hostname
ip
内存
硬盘
mdw
192.168.10.200
500M
8G
sdw1
192.168.10.201
500M
8G
sdw2
192.168.10.202
500M
8G

Greenplum 需要在GP 数据库系统的所有主机(masters 和 segments) 上配置推荐的OS参数

以root 用户登录,修改所有主机的OS 参数

(1)、关闭防火墙(三台主机)(学习时可以直接关闭,正式环境是通过开放端口)
  
service iptables stop   停止防火墙服务,重启电脑后仍然会开启
  
chkconfig iptables off  关闭防火墙服务开机启动,重启后生效
(2)、修改/etc/hosts文件(三台主机)
在hosts文件中添加或修改一下内容:
 
192.168.10.200 mdw
 
192.168.10.201 sdw1
 
192.168.10.202 sdw2
添加之后,可以通过ping命令测试是否正确,如:ping sdw1 测试是否能访问sdw1节点
(3)、修改或添加/etc/sysctl.conf(三台主机)

xfs_mount_options = rw,noatime,inode64,allocsize=16m
  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
  vm.overcommit_memory = 2

(4)、配置/etc/security/limits.conf文件,添加以下内容(三台主机)
 
* soft nofile 65536
 
* hard nofile 65536
 
* soft nproc 131072
 
* hard nproc 131072
(5)、设置预读块的值为16384(三台主机)
 
# /sbin/blockdev --getra /dev/sda        
查看预读块,默认大小为256
 
# /sbin/blockdev --setra 16384 /dev/sda   设置预读块
(6)、设置磁盘访问I/O调度策略(三台主机)
 
# echo deadline > /sys/block/sda/queue/scheduler
(7)、上传并解压数据库安装文件(master节点)

 
# unzip greenplum-db-4.2.2.4-build-1-CE-RHEL5-i386.zip

二、GP数据库安装

1、安装软件(master节点)
 
# /bin/bash greenplum-db-4.2.2.4-build-1-CE-RHEL5-i386.bin
安装过程中会显示以下内容,直接使用默认即可

安装之后的目录文件如下:

其中:
greenplum_path.sh - Greenplum 数据库环境变量配置文件
GPDB-LICENSE.txt- Greenplum license 文件
LICENSE.thirdparty- 第三方 license 文件
bin- 目录下包括Greenplum 数据库管理程序,也包括PostgreSQL 客户端和服务程序
demo - 目录下包括Greenplum 演示程序
docs - Greenplum 数据库帮助文档(PDF 格式)
etc - OpenSSL 配置文件
ext - Greenplum 数据库程序用的附加程序( 如 Python)
include - Greenplum 数据库C header files
lib - Greenplum 数据库和 PostgreSQL 库文件
sbin - Supporting/Internal 脚本和程序
share - Greenplum 数据库共享文件

2、获取环境参数(master节点)

在/etc/profile中增加:# source /usr/local/greenplum-db/greenplum_path.sh

然后在三台主机执行命令:source /usr/local/greenplum-db/greenplum_path.sh

3、创建包含所有主机名的文件/home/gpadmin/all_hosts

首先指定greenplum用户 # useradd gpadmin  # passwd gpadmin

赋用户权限  # chown -R gpadmin:gpadmin gpadmin

然后在gpadmin账户下创建 all_hosts,文件内容:(三台主机)
  mdw
  sdw1
  sdw2

4、运行gpseginstall工具 (master节点 /home/gpadmin)
 
# gpseginstall -f all_hosts -u gpadmin -p gpadmin
all_hosts是上个步骤创建的文件,安装过程中会让输入三台主机的密码,完成后提示成功,如下图:

5、切换到gpadmin用户验证无密码登录(三台主机)
   (1)切换用户
      $ su - gpadmin
   (2)使用gpssh工具来测试无密码登录所有主机,结果如下图:
      $ gpssh -f all_hosts -e ls -l $GPHOME

6、配置环境变量(master节点)
在/home/gpadmin路径下,以root用户添加下述信息到.bashrc和.bash_profile文件最后
  # source /usr/local/greenplum-db-4.2.2.4/greenplum_path.sh
然后将.bashrc文件发送到sdw1和sdw2,命令如下:
  scp .bashrc sdw1:~
  scp .bashrc sdw2:~
7、创建存储区域(master节点)
   (1) 创建Master数据存储区域
        # mkdir -p /data/master
   (2) 改变目录的所有权
        # chown gpadmin:gpadmin /data/master
   (3) 创建一个包含所有segment主机名的文件/home/gpadmin/seg_hosts,内容如下:
        sdw1
        sdw2
   (4) 使用gpssh工具在所有segment主机上创建主数据和镜像数据目录,如果没有设置镜像可以不创建mirror目录(切换gpadmin用户)
        # gpssh -f seg_hosts -e 'mkdir -p /data/primary'
        # gpssh -f seg_hosts -e 'mkdir -p /data/mirror'
        # gpssh -f seg_hosts -e 'chown gpadmin /data/primary'
        # gpssh -f seg_hosts -e 'chown gpadmin /data/mirror'
8、同步系统时间
  (1) 在Master主机上编辑/etc/ntp.conf来设置如下内容:
      server 127.127.1.0
  (2) 在Segment主机上编辑/etc/ntp.conf
      server mdw
  (3) 在Master主机上,通过NTP守护进程同步系统时钟(切换gpadmin用户)
      # gpssh -f all_hosts -v -e 'ntpd'

验证操作系统设置(切换gpadmin用户)
 
# gpcheck -f all_hosts -m mdw
注意运行结果是否有error信息,如果有处理掉错误信息后重新执行上面的命令检查,直至没有error信息,error如下图

成功的信息如下:

10、创建Greenplum数据库配置文件
(1) 以gpadmin用户登录
  # su - gpadmin
(2) 从模板中拷贝一份gpinitsystem_config文件
  $ cp $GPHOME/docs/cli_help/gpconfigs/gpinitsystem_config /home/gpadmin/gpinitsystem_config
  $ chmod 775 gpinitsystem_config
(3) 设置所有必须的参数
  ARRAY_NAME="EMC Greenplum DW"
  SEG_PREFIX=gpseg
  PORT_BASE=40000
  declare -a DATA_DIRECTORY=(/data/primary)
  MASTER_HOSTNAME=mdw
  MASTER_DIRECTORY=/data/master
  MASTER_PORT=5432
  TRUSTED SHELL=ssh
  CHECK_POINT_SEGMENT=8
  ENCODING=UNICODE
(4) 设置可选参数
  MIRROR_PORT_BASE=50000
  REPLICATION_PORT_BASE=41000
  MIRROR_REPLICATION_PORT_BASE=51000
  declare -a MIRROR_DATA_DIRECTORY=(/data/mirror)

11、运行初始化工具初始化数据库
 
$ gpinitsystem -c gpinitsystem_config -h seg_hosts
成功之后,数据库便启动了,信息如下:

出现Continue with Greenplum creation Yy/Nn>,输入 y,然后等待如下完成

12、设置环境变量
添加"export MASTER_DATA_DIRECTORY=/data/master/gpseg-1"到~/.bashrc文件尾,并同步到sdw1和sdw2节点
  $ scp .bashrc sdw1:~
  $ scp .bashrc sdw2:~

13、启动和停止数据库测试是否能正常启动和关闭,命令如下
  $ gpstart
  $ gpstop

15、访问数据库
psql -d postgres
输入查询语句
select datname,datdba,encoding,datacl from pg_database;
显示信息如下

GreenPlum 安装方法详解的更多相关文章

  1. SQL Server2012 安装方法详解

    SQL Server2012 安装方法详解 - MonkeyBrothers的博客 - CSDN博客 https://blog.csdn.net/monkeybrothers/article/deta ...

  2. Mysql压缩包版的安装方法详解

    Mysql安装的时候可以有msi安装和zip解压缩两种安装方式.zip压缩包解压到目录,要使用它还需对它进行一定的配置.下面对Mysql压缩包版的安装方法进行详细的描述,要是此文有不正确的认识,希望大 ...

  3. Android SDK离线安装方法详解(加速安装) 转

    AndroidSDK在国内下载一直很慢··有时候通宵都下不了一点点,最后只有选择离线安装,现在发出离线安装地址和方法,希望对大家有帮助! 离线安装包下载地址:http://dl.vmall.com/c ...

  4. ADS2008 安装方法详解及文件下载

    一.我的安装的过程及方法 正常安装的方法: 1.- Install the program. 2.- Copy "license.lic" into "C:\ADS200 ...

  5. Android SDK离线安装方法详解(加速安装)

    AndroidSDK在国内下载一直很慢··有时候通宵都下不了一点点,最后只有选择离线安装,现在发出离线安装地址和方法,希望对大家有帮助 一,首先下载SDK的安装包,android-sdk_r10-wi ...

  6. Zend Studio 13.6.1 汉化及安装方法详解

    Zend Studio 13.6.1是一套专业开发人员使用的集成开发环境 (IDE),具备功能强大的专业编辑工具和调试工具,支持PHP语法加亮显示,支持语法自动填充功能,支持书签功能,支持语法自动缩排 ...

  7. VS2019 离线安装方法详解

    本文详细介绍了 VS2019 离线安装的相关步骤,以桌面开发为主下载 C++桌面开发..NET 桌面开发相关的工作负载.MFC 可选组件及帮助查看器. 工作负载(Workload) 离线安装需要先根据 ...

  8. Linux GRUB手动安装方法详解

    需要手工安装 GRUB 主要有两种情况: Linux 系统原先不是使用 GRUB 作为引导程序而现在想要使用 GRUB 来作为引导程序: MBR 中的引导程序被覆盖,需要在 MBR 中重新安装 GRU ...

  9. 个人用户永久免费,可自动升级版Excel插件,使用VSTO开发,Excel催化剂安装过程详解及安装失败解决方法

    因Excel催化剂用了VSTO的开发技术,并且为了最好的用户体验,用了Clickonce的布署方式(无需人工干预自动更新,让用户使用如浏览器访问网站一般,永远是最新的内容和功能).对安装过程有一定的难 ...

随机推荐

  1. iOS-Core Data基础

    Core Data基础 Core Data是一个API集合,被设计用来简化数据对象的持久存储. 在此先不普及概念,先通过一个简单的案例使用来感受一下Core Data的精妙之处. 在创建工程的时候勾选 ...

  2. hdu 6118 度度熊的交易计划

    度度熊的交易计划 Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  3. C#精髓第四讲 GridView 72般绝技

    原文发布时间为:2008-08-03 -- 来源于本人的百度文章 [由搬家工具导入] 原文地址:http://blog.csdn.net/21aspnet/archive/2007/03/25/154 ...

  4. 【MFC】利用单一对话框内的分页技术实现向导功能(转)

    原文转自 http://blog.csdn.net/yongh701/article/details/43793151 所谓的向导功能,在win32的程序中常常见于安装程序或者程序内的设置向导,该向导 ...

  5. grep用法详解:grep与正则表达式【转】

    转自:http://blog.csdn.net/hellochenlian/article/details/34088179 grep用法详解:grep与正则表达式 首先要记住的是: 正则表达式与通配 ...

  6. What is pseudopolynomial time? How does it differ from polynomial time?

    To understand the difference between polynomial time and pseudopolynomial time, we need to start off ...

  7. AC日记——货车运输 codevs

    3287 货车运输 2013年NOIP全国联赛提高组  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果     题目描述 Descri ...

  8. HTML5 移动端头部标签

    <!DOCTYPE html> <!-- 使用 HTML5 doctype,不区分大小写 --> <html lang="zh-cmn-Hans"&g ...

  9. Java 网络通信【01】TCP

    不积跬步,无以至千里:不积小流,无以成江海.——<荀子劝学> JAVA中设计网络编程模式的主要有TCP和UDP两种. TCP是属于即时通信,点对点连接进行通信. UDP是通过数据包来进行通 ...

  10. Codeforces Educational Round 33 题解

    题目链接   Codeforces Educational Round 33 Problem A 按照题目模拟,中间发现不对就直接输出NO. #include <bits/stdc++.h> ...