![通过命令行从 ESX 服务器访问 vm(vmware 实例)](https://linux22.com/image/539628/%E9%80%9A%E8%BF%87%E5%91%BD%E4%BB%A4%E8%A1%8C%E4%BB%8E%20ESX%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%AE%BF%E9%97%AE%20vm%EF%BC%88vmware%20%E5%AE%9E%E4%BE%8B%EF%BC%89.png)
我使用 ESX 服务器 3.5.0,并且通过克隆相同的虚拟机在此机器上创建了 32 个实例 (VM)。这些实例尚未连接到网络,但我已经配置了 ESX 服务控制台,并且它已连接到网络。我想从 ESX 控制台访问这些虚拟机实例。那么 ESX 控制台上是否有任何命令可以连接到这些虚拟机实例。
更具体的问题:
有没有办法从 ESX 控制台在所有虚拟机实例上执行相同的命令。例如,我想在所有虚拟机实例上执行“chkconfig --level 4 iptables off”命令。目前我所做的是转到每个单独的实例并执行此命令。有没有办法只在 ESX 上执行此命令,然后在所有实例上执行它。
答案1
通常,SC 位于“适当”的可路由网络上,以便进行管理,如果您希望 SC 以任何方式处理虚拟机(并且它是非常顺便说一句(这不是一个好主意),您需要将虚拟机放在与 SC 相同的网络上,或者放在可以从 SC 路由的网络上。
答案2
不,不是从 ESX 控制台。虽然这些是虚拟机,但并不意味着您可以从 ESX 端在其中执行批处理操作。您可能必须以与 32 台物理机相同的方式执行此操作 - pssh、puppet 等。
/edit - 忽略了虚拟机中尚未启用网络的事实。是的,所以@dunxd 的观点很正确 - 首先启用 DHCP,然后创建所有克隆,然后进行设置管理。就像您有 32 台物理机一样。
答案3
我认为您无法直接从 ESX 主机访问操作系统,而且在将这些计算机联网之前,您无法通过 SSH 在它们上运行命令。由于您要关闭 IP 表,因此我假设您没有实施要求在将它们连接到网络之前打开 IP 表(或任何防火墙)的安全策略。
因此,我建议打开网络,允许 DHCP 为每个主机配置 IP 地址和 DNS 条目,然后使用 SSH(通过脚本)执行配置任务。
Xen 中存在与您所想类似的功能,尽管这也需要网络连接来传输命令。