greenplum_path.sh中保存了运行Greenplum的一些环境变量设置,包括GPHOOME、PythonHOME等设置。
[gpadmin@mdw ~]$ source /opt/greenplum/greenplum-db/greenplum_path.sh [gpadmin@mdw ~]$ gpssh-exkeys -f /home/gpadmin/conf/hostlist [STEP 1 of 5] create local ID and authorize on local host ... /home/gpadmin/.ssh/id_rsa file exists ... key generation skipped [STEP 2 of 5] keyscan all hosts and update known_hosts file [STEP 3 of 5] authorize current user on remote hosts ... send to sdw1 ... send to sdw2 ... send to sdw3 [STEP 4 of 5] determine common authentication file content [STEP 5 of 5] copy authentication files to all remote hosts ... finished key exchange with sdw1 ... finished key exchange with sdw2 ... finished key exchange with sdw3 [INFO] completed successfully
注意:
(1)首次执行gpssh-exkeys命令时,在[STEP 3 of 5],要输入每个segment节点的gpadmin用户的密码。
(2)gpssh-exkeys命令使用的时候一定要用gpadmin身份,因为这个命令会生成ssh的免密码登录的秘钥,在/home/gpadmin/.ssh这里。如果以root身份使用gpssh-exkeys命令,那么生成的.ssh秘钥在root的home下面或者是在/home/gpadmin下面但是是root的所有者,如果之后使用gpadmin身份执行相应操作的时候就没有权限。
[INFO] completed successfully 这就说明成功打通了,之后就可以使用下面的命令开启批量操作,如下:
[gpadmin@mdw ~]$ gpssh -f /home/gpadmin/conf/hostlist Note: command history unsupported on this machine ... => pwd [sdw1] /home/gpadmin [sdw3] /home/gpadmin [sdw2] /home/gpadmin [ mdw] /home/gpadmin => exit
这里pwd命令是linux中的查看路径命令,这里也是查看一下批量操作时所处的位置,从中可以看到同时连接到了4个节点。这里如果/etc/hosts文件中参数只设置了两个,没有设置主机名,就只能同时连接2个节点,而且是随机的。
这里我们只是测试一下,exit之后先做一些其他的操作。
2.6 将安装包分发到每个子节点打通之后需要将master中的greenplum安装包批量复制到各个segment节点上。
[gpadmin@mdw conf]$ cd /opt/greenplum/
打包:
[gpadmin@mdw greenplum]$ tar -cf gp.4.3.tar greenplum-db-4.3.9.1/
然后利用gpscp命令将这个文件复制到每一台机器上:
[gpadmin@mdw greenplum]$ gpscp -f /home/gpadmin/conf/seg_hosts gp.4.3.tar =:/opt/greenplum/
如果没有意外,就批量复制成功了,可以去子节点的相应文件夹查看,之后要将tar包解压,我们使用批量操作。
[gpadmin@mdw greenplum]$ cd ~/conf/
[gpadmin@mdw conf]$ gpssh -f seg_hosts
Note: command history unsupported on this machine ...
=> cd /opt/greenplum
[sdw3]
[sdw1]
[sdw2]
=> tar -xf gp.4.3.tar
[sdw3]
[sdw1]
[sdw2]
建立软链接
=> ln -s ./greenplum-db-4.3.9.1 greenplum-db
[sdw3]
[sdw1]
[sdw2]
=> ll(可以使用ll查看一下是否已经安装成功)
=> exit
这样就完成了所有节点的安装。
3 初始化数据库在初始化之前的的几个步骤都是做一些准备工作。
3.1 批量创建Greenplum数据存放目录[gpadmin@mdw conf]$ gpssh -f hostlist => mkdir gpdata [sdw3] [mdw] [sdw2] [sdw1] => cd gpdata [sdw3] [mdw] [sdw2] [sdw1] => mkdir gpmaster gpdatap1 gpdatap2 gpdatam1 gpdatam2 [sdw3] [mdw] [sdw2] [sdw1] => ll => exit
3.2 配置.bash_profile环境变量(每台机器都要)编辑.bash_profile文件,添加以下内容: