准备工作
- 已获取自动化工具包,并上传到服务器集群中的master节点中完成解压,得到完整的软件文件夹tsdbtool。
- 已下载依赖:setuptool、CMake-3.5.2、psutil、pbr、lockfile、pycparser、cffi、bcrypt、six、PyNacl、cryptography、ipaddress、enum3、paramiko、zstd-dev、Xerces、re2c、gporca的源码包,放到tsdbtool文件夹下的greenplumDep文件夹中,下载地址见表2。
- 已获取Greenplum的源码包或者RPM包,并上传到自动化工具“tsdbtool”目录。
- 每一台服务器都设置了不同的hostname。
- 根据实际环境,完成安装配置文件greenplumconf.csv的修改。
配置文件greenplumconf.csv参数说明如表1所示。
表1 配置文件greenplumconf.csv参数说明 参数
说明
isopath
OS镜像的路径,需提前上传到服务器的操作系统中,用于安装一些依赖包。
prefixdir
软件从源码编译后安装到该目录,绝对路径值,需存在于OS中,RPM包安装此参数无效,不使用。
db_password
Greenplum的密码,工具会使用该字段来设置数据库的密码。
os_root_user
被安装服务器OS的root用户名。
os_root_password
被安装服务器OS的root密码。
version
Greenplum的版本。
compile_flag
用于检查过程的判断,RPM包编译前的检查请设置为1,否则设置为0。执行编译过程,检查项少。
master_dir
Master节点的目录,该值会作为Greenplum配置文件的MASTER_DIRECTORY值直接写入文件,需存在于OS中。
standby_server
Standby节点的IP地址。
standby_dir
Standby节点的目录,该目录值必须和master_dir保持一致,需存在于OS中。
seg_server
Seg服务器的IP地址,多个seg服务器IP地址以分号隔开。
seg_server_num
Seg服务器的数量,用于校验。
seg_data_dir
Seg服务器的数据目录,多个数据目录以分号隔开。该值会作为Greenplum配置文件的DATA_DIRECTORY值直接写入文件,需存在于OS中。
seg_mirror_data_dir
seg_dir_num
Seg服务器的数据镜像目录,多个目录以分号隔开。该值会作为Greenplum配置文件的MIRROR_DATA_DIRECTORY值直接写入文件。镜像目录数量需和数据目录个数相同,需存在于OS中。
Seg目录的数量,用于做校验。
本文以Greenplum 5.22.0的check、install、uninstall为例进行说明。已完成的准备工作如下:
- 已获取工具包并上传至服务器master节点,然后解压到“/home”目录得到“/home/tsdbtool”目录。
- 已上传源码gpdb-5.22.0.tar.gz或者RPM包到“/home/tsdbtool”目录。
- 已下载依赖:setuptool、CMake-3.5.2、psutil、pbr、lockfile、pycparser、cffi、bcrypt、six、PyNacl、cryptography、ipaddress、enum3、paramiko、zstd-dev、Xerces、re2c、gporca的源码包,放到tsdbtool文件夹下的greenplumDep文件夹中。
- 已完成greenplumconf.csv的修改,其中prefixdir(RPM包安装此参数无效,不使用),standby_dir,seg_data_dir,seg_mirror_data_dir,master_dir文件目录已经创建或存在于OS中。