vSAN是VMware推出的用于vSphere系列产品、为虚拟环境优化的分布式可容错的存储系统。vSAN是VMware对ESXi主机本地存储设备(包括SSD与HDD)进行集中管理、空间分配使用的一种方式或一种新的技术。现在一些vSphere数据中心已经使用vSAN组成的分布式存储代替传统、专业的共享存储并获得了更好的性能。在使用vSAN存储的过程中,可能会出现一些“不可访问”的对象。虽然这些“不可访问”的对象对虚拟机的正常运行不会造成影响,但因为有“不可访问”对象存在,在正常的vSAN维护中或vSAN磁盘模式升级中,这些“不可访问”的对象不能迁移到其他主机会导致进入维护模式或升级vSAN磁盘格式失败。如果要解决这个问题,就需要强制删除这些“不可访问”的对象。下面通过具体的实例进行介绍。
(1)某4台ESXi主机组成的标准vSAN群集,在“监控→vSAN→运行状况”的“数据→vSAN对象运行状况”中有“不可访问”的对象,如图1-1所示。单击“立即修复对象”按钮无法修复。
图1-1 vSAN对象运行状况检查到不可访问对象
(2)这4台主机原来运行的是vSphere 6.7.0,vSAN磁盘格式是6.0版本,如图1-2所示。
图1-2 查看当前vSAN磁盘格式
(3)在将vSphere 6.7.0 升级到了6.7.0 U1(这包括了vCenter Server与4台ESXi主机的升级)后,准备升级vSAN磁盘格式。在“配置→vSAN→常规”中的“磁盘格式版本”中单击“预检查升级”按钮,预检查完成后出现错误,单击“详细信息”,如图1-3所示。
图1-3 预检查升级
(4)在“vSAN群集-升级预检查问题”提示“无法升级群集,对象……”,在此对话框中显示了无法访问的对象。如图1-4所示。用鼠标选中“无法升级群集,对象……”这些信息右键用鼠标右键单击复制这些信息并将信息保存在“记事本”中备用。
图1-4 vSAN中无法访问的对象
【说明】在图1-4中的信息为:
无法升级群集: 对象 db6f235b-b856-89dd-6324-0010181a9981, 6238115c-0828-2cc6-3dd3-b8aeedb7689f, c19a245b-f031-9b4f-9b10-b8aeedb7689f 在 vSAN 中无法访问。
(5)使用SSH客户端软件(例如xShell)登录到其中一台ESXi主机(需要在这台主机启动SSH服务),在登录到 shell 界面后,先执行cd /vmfs/volumes/vsanDatastore命令进入vSAN数据存储,然后使用objtool命令依次删除图1-4中无法访问的对象(记录对象的UUID)。
objtool在/usr/lib/vmware/osfs/bin/目录中,在图1-4中有3个不可访问的对象,其UID依次为:
db6f235b-b856-89dd-6324-0010181a9981
6238115c-0828-2cc6-3dd3-b8aeedb7689f
c19a245b-f031-9b4f-9b10-b8aeedb7689f
则在SSH中依次执行如下的命令(在vSAN数据存储根目录下):
/usr/lib/vmware/osfs/bin/objtool delete -f -u db6f235b-b856-89dd-6324-0010181a9981
/usr/lib/vmware/osfs/bin/objtool delete -f -u 6238115c-0828-2cc6-3dd3-b8aeedb7689f
/usr/lib/vmware/osfs/bin/objtool delete -f -u c19a245b-f031-9b4f-9b10-b8aeedb7689f
如图1-5所示。
图1-5 删除不可访问的对象
(6)在删除不可访问的对象后,在“配置→vSAN→常规”中单击“预检查升级”按钮执行升级前的检查,执行完成后提示预检查已成功完成,单击“升级”按钮,如图1-6所示。
图1-6 升级磁盘格式
(7)在“vSAN群集-升级”对话框中单击“是”按钮,如图1-7所示。
图1-7 升级
(8)升级完成后在“磁盘格式版本”中显示“版本7.0上的所有XX个磁盘”,如图1-8所示。
图1-8 升级完成
(8)在“配置 →vSAN→磁盘管理”中可以看到磁盘格式已经升级到7,如图1-9所示。
图1-9 磁盘格式升级完成
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Java删除ArrayList中的重复对象
- 026.Python面向对象类的相关操作以及对象和类的删除操作
- 为什么删除的Ceph对象还能get
- 为什么删除的Ceph对象还能get
- Kubernetes API 资源对象的删除和 GarbageCollector Controller
- c – 通过指向其基类的指针删除派生对象
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。