我在 VMWare 上运行了三台 Bash/CentOS7 客户机。它们都做同样的事情;我有三个客户机的唯一原因是容错因为这是关键软件。扩展不是问题。
我可以完全控制这些客户机,包括 root 访问权限,但对其主机完全不了解或控制。
我想验证我的三台客户机是否按照我的要求在单独的主机上运行。
如何从运行在主机上的客户机获取主机的 IP 地址和/或机器名称?
答案1
这就是虚拟化的美妙之处。它将虚拟机与其他虚拟机和主机分开。除非虚拟机管理程序中存在安全漏洞,否则您无法从客户机获取这些信息。
但是,您可以获取主机上运行的虚拟机列表。所有虚拟化软件都有一个命令行界面(如virsh
)和一个基于 Web 的 API,允许从协调基础架构的软件获取此信息。
答案2
检查虚拟机管理程序配置。就您而言,请查看 vSphere 中虚拟机现在的运行位置以及 DRS VM-VM 反亲和性规则。
在维护时段,通过强制关闭其中一台 VM 主机进行 HA 测试。理想情况下,服务甚至可以在 VM 启动到其他地方之前恢复。