准备并且增加节点

    要为扩展准备新的系统节点,需要安装Greenplum数据库软件的二进制文件、交换必要的SSH密钥并且运行性能测试。

    先在新节点上运行性能测试然后再在所有结点上测试。在所有节点上运行测试时应该让系统离线,这样用户活动就不会使结果失真。

    通常来说,当管理员修改了节点网络或者系统中出现其他特殊情况时,用户应该运行性能测试。例如,如果用户将在两个网络集群上运行扩展后的系统,应在每一个集群上都运行测试。

    上级主题: 扩展Greenplum系统

    新结点必须与现有节点交换SSH密钥来让Greenplum管理工具能够在没有命令提示的情况下连接到所有的Segment。请执行密钥交换处理两次。

    为了管理便利,第一次作为root执行该处理,然后为管理工具作为用户gpadmin再执行一次。按顺序执行下列任务:

    1. 创建gpadmin用户

    注意: Greenplum数据库的Segment主机命名习惯是 sdwN,其中sdw是一个前缀而N是一个整数(sdw1、sdw2等等)。对于具有多个接口的主机,命名习惯是对该主机名追加一个破折号(-)以及数字。例如,sdw1-1和sdw1-2是主机sdw1的两个接口名。

    1. 作为root在Master主机上登入,并且从用户的Greenplum安装中source greenplum_path.sh文件。

      1. # source /usr/local/greenplum-db/greenplum_path.sh
    2. 运行引用主机列表文件的gpssh-exkeys工具。例如:

      1. # gpssh-exkeys -e /home/gpadmin/existing_hosts_file -x
      2. /home/gpadmin/new_hosts_file
    3. gpssh-exkeys会检查远程主机并且在所有的主机之间执行密钥交换。在提示时输入root用户的密码。例如:

    1. 使用gpssh在所有的新Segment主机(如果该用户还不存在)上创建gpadmin用户。使用用户创建的新主机列表来做密钥交换。例如:

    2. 为新的gpadmin用户设置一个密码。在Linux上,用户可以使用gpssh同时在所有的Segment在主机上做这件事情。例如:

      1. # gpssh -f new_hosts_file 'echo gpadmin_password | passwd
      2. gpadmin --stdin'
    1. 作为gpadmin登入并且运行引用主机列表文件的 gpssh-exkeys工具。例如:

      1. /home/gpadmin/new_hosts_file

    使用gpcheck工具来验证用户的阵列中所有的新主机都有正确的OS设置以运行Greenplum数据库软件。

    1. 作为将运行用户的Greenplum数据库系统的用户(例如gpadmin)登入到Master主机。

      1. $ su - gpadmin
    2. 使用用户的新主机的主机文件运行gpcheck工具。例如:

      1. $ gpcheck -f new_hosts_file

    使用gpcheckperf工具来测试磁盘I/O和内存带宽。

    1. 使用新主机的主机文件运行gpcheckperf工具。在每一台主机上使用-d选项指定用户想要测试的文件系统。用户必须对这些目录具有写访问权限。例如:

    2. 该工具可能会花长时间来执行测试,因为它需要在主机之间拷贝非常大的文件。当它完成时,用户将会看到磁盘写、磁盘读以及流测试的摘要结果。

    对于划分成子网的网络,用每个子网单独的主机文件重复这个过程。