Greenplum5.9.0安裝部署(三臺機器)

**

Greenplum5.9.0安裝部署(三臺機器)

**

一. 配置系統並安裝greenplum數據庫
按順序執行下面安裝任務:

  • 確認系統配置要求
  • 操作系統參數配置
  • (master only) 創建管理員用戶賬號
  • (master only) 安裝Greenplum數據庫軟件
  • 在所有的主機上安裝和配置Greenplum
  • 創建數據存儲目錄
    注意:除了有特殊說明外,這些任務要在所有的主機上進行安裝(master,
    standby master and segments)

    1. 系統要求
    下表爲生產環境中推薦的最低配置要求。
    在這裏插入圖片描述
    (1) 下面的命令是覈對SELinux的狀態(以root用戶運行)
    #sestatus 在這裏插入圖片描述
    可以編輯/etc/selinux/config文件,修改SELINUX參數的值,將SELINUX修改爲disabled,然後重啓操作系統
    SELINUX=disabled
    在這裏插入圖片描述
    (2) 下面的命令是檢查iptables的狀態,以root用戶運行(CentOS 6.x)
# /sbin/chkconfig --list iptables

在這裏插入圖片描述

#chkconfig iptables off
#service iptables stop
#chkconfig --list iptables

在這裏插入圖片描述
如果iptables的狀態是disabled,將會顯示下面輸出

iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off

(3) 下面的命令是檢查iptables的狀態,以root用戶運行(CentOS 7.x)

# systemctl status firewalld

如果firewalld爲disabled,顯示如下

firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service;
disabled; vendor preset: enabled)
Active: inactive (dead)

下面命令是禁用firewalld(以root用戶運行)

# systemctl stop firewalld.service
# systemctl disable firewalld.service

2.設置操作系統參數
Greenplum的安裝需要修改操作系統的參數配置(masters和Segments)
(1) Linux系統配置
•編輯/etc/hosts文件,確保包括主機名和ip地址
在這裏插入圖片描述
• 編輯/etc/sysctl.conf文件,修改下面的配置並重啓
Note:下面爲需要添加的內容:

kernel.shmmni = 4096
kernel.sem = 500 1024000 200 4096
kernel.msgmni = 2048
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 = 10000 65535
net.core.netdev_max_backlog = 10000
net.core.rmem_max = 2097152
net.core.wmem_max = 2097152
vm.overcommit_memory = 2

下面爲需要修改的內容:

kernel.shmmax = 500000000(default 68719476736)
kernel.shmall = 4000000000(default 4294967296)
kernel.sysrq = 1(default 0)

• 在/etc/security/limits.conf文件中配置如下參數

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

在這裏插入圖片描述
3.創建Greenplum 數據庫管理員賬戶
必須要在master節點創建運行數據庫的用戶,可以使用操作系統的用戶作爲Greenplum管理員用戶,爲了方便可以使用gpadmin
注意:不能用root用戶運行greenlum
Gpadmin用戶必須要有訪問安裝了Greenplum的主機目錄權限
在Greenplum的master節點上創建操作系統賬戶,以root用戶運行groupadd, useradd,和 passwd命令。例如

# groupadd gpadmin
# useradd gpadmin -g gpadmin
# passwd gpadmin
New password: <changeme>
Retype new password: <changeme>

在這裏插入圖片描述
4.安裝 Greenplum 數據庫
(1) 使用root用戶登錄需要安裝Greenplum數據庫的master節點的機器.
(2)下載安裝文件,將安裝文件複製到master節點的機器
(3) 解壓安裝文件:

# unzip greenplum-db-5.9.0-rhel6-x86_64.zip

(4)執行安裝文件:

# /bin/bash greenplum-db-5.9.0-rhel6-x86_64.bin

(5) 安裝過程會提示接受Greenplum Database license agreement,輸入yes,接受license agreement。
(6)安裝過程會提示輸入安裝路徑,輸入ENTER鍵使用默認安裝目錄(/usr/local/greenplum-db-),或者輸入自定義路徑(絕對路徑)
注意:必須要有安裝目錄的write權限
在這裏插入圖片描述
(7)安裝結束會創建一個greenplum-db的軟連接,查看安裝目錄如下:
在這裏插入圖片描述
(8)如果是以root用戶安裝的,需要將安裝文件的屬主和組改變成gpadmin

# chown -R gpadmin /usr/local/greenplum*
# chgrp -R gpadmin /usr/local/greenplum*

在這裏插入圖片描述
(9)安裝成功之後,文件包括以下內容
在這裏插入圖片描述
5.在所有主機上安裝配置greenplum
當以root用戶運行gpseginstall命令時,會將Greenplum安裝文件複製到其他主機上(hostfile_exkeys進行配置),同時會創建Greenplum操作系統用戶賬號(gpadmin),設置賬號密碼(默認爲changeme),設置安裝目錄的屬主和組,並且會在所有主機之間配置SSH免密.
注意:如果只在一臺機器上安裝greenplum,也可以使用gpseginstall命令,但是hostfile_exkeys文件只有當前主機的主機名
在所有的主機上安裝和配置greenplum數據庫
(1) 以root用戶登錄master主機
(2) 在greenplum安裝目錄下,對greenplum_path.sh 執行source命令

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

(3) 創建hostfile_exkeys文件,包括所有主機名(master, standby master and
segments),例如:如果有一個master和一個standby master以及兩個segment,配置文件配置如下:

mdw
sdw1
sdw2
smdw

在這裏插入圖片描述
(4)運行gpseginstall命令,下面的是以root用戶運行的,該命令會在所有主機上創建gpadmin的系統賬號,在所有segment主機上設置用戶的密碼爲123qwe,-u和-p分別設置賬號名和密碼

# gpseginstall -f hostfile_exkeys -p 123qwe

在這裏插入圖片描述
驗證安裝
(1)以gpadmin用戶登錄master節點
(2)對greenplum_path.sh執行source命令

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

(3)使用gpssh命令驗證是否可以免密登錄

$ gpssh -f hostfile_exkeys -e ls -l $GPHOME

在這裏插入圖片描述
如果不能免密登錄,使用下面命令進行免密配置

$ gpssh-exkeys -f hostfile_exkeys

6.創建數據存儲區域
在Master主機上創建數據存儲目錄
(1) 創建屬主和組都爲gpadmin的目錄,以root用戶運行下面命令

# mkdir -p /home/gpadmin/gpdata/gpmaster

(2) 改變創建目錄的屬主和組,例如:

# chown -R gpadmin:gpadmin /home/gpadmin/gpdata/gpmaster/

在這裏插入圖片描述
(3) 使用gpssh命令,在standby master上創建相同的目錄,例如:

$ source /usr/local/greenplum-db/greenplum_path.sh
$ gpssh -h smdw -e 'mkdir -p /home/gpadmin/gpdata/gpmaster'

在這裏插入圖片描述
在這裏插入圖片描述
在segment主機上創建數據存儲目錄
(1)以root用戶登錄master主機:
(2) 創建hostfile_gpssh_segonly文件,該文件僅僅包括所有segment的主機名

sdw1
sdw2

在這裏插入圖片描述
(3)使用hostfile_gpssh_segonly文件,通過gpssh命令在所有的segment主機上創建primary 和 mirror的目錄

$ source /usr/local/greenplum-db/greenplum_path.sh 
$ gpssh -f hostfile_gpssh_segonly  -e 'mkdir -p /home/gpadmin/gpdata/gpdatap1' 
$ gpssh -f hostfile_gpssh_segonly  -e 'mkdir -p /home/gpadmin/gpdata/gpdatap2' 
$ gpssh -f hostfile_gpssh_segonly  -e 'mkdir -p /home/gpadmin/gpdata/gpdatam1' 
$ gpssh -f hostfile_gpssh_segonly  -e 'mkdir -p /home/gpadmin/gpdata/gpdatam2' 

在這裏插入圖片描述
二.初始化greenplum數據庫系統

1. 初始化數據庫
創建用於初始化的文件
(1) 以gpadmin用戶登錄
(2) 創建hostfile_gpinitsystem文件,該文件僅僅包括segment主機名

sdw1
sdw2

(3)保存文件
創建gpinitsystem_config的文件
(1) 以gpadmin用戶登錄
(2) 將gpinitsystem_config文件複製到/usr/local/greenplum-db/conf/目錄下

$ cp $GPHOME/docs/cli_help/gpconfigs/gpinitsystem_config \
/usr/local/greenplum-db/conf/gpinitsystem_config

在這裏插入圖片描述
(3) 編輯gpinitsystem_config文件,內容如下:

################################################
#### REQUIRED PARAMETERS
################################################
ARRAY_NAME="Greenplum Data Platform"
SEG_PREFIX=gpseg
PORT_BASE=40000
declare -a DATA_DIRECTORY=(/home/gpadmin/gpdata/gpdatap1 /home/gpadmin/gpdata/gpdatap2)
MASTER_HOSTNAME=mdw
MASTER_DIRECTORY=/home/gpadmin/gpdata/gpmaster
MASTER_PORT=5432
TRUSTED_SHELL=ssh
CHECK_POINT_SEGMENTS=8
ENCODING=UNICODE
################################################
#### OPTIONAL MIRROR PARAMETERS
################################################
MIRROR_PORT_BASE=50000
REPLICATION_PORT_BASE=41000
MIRROR_REPLICATION_PORT_BASE=51000
declare -a MIRROR_DATA_DIRECTORY=(/home/gpadmin/gpdata/gpdatam1  /home/gpadmin/gpdata/gpdatam2)
################################################
#### OTHER OPTIONAL PARAMETERS
################################################
#DATABASE_NAME=name_of_database
MACHINE_LIST_FILE=/usr/local/greenplum-db/conf/hostfile_gpinitsystem

在這裏插入圖片描述
(4) 保存文件
運行初始化命令
(1) -s參數是指定standby master,本環境由於只有兩個segment節點,選擇group方式備份。

$ gpinitsystem -c gpinitsystem_config -s smdw

(2) 該命令會驗證安裝信息,如果所有的預檢查都成功,會提示需要確認配置,例如:

=> Continue with Greenplum creation? Yy/Nn

(3) 輸入確認啓動初始化.
(4) 初始化成功會提示如下內容:

=> Greenplum Database instance successfully created.

2設置環境變量
(1) 以 gpadmin用戶登錄:
(2) 編輯.bashrc文件:

$ vi ~/.bashrc

(3) 添加如下內容:

source /usr/local/greenplum-db/greenplum_path.sh
export MASTER_DATA_DIRECTORY= /home/gpadmin/gpdata/gpmaster/gpseg-1

在這裏插入圖片描述
(4) (注意)如果是RHEL 7 or CentOS 7系統,需要在.bashrc文件的末尾添加如下內容:

export LD_PRELOAD=/lib64/libz.so.1 ps

(5) 使用文件生效:

$ source ~/.bashrc

(6) 如果有standy master,將環境變量文件複製到standy master主機上

$ cd ~
$ scp .bashrc standby_hostname:`pwd`

在這裏插入圖片描述
3.控制訪問權限
編輯 pg_hba.conf
(1)進入psql客戶端

	testDB=# alter role gpadmin with password '123qwe';

(2) 編輯 $MASTER_DATA_DIRECTORY/pg_hba.conf,添加訪問數據庫的主機信息.

host     testDB      gpadmin         10.6.150.102/32          md5

(3) 使pg_hba.conf文件生效:

$ gpstop -u
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章