YugabyteDB集群无停机扩容磁盘及挂载点空间的操作步骤咨询
YugabyteDB 5节点(RF3)离线环境磁盘在线扩容步骤
以下是不中断服务的逐节点扩容操作流程,一次仅操作一个节点,确保集群副本可用性:
单节点操作流程
- 标记节点为只读状态,阻止新副本分配到该节点:
yb-admin change_node_status <节点IP:tserver服务端口(默认9100)> READ_ONLY- 迁移该节点上所有tablet副本至其他健康节点:
yb-admin move_all_tablets_from_node <节点IP:tserver服务端口>- 等待迁移完成,验证该节点无剩余tablet副本:
输出为空则说明迁移完成。yb-admin list_tablets | grep <节点IP>- 停止当前节点的tserver进程:
# 若用systemd管理 systemctl stop yb-tserver # 若用自定义启停脚本,执行对应停止命令- 执行磁盘扩容操作:
- 先在存储层面完成磁盘扩容(如RAID扩容、物理磁盘替换扩容等,根据本地存储架构操作)
- 扩展挂载点的文件系统:
- 若为ext4文件系统:
resize2fs /dev/[挂载设备名] - 若为XFS文件系统:
xfs_growfs [挂载点路径]
- 若为ext4文件系统:
- 启动tserver进程:
# 若用systemd管理 systemctl start yb-tserver # 若用自定义启停脚本,执行对应启动命令- 恢复节点为正常状态,允许接收新副本:
yb-admin change_node_status <节点IP:tserver服务端口> ALIVE- 等待节点重新加入集群,可手动触发副本均衡(可选,集群会自动均衡,手动加速可执行):
yb-admin rebalance_all_tablets
整体操作注意事项
- 严格按顺序逐节点操作,完成一个节点的全部流程后再操作下一个,禁止同时操作多个节点
- 操作前备份节点的YugabyteDB配置文件(如
yb-tserver.conf) - 确保
--fs_data_dirs配置的挂载点路径与扩容后的路径一致(仅扩容空间无需修改配置) - 全程监控集群状态,可通过
yb-admin list_all_masters和yb-admin list_all_tablets确认集群健康
内容的提问来源于stack exchange,提问作者dh YB
相关产品推荐
相关产品推荐

