#DN组扩缩容

YashanDB支持通过yasboot工具对存算一体分布式集群部署中的DN组进行扩/缩容,执行具体操作前请仔细阅读相关注意事项

Note:

如果扩缩容过程中现有节点出现故障、扩缩容失败等异常,请参考扩缩容异常处理进行处理。

# 新增DN组

  1. 以安装用户登录当前数据库中yasboot工具所在服务器。

  2. 结合实际场景执行相应命令,生成配置文件。

    • 场景1:向分布式集群新增服务器并增加DN组,使用--ip参数

      $ yasboot config group gen -c yashandb \
      -u yashan -p password --ip ip1,ip2 --port 22\
      --install-path /data/yashan/yasdb_home \
      --data-path /data/yashan/yasdb_data \
      --log-path /data/yashan/log \
      --node 3 --group 2
      

      执行成功后,会生成hosts_add.toml和yashandb_add.toml两个配置文件。

    • 场景2:在分布式集群中的现有服务器上增加DN组,使用--host-ids参数

      $ yasboot config group gen -c yashandb --host-ids host0001,host0002 --node 3 --group 2
      

      执行成功后,会生成yashandb_add.toml配置文件。

    配置文件的详细示例请查阅yashandb_add.toml以及hosts_add.toml

    Note:

    对于3节点及以上的DN组,HA_ELECTION_ENABLED参数是强制开启的,若需要关闭,可在扩容成功后修改该参数。

  3. 部署新服务器。

    如果是在分布式集群中现有服务器上增加DN组,则跳过本步骤。

    1. ) 请先参照安装前准备检查并确保新服务器系统的各项环境已满足要求。

    2. ) 执行相应命令,部署新服务器。

      $ yasboot host add -c yashandb -t hosts_add.toml
      
    3. ) 若扩容前其他服务器均已配置开机自启动,新服务器也必须配置开机自启动

  4. 执行如下命令,增加DN组。

    $ yasboot group add -c yashandb -t yashandb_add.toml
    

    任务显示成功并不表示扩容任务已全部成功,可能仍有部分后台任务在完成数据的同步等操作。可以通过task list命令查看扩容相关的任务是否都成功。

  5. 若扩容前数据库环境已开启资源管理功能,新增的服务器中需要创建cgroup目录,可参考yasboot相关命令。

    $ yasboot host cgroup create -c yashandb --sudo-username root --sudo-password ****** --host-id host0005
    
  6. (可选)备份数据库。

    建议对数据库进行备份,确保扩容后有可用于恢复的基线备份集。

  7. 若采用新增服务器的方式进行扩容,扩容完成后需要把hosts_add.toml中的[[host]]内容复制粘贴到hosts.toml的末尾,以免升级时仍用旧的hosts信息。

  8. 可按需开启DN组内节点的自动选主功能,保障业务连续性:

# 删除DN组

  1. 以安装用户登录当前数据库中yasboot工具所在服务器。

  2. 执行如下命令,删除DN组。

    # 可以增加--with-host参数,成功删除节点组后继续删除当前分布式集群中所有无数据库节点、无yasom进程的空服务器的信息
    $ yasboot group remove --group-ids 3,4 --purge --force -c yashandb
    
  3. (可选)备份数据库。

    建议对数据库进行备份,确保缩容后有可用于恢复的基线备份集。

  4. 若缩容时指定了--with-host参数(即移除了空服务器),缩容完成后需要更新hosts.toml文件的[[host]]内容,删除对应服务器相关信息,以免升级时仍用旧的hosts信息。

pdf-btn 下载文档 copy-btn 复制链接
edit-icon
反馈
coperate-icon
coperate
合作
communication-icon
communicate
交流