#集群实例扩缩容

YashanDB支持通过yasboot工具对共享集群部署中的实例节点(包括YCS实例和数据库实例)进行在线扩容,且扩容期间不影响整个集群的使用。

Note:

  • 目前无法对集群内的实例进行删减。

  • 每个实例将由单独的1台服务器承载(后文将称之为“新服务器”),新服务器的操作系统版本建议与现有服务器保持一致。

  • 如果扩容失败,请参考扩缩容异常处理进行处理。

  1. 准备扩容所需的新服务器,并参照安装前准备检查并确保新服务器系统的各项环境已满足要求。

  2. 以安装用户登录数据库现有实例所在服务器,若为主备集群需登录主集群任一实例所在服务器。

  3. 执行yasboot config node gen命令,生成增加实例的配置文件。

    $ yasboot config node 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 2 \
    --vips vip1,vip2        # 原集群未配置VIP时,不需要指定--vips选项
    

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

  4. 执行如下命令,远程连接新服务器并为其安装YashanDB。

    $ yasboot host add -c yashandb -t hosts_add.toml
    
  5. 按需在新服务器上完成以下配置。

    • 若扩容前数据库已开启密钥管理功能且创建了加密对象,新服务器上也必须创建钱包文件的存放路径、将其他服务器上对应的TDE文件夹及其文件复制到该路径下、将钱包的根目录WALLET_ROOT参数配置为该路径

    • 若扩容前其他服务器均已配置开机自启动,新服务器也必须配置开机自启动

  6. 在上述生成配置文件的服务器上执行如下命令,增加实例。

    # 若扩容前数据库已开启密钥管理,则必须指定--wallet-password Your_keystore_password
    
    $ yasboot node add -c yashandb -t yashandb_add.toml
    

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

    $ yasboot task list -c yashandb --search type=NodeAdd
    
  7. (可选)备份数据库。

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

  8. 将hosts_add.toml中的[[host]]内容复制粘贴到hosts.toml的末尾,以免升级时仍用旧的hosts信息。

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