XtremIO 升级问题
date
Jul 18, 2023
status
Published
slug
xtremio-troubeshooting-website
tags
Project
Tech
summary
xtremio-troubeshooting
type
Post
微码版本 | 升级后版本 |
6.3.3-8 | 6.4.0-36 |
升级过程中出现XMS Upgrade partition check error,尝试使用官网指定脚本create_partition-v1.0.7-s4.0.0.py_prm_en_US_1.gpg手工创建sda10 分区脚本执行成功,重启后仍然没有生成sda10分区
分析问题:
- 下载原xms版本6.3.8安装本地虚拟机,尝试本地虚拟机升级重现故障
- 尝试直接升级至6.4.0-36,失败提示信息如下
- 根据升级文档上传执行XtremIO Health Check Script 进行升升级前健康检查
执行后报错,怀疑由于在本地搭建,脚本由于加密方式上传无法确认
- 尝试root进去xms虚拟机,查看python原代码
发现HC及partition脚本都是通过gpg方式加密过的
- 分析脚本创建过程,在本地workstation环境中分步执行没有成功,也没有报错抛出,初步怀疑与磁盘空间有关
- 停止服务:停止
xtremapp-xms
、dossier-vol
和PostgreSQL
服务。 - 禁用交换分区:禁用
/var/common/xms_swapfile
上的交换分区。 - 卸载
/var/common/dossier-vol
:卸载/var/common/dossier-vol
。 - 解除所有关联的循环设备:使用
losetup -a
命令获取所有关联的循环设备,然后使用losetup -d
命令解除关联。 - 杀死使用
/var/common
的进程:使用fuser -m /var/common
命令获取使用/var/common
的进程 ID,然后使用kill
命令杀死这些进程。 - 卸载
/var/common
:卸载/var/common
。 - 检查
/var/common
文件系统并修复:使用fsck.ext4
命令检查/var/common
文件系统,并在需要时修复它。 - 缩小
/var/common
分区:使用resize2fs
命令缩小/var/common
分区。 - 创建新分区:根据
/var/common
分区的类型,创建新的逻辑分区或主分区和扩展分区,并在扩展分区中创建新的逻辑分区。 - 退出:退出脚本并返回成功或失败的退出代码。
create_new_partitions
函数的逻辑如下:处理建议:
由于xms是以虚拟机方式部署可考虑直接扩展磁盘大小手工创建一个sda10分区,再重新run hcs及upgrade,只需要创建的sda10分区≥20GB即可,判断的逻辑为HCS中以下代码块