您好,登錄后才能下訂單哦!
一、環(huán)境準(zhǔn)備
1、安裝VMware軟件,然后在VMware里安裝三臺(tái)Linux虛擬機(jī)(我使用的是redhat)
2、設(shè)置虛擬機(jī)
主機(jī)名 | ip | 內(nèi)存 | 硬盤 |
mdw | 192.168.10.20 | 500M | 8G |
sdw1 | 192.168.10.21 | 500M | 8G |
sdw2 | 192.168.10.22 | 500M | 8G |
3、下載數(shù)據(jù)庫(kù)安裝文件greenplum-db-4.2.2.4-build-1-CE-RHEL5-i386
二、安裝
注:標(biāo)示“三臺(tái)主機(jī)”的表示要在三臺(tái)電腦上都做該操作,“master節(jié)點(diǎn)”表示只在mdw主機(jī)上操作
1、關(guān)閉防火墻(三臺(tái)主機(jī))(學(xué)習(xí)時(shí)可以直接關(guān)閉,正式環(huán)境是通過(guò)開放端口)
#service iptables stop 停止防火墻服務(wù),重啟電腦后仍然會(huì)開啟
#chkconfig iptables off 關(guān)閉防火墻服務(wù)開機(jī)啟動(dòng),重啟后生效
可以兩個(gè)命令結(jié)合使用避免重啟
2、修改hosts文件(三臺(tái)主機(jī))
在hosts文件中添加或修改一下內(nèi)容(如果主機(jī)名無(wú)法改,就在后面寫多個(gè)域名 例子: 192.168.10.200 mdw master )
192.168.10.20 mdw
192.168.10.21 sdw1
192.168.10.22 sdw2
添加之后,可以通過(guò)ping命令測(cè)試是否正確,如:ping sdw1 測(cè)試是否能訪問(wèn)sdw1節(jié)點(diǎn)
3、修改或添加/etc/sysctl.conf(三臺(tái)主機(jī))
xfs_mount_options = rw,noatime,inode64,allocsize=16m
kernel.shmmax = 500000000
kernel.shmmni = 4096
kernel.shmall = 4000000000
kernel.sem = 250 512000 100 2048
#如果機(jī)子的性能好的好: kernel.sem = 250 512000 100 20480
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文件,添加以下內(nèi)容(三臺(tái)主機(jī))
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072
5、設(shè)置預(yù)讀塊的值為16384(三臺(tái)主機(jī))
# /sbin/blockdev --getra /dev/sda
查看預(yù)讀塊,默認(rèn)大小為256
# /sbin/blockdev --setra 16384 /dev/sda 設(shè)置預(yù)讀塊
6、設(shè)置磁盤訪問(wèn)I/O調(diào)度策略(三臺(tái)主機(jī))
#echo deadline > /sys/block/sda/queue/scheduler (存儲(chǔ)的硬盤/sda)
7、上傳并解壓數(shù)據(jù)庫(kù)安裝文件(master節(jié)點(diǎn))
# unzip greenplum-db-4.2.2.4-build-1-CE-RHEL5-i386.zip
8、安裝軟件(master節(jié)點(diǎn))
# /bin/bash greenplum-db-4.2.2.4-build-1-CE-RHEL5-i386.bin
安裝過(guò)程中會(huì)顯示以下內(nèi)容,直接使用默認(rèn)即可
安裝之后的目錄文件如下:
9、獲取環(huán)境參數(shù)(master節(jié)點(diǎn))
# source /usr/local/greenplum-db/greenplum_path.sh
10、創(chuàng)建包含所有主機(jī)名的文件/home/gpadmin/all_hosts,文件內(nèi)容:(三臺(tái)主機(jī))
mdw
sdw1
sdw2
11、運(yùn)行g(shù)pseginstall工具 (master節(jié)點(diǎn))
# gpseginstall -f /home/gpadmin/all_hosts -u gpadmin -p gpadmin
all_hosts是上個(gè)步驟創(chuàng)建的文件,安裝過(guò)程中會(huì)讓輸入三臺(tái)主機(jī)的root密碼,完成后提示成功,如下圖:
12、切換到gpadmin用戶驗(yàn)證無(wú)密碼登錄(三臺(tái)主機(jī))
(1)切換用戶
$ su - gpadmin
(2)獲取環(huán)境參數(shù)(所有節(jié)點(diǎn))
# source /usr/local/greenplum-db/greenplum_path.sh
(3)使用gpssh工具來(lái)測(cè)試無(wú)密碼登錄所有主機(jī),結(jié)果如下圖:
$ gpssh -f all_hosts -e ls -l $GPHOME
13、配置環(huán)境變量(master節(jié)點(diǎn))
[gpadmin@bj-gp-node1 ~]$ cd /home/gpadmin
[gpadmin@bj-gp-node1 ~]$ vi .bashrc
[gpadmin@bj-gp-node1 ~]$ vi .bash_profile
.bashrc和.bash_profile最后都添加下面兩行
source /usr/local/greenplum-db/greenplum_path.sh
export MASTER_DATA_DIRECTORY=/data/master/gpseg-1
然后將.bashrc文件發(fā)送到sdw1和sdw2,命令如下:
scp .bashrc sdw1:~
scp .bashrc sdw2:~
14、創(chuàng)建存儲(chǔ)區(qū)域(master節(jié)點(diǎn))
首先mkfs格式化硬盤/dev/sda,然后在掛載到 /data/ 最后配置自動(dòng)掛載 vim /etc/fstab [這個(gè)就不詳細(xì)寫了]
(1) 創(chuàng)建Master數(shù)據(jù)存儲(chǔ)區(qū)域
# mkdir -p /data/master
(2) 改變目錄的所有權(quán)
# chown gpadmin:gpadmin /data/master
(3) 創(chuàng)建一個(gè)包含所有segment主機(jī)名的文件/home/gpadmin/segment_hosts,內(nèi)容如下:
sdw1
sdw2
(4) 使用gpssh工具在所有segment主機(jī)上創(chuàng)建主數(shù)據(jù)和鏡像數(shù)據(jù)目錄,如果沒有設(shè)置鏡像可以不創(chuàng)建mirror目錄(注意先在每個(gè)segment格式硬盤,然后掛載上/data/ 然后設(shè)置自啟動(dòng))
# 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
15、同步系統(tǒng)時(shí)間
(1) 在Master主機(jī)上編輯/etc/ntp.conf來(lái)設(shè)置如下內(nèi)容:
server 127.127.1.0
(2) 在Segment主機(jī)上編輯/etc/ntp.conf
server mdw
(3) 在Master主機(jī)上,通過(guò)NTP守護(hù)進(jìn)程同步系統(tǒng)時(shí)鐘
# gpssh -f all_hosts -v -e 'ntpd'
16、驗(yàn)證操作系統(tǒng)設(shè)置
# gpcheck -f all_hosts -m mdw
注意運(yùn)行結(jié)果是否有error信息,如果有處理掉錯(cuò)誤信息后重新執(zhí)行上面的命令檢查,直至沒有error信息,error如下圖
成功的信息如下:
17、創(chuàng)建Greenplum數(shù)據(jù)庫(kù)配置文件
(1) 以gpadmin用戶登錄
# su - gpadmin
(2) 從模板中拷貝一份gpinitsystem_config文件
$ vi /home/gpadmin/gpinitsystem_config ($GPHOME/docs/cli_help/gpconfigs/gpinitsystem_config 是個(gè)模板)
$ chmod 775 gpinitsystem_config
(3) 設(shè)置所有必須的參數(shù)
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) 設(shè)置可選參數(shù)
MIRROR_PORT_BASE=50000
REPLICATION_PORT_BASE=41000
MIRROR_REPLICATION_PORT_BASE=51000
declare -a MIRROR_DATA_DIRECTORY=(/data/mirror)
18、運(yùn)行初始化工具初始化數(shù)據(jù)庫(kù)
$ gpinitsystem -c gpinitsystem_config -h seg_hosts
成功之后,數(shù)據(jù)庫(kù)便啟動(dòng)了,信息如下:
19、啟動(dòng)和停止數(shù)據(jù)庫(kù)測(cè)試是否能正常啟動(dòng)和關(guān)閉,命令如下
$ gpstart
$ gpstop
20、訪問(wèn)數(shù)據(jù)庫(kù)
psql -d postgres
輸入查詢語(yǔ)句
select datname,datdba,encoding,datacl from pg_database;
創(chuàng)建dba用戶:
postgres# create role source password 'source' createdb login;
查看用戶信息:
postgres# select rolename, oid from gp_roles;
顯示信息如下
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。