在关闭、重新引导 vSAN 群集中的主机或断开主机连接之前,必须将该主机置于维护模式。将主机置于维护模式时,必须选择数据撤出模式,例如确保可从其他主机访问数据或将所有数据撤出到其他主机。

使用维护模式时,请注意以下准则:

  • 将 ESXi 主机置于维护模式时,必须选择数据撤出模式,例如,确保可从其他主机访问数据或将所有数据撤出到其他主机。
  • 如果 vSAN 群集的任何成员主机进入维护模式,群集容量将自动减少,因为此时该成员主机不再向群集提供存储。
  • 虚拟机的计算资源可能不位于处于维护模式的主机上,而且虚拟机的存储资源可能位于群集中的任何位置。
  • 确保数据可访问性模式比撤出全部数据模式更快,因为确保数据可访问性仅从主机迁移对运行虚拟机至关重要的组件。处于此模式时,如果遇到故障,虚拟机的可用性将受影响。选择确保数据可访问性模式后,在故障期间不会重新保护数据,因此您可能会遇到意外丢失数据的情况。
  • 选择撤出全部数据模式时,如果资源可用,并且允许的故障数主要级别设置为 1 或更多,则会在出现故障时自动重新保护数据。处于此模式时,主机中的所有组件都会迁移,并且根据主机上的数据量,迁移可能需要较长时间。使用撤出全部数据模式时,即使在计划维护期间,虚拟机也可允许故障。
  • 使用三主机群集时,您无法使用撤出全部数据将服务器置于维护模式。可以考虑设计一个由四个或更多主机组成的群集,以实现最大可用性。

在将主机置于维护模式之前,必须验证以下内容:

  • 如果使用撤出全部数据模式,请确认群集中具有足够的主机和容量以满足允许的故障数主要级别策略要求。
  • 确认其他主机有足够的闪存容量来处理任何闪存读取缓存预留。可以通过运行 vsan.whatif_host_failures RVC 命令来分析当前每个主机的容量使用。此信息可帮助您确定单个主机故障是否可能会导致群集空间不足,以及是否可能会影响群集容量、缓存预留和群集组件。有关 RVC 命令的信息,请参见《RVC 命令参考指南》。
  • 确认其他主机上是存在足够的容量设备可以满足条带宽度策略要求(如果选择)。
  • 确保其他主机上有足够的可用容量来处理必须从进入维护模式的主机迁移的数据量。

超融合虚拟化资源池 vmware超融合实施方案_数据

确保可访问性(Ensure data accessibility from other hosts)

此为默认选项。在关闭主机电源或将主机从群集中移除时,vSAN 将确保此主机上的所有可访问的虚拟机均保持可访问状态。如果要将主机暂时移出群集(例如,为了安装升级)并计划将主机移回群集中,请选择此选项。如果要将主机从群集中永久移除,则此选项不适用。

通常,只需撤出部分数据。但是,撤出期间,虚拟机可能不再完全符合虚拟机存储策略。这意味着它可能无权访问其所有副本。如果主机处于维护模式且允许的故障数主要级别设置为 1 时出现故障,您的群集可能会出现数据丢失的情况。

如果您使用三个主机的群集或配置有三个故障域的 vSAN 群集,这将是唯一可用的撤出模式。

如果要将主机长时间从群集中取出或永久停用,则建议使用此模式。在存储I / O和网络活动方面,这是最耗时和最耗费资源的。
主机处于维护模式后,所有虚拟机仍然符合其存储策略(即下图的VM BA和B)

超融合虚拟化资源池 vmware超融合实施方案_超融合虚拟化资源池_02

迁移全部数据(Evacuate all data to other hosts)

在群集中存在足够的资源时,vSAN 会将所有数据撤离到群集中的其他主机,维护或修复受影响组件的可用性合规性,并保护数据。如果计划永久迁移主机,请选择此选项。如果从群集中的最后一个主机撤出数据,请确保将虚拟机迁移到其他数据存储,然后将主机置于维护模式。

此撤出模式导致出现大量数据传输并消耗大部分时间和资源。选定主机的本地存储上的所有组件都将迁移到群集的其他位置,以便主机进入维护模式时,所有虚拟机都将有权访问其存储组件,并仍能够符合分配的存储策略。

如果主机中含有数据的虚拟机对象不可访问且未完全撤出,该主机将无法进入维护模式。

当你希望暂时将主机从群集中取出时,出于各种原因(例如主机打补丁,DIMM更换,标准重新引导等)。如果你计划将主机快速恢复到群集中,那就没啥问题了。如果想永久删除主机或者它将要停机几天,例如现在不兼容的工作负载容易受到主机故障的影响,那么这样做 就不太合适的。

只需要部分数据分散,即使主机关闭,运行的虚拟机也可以保留对其存储的访问权限。一些虚拟机在迁移后可能不再符合其存储策略(即下图的VM B)。有多少将取决于故障域的大小,群集中的主机数量,vSAN对象的分布…所有具有主要容错级别(PFTT)= 0的对象仍将是合规的(即下图的VM A)

超融合虚拟化资源池 vmware超融合实施方案_linux_03

未撤出数据(No data evacuation)

vSAN 不会将任何数据从该主机中撤出。如果关闭主机电源或将主机从群集中移除,则某些虚拟机可能变得不可访问。
这个选项非常明显,但应谨慎使用!vSAN不会从主机迁移走任何数据。

  • 具有PFTT = 1或更大的所有对象将保持可访问(即下图的VM B)
  • 具有PFTT = 0并且本地驻留在该主机上的所有对象将变得不可访问(即下图的VM A)。这个地方应该小心,因为它可能会影响正在运行的虚拟机。维护模式UI将事先警告你将有多少对象无法访问

VMware VSAN群集中主机重启或关机

VSAN群集中主机关机
vCenter未部署在VSAN群集中
  1. 登陆vCenter
  2. 关闭所有打开电源的虚拟机
  3. 将所有vSan节点进行维护模式
  4. 在接入维护模式时选择“不迁移数据”,并取消选中“将关闭电源和挂起的虚拟机移动到群集中的其他主机上”复选框
  5. 待所有vSan节点进入维护模式后,使用vSphere Web Client关闭主机电源
vCenter 部署在VSAN群集中
  1. 登陆vCenter
  2. 关闭除vCenter虚拟机以外的其他所有虚拟机
  3. 最后关闭vCenter Server虚拟机.
  4. 使用vSphere Client、vSphere Host Client依次登陆每个vSan主机,将主机至于维护模式;
  5. 在确认模式时同样选择 “不迁移数据”,之后关闭所有vSan主机。命令行模式
esxcli system maintenancemode set -enable=true
VSAN群集中主机开机
  1. 打开所有vSan节点主机电源
  2. 如果vCenter未部署在VSAN群集中,则使用vSphere WebClient登陆vCenter Server将所有节点退出维护模式
  3. 如果vCenter部署在VSAN群集中,则使用vSphere Host Client、vSphereClient或命令行;使用vCenter所在节点主机退出维护模式,打开vCenter虚拟机电源。
  4. 退出维护模式命令如下:
esxcli system maintenancemode set -enable=false