0x01 前言

因为我的服务器是放在家里,虽然有UPS,但遇到长时间停电还是需要停机。当服务器重新启动时则需要虚拟机自行启动,而启动的顺序非常重要。

因为服务器中的虚拟机实现了不同的功能,例如路由器、NAS、数据库和web服务器等等。而不同服务依赖DNS解析来通讯,所有数据则需要存储在NAS中。所以启动顺序为:

  1. 路由器
  2. NAS
  3. 数据库
  4. web服务器
  5. … …

0x02 esxi

在esxi 6.5中,不再支持vsphere client,取而代之的是vsphere web client。在没有vcenter的情况下,使用html5技术的vsphere web client只提供了有限的功能。

配置自动启动顺序这一功能在vsphere web client中显得非常不便。

首先通过以下地址登入控制面板:

https://10.1.1.11/ui/#/host/vms

右击上方菜单,在“选择列”一项中分别勾选“自动启动顺序”、“启动延迟”、“停止延迟”,随后即可在选框中看到相关内容。

在vsphere web client中只能通过提高或降低虚拟机自动启动的优先级来调整启动顺序:

右击虚拟机并在“自动启动”选项中按需点击“提升优先级”或“降低优先级”。

但是启动或停止延迟不能在这个界面中单独设置,只能在“管理” -> “自动启动”选项中进行统一配置:

0x03 vcenter

vcenter中的功能比vsphere web client更为完整,首先登入到vcenter,然后进入主机的配置界面:

单击右上角的“编辑”即可打开设置界面:

  • “系统影响”:如果勾选,则启用自动启动功能
  • “启动延迟”:所设置的数值为虚拟机自动启动的间隔时间
  • “关机延迟”:所设置的数值为虚拟机自动关闭的间隔时间
  • “关机操作”:当主机关机时,虚拟机所进行的操作,如果选择“关闭电源”则不会受“关机延迟”设置影响

如果需要调整启动顺序或者禁止自动启动,只需要选中需要调整的虚拟机,然后点击上下箭头即可。

如果需要修改“启动延迟”、“关机延迟”或“关机操作”等参数,只需要双击目标项即可修改。如果不修改则采用上方的默认设置:

0x04 结语

vcenter所占用的资源非常巨大。我的服务器仅有96G内存,而vcenter最少需要10G的内存,平常我一般不会将这个虚拟机打开。我估计vmware向往cloud的方向走,所以把vsphere client客户端停用了,导致我不得不安装vcenter以获取更完整的功能。

对于kvm,如果想自动启动虚拟机则需要自己编写脚本。