IBM Db2 Warehouse 集群横向增容(Db2 Warehouse Orchestrator 部署)

通过添加一个或多个节点,可以增加 Db2 Warehouse Orchestrator 所部署的集群的容量和性能,而对数据库操作只有最低限度的中断。Db2 Warehouse Orchestrator 取代 Swarm。

开始之前

如果任何新节点先前是 Db2 Warehouse 集群的组成部分,请确保已移除所有旧的 Db2 Warehouse 容器和映像。

关于此任务

本任务描述如何使用 Db2 Warehouse Orchestrator 脚本将一个或多个节点添加到 Db2 Warehouse MPP 集群。对于 Db2 Warehouse Orchestrator 部署,并非必须使用本主题中的过程:可以改用标准的横向扩容过程。但是,如果使用标准的横向扩容过程,您必须手动运行多个命令,因此使用脚本更为简单。

确保所有新节点主机的日期和时间与集群中的其余节点主机同步。

存在下列限制:
  • 只能添加数据节点。指定为导引节点的主机必须保留该指定。
  • 集群中的节点数不能少于三个(一个导引节点和两个数据节点)。最大节点数为 24(1 个导引节点和 23 个数据节点)或 60(1 个导引节点和 59 个数据节点),具体取决于部署 Db2 Warehouse 时分配的数据分区数。有关更多信息,请参阅缩放 IBM Db2 Warehouse 部署
  • 集群中所有节点上的所有容器必须处于同一级别。
  • 无法在同一操作中同时添加和移除节点。如果要同时执行这两项操作,请执行不使用 Db2 Warehouse Orchestrator 的过程。
  • 使用以下过程无法将节点添加到 SMP 部署以使其成为 MPP 部署。

如果要使用来自 Db2 Warehouse 容器的 Db2 Warehouse Orchestrator 工具,请确保该工具的版本与您要部署的映像版本相同。

要执行本任务,您需要 root 用户权限。

过程

  1. 在所有节点上,执行下列步骤:
    1. 将任何要保留的设置从 /etc/systemd/system/docker.service.d/docker.conf 文件迁移到 /etc/docker/daemon.json 文件。
    2. 删除 /etc/systemd/system/docker.service.d/docker.conf 文件。
    3. 启用安全的 Docker 命令远程调用
  2. 更新每个节点的 /etc/hosts 文件,使其包含部署中每个节点的详细信息。
  3. 每个新节点上发出以下命令:
    docker login -u=docker_id -p='password'
  4. 在导引节点上,通过使用以下列表中的其中一个调用,运行 db2wh_orchestrator.sh 脚本。该脚本将执行所有必要的启动和停止,并将指定的节点添加到集群。要添加多个节点,您可指定多个短主机名和 IP 地址,并以空格分隔各个值。
    • 对于适用于 IBM® POWER® LE 硬件的容器:
      path_on_host/db2wh_orchestrator.sh --file /mnt/clusterfs/nodes --scaleout short_hostname_of_node_to_add ip_addr_of_node_to_add --tag v3.9.0-db2wh-ppcle 
      
    • 对于适用于 IBM z Systems® 硬件的容器:
      path_on_host/db2wh_orchestrator.sh --file /mnt/clusterfs/nodes --scaleout short_hostname_of_node_to_add ip_addr_of_node_to_add --tag v3.9.0-db2wh-s390x 
      
    • 对于适用于 x86 硬件的容器:
      path_on_host/db2wh_orchestrator.sh --file /mnt/clusterfs/nodes --scaleout short_hostname_of_node_to_add ip_addr_of_node_to_add --tag v3.9.0-db2wh-linux 
      

下一步做什么

脚本运行完成后,请登录 Web 控制台,并确认已相应地修改集群。