当我尝试使用 yum 更新 Windows Azure 中的 centos 时,出现以下内容:Linux Integration Services for Hyper-V 已被删除。请重新启动系统。
所以我重启了它。但之后我再也无法通过 ssh 进入我的虚拟机。端点肯定是开放的。有人知道发生了什么吗?或者除了 ssh-putty 之外还有其他方法可以管理虚拟机吗?
答案1
这可不妙。集成服务非常重要,而且没有其他方法可以访问您的虚拟机。您很可能必须从 blob 存储中下载 VHD(使用类似Azure 存储资源管理器) 并使用 Hyper-V(理想情况下)、VMWare 或 VirtualBox 本地启动它。
如果您的计算机对 ssh 不响应,通常除了下载、本地修复并将 VHD 上传回 Azure 之外没有其他恢复方法。要为在 Windows Azure 上运行的虚拟机管理程序配置 CentOS,需要遵循许多说明,因此您应该确保从此处安装所需的内容RPM 列表。该列表是通过 Microsoft 的列表找到的Windows Azure 上认可的 Linux 发行版适用的 RPM 很可能是最新的 WALinuxAgent(截至撰写本文时为 1.3.3),然后还应安装每个后续 RPM,尽管我不确定按照哪个顺序。
如果您运行的是低于 6.2 版本的 CentOS,则可能没有任何官方支持在 Azure 上运行,并且过去一年对 Azure 使用的虚拟机管理程序的更改(与 Windows Server 2012/Hyper-V Server 2012 相同)可能会使您的 VM 难以运行。如果可能的话,关键是将您的内核更新到存在反向移植的最新版本,并确保您运行的是最新的 Hyper-V (hv) 内核模块。如果您运行的是 CentOS 6.4 或更新版本,则集成组件似乎是内置的。