扩容主机:扩容主机时要确保新主机的IP不在集群,IP不冲突且在同一个网段内,主机节点个数未达到上限50个。
注意事项:
场景一:主机2扩3扩容前检查事项
1.1. 检查所有虚拟机和网络设备全部关闭。(2扩容3才需要关闭虚拟机,3扩N不需要)
命令:cat /cfs/nodes/cluster/vmstatus.info |grep -v stopped
结果:在任一台主机执行上述命令,当有输出running或suspend等字段时,说明有虚拟机正在运行或挂起,此时不允许扩容;当没有输出时,说明所有虚拟机都是关闭的,可以扩容。
1.2. 检查所有文件没有bad属性
命令:vs_cluster_cmd.sh e "/sf/vs/bin/vs_localhost_checkok.js ; echo \$?"
结果:在任一台主机执行上述命令,当所有主机都返回0时,表示副本都是正常的,没有bad属性。
1.3. 检查所有文件没有指控信息
命令:vs_cluster_cmd.sh e '/sf/vs/bin/vs_ab_check_changelog.sh ; echo $?'
结果:当所有主机都返回0时,表示都没有指控;如果有主机返回1,则表示该主机的文件有指控信息,需要执行脚本:/sf/vs/bin/vs_ab_delete_changelog.sh清除指控信息。
场景二:主机3扩4扩容前检查事项
检查所有文件没有bad属性
命令:vs_cluster_cmd.sh e "/sf/vs/bin/vs_localhost_checkok.js ; echo \$?"
结果:在任一台主机执行上述命令,当所有主机都返回0时,表示副本都是正常的,没有bad属性。
扩容磁盘:
扩容磁盘原理,如下图所示:
相关日志文件:
/sf/log/today/vs/scripts/vs_disk_format.sh.log---磁盘格式化日志
/sf/log/today/vs/scripts/vs_diskpart.sh.log---具体格式化操作日志
/sf/log/today/vs/scripts/vs_create_partition.sh.log---分区创建日志
/sf/log/today/vs/scripts/vs_cache_format.sh.log---缓存盘格式化日志
/sf/log/today/vs/scripts/vs_partition_mount.sh.log---分区挂载日志
/sf/log/today/vs/scripts/vs_brick_create.sh.log---Brick创建日志
/sf/log/today/vs/scripts/vs_brick_expand.sh.log---Brick扩容日志
扩容失败时,主要查看vs_diskpart.sh.log和vs_brick_expand.sh.log日志。
扩容缓存盘:

添加缓存盘失败,主要查看vs_diskpart.sh.log和vs_cache_format.sh.log日志。
前提:已经创建了虚拟存储卷
场景1. 主机没有缓存盘,新增1块或多块后,不需要调整brick分布。
场景2. 主机有1块或多块缓存盘,新增1块或多块后,需要调整brick分布。
注意事项:
1、调整brick分布,需要关闭所有虚拟机会影响业务。
2、vs2.3及之前的版本需要手动调整。
3、vs2.6及之后的版本可通过运行脚本vs_realloc_brick.sh自动调整。