适用于:✔️ Linux VM
总结
Microsoft Azure Linux VM 代理是一个安全的轻型过程,用于管理与 Azure 结构控制器的虚拟机(VM)交互。 Azure Linux VM 代理在启用和运行 Azure VM 扩展方面具有主要角色。 利用 VM 扩展,可对 VM 进行部署后配置,例如,安装和配置软件。 VM 扩展还启用恢复功能,例如重置 VM 的管理密码。 如果没有 Azure Linux VM 代理,则无法运行 VM 扩展。
目的
Linux 版本的 VM 助手由 bash 和 Python 脚本组成,这些脚本用于检测影响 Linux VM 中的来宾代理的潜在问题。 它还会检查与 VM 的一般运行状况相关的其他问题。 输出应在串行控制台中查看。 它提供指针来解决常见问题,并纠正可能影响 VM 可用性的最佳实践的一些偏差。 目的是让工程师通过GitHub向客户提供此脚本。 客户可以自行使用脚本,并通过服务请求提供数据,这是可能且可接受的。
由于此脚本的输出设计为在Azure串行控制台的最坏情况中查看,因此显示的信息最小且精简。 详细信息通过通过输出中提供的链接访问的联机资源提供。 请参阅 适用于 Linux 的 VM 助手。
VM 助手通过两个功能脚本(一个用于 bash 和一个用于 python3)以及一个可选的“下载器”脚本提供。
bash 脚本执行一些基本检查,并确定运行Python脚本是可能的还是必要的。
主要功能
Bash 检查
今天在 bash 环境中运行以下检查:
- 操作系统家族检测
- 标识来宾代理服务
- 标识从服务调用的Python的路径 - 这将用于运行Python脚本
- 显示代理的包、包存储库,以及代理调用的Python程序
- 与线路服务器和 IMDS 的基本连接检查
如果 bash 脚本找到 python2 系统,脚本将退出并显示它收集的信息。
Python分析
如果在使用 bash 进行基本检查期间未发现任何问题,则会调用Python脚本来执行更深入的分析,其中包括以下任务:
- 查找来宾代理可执行程序的源(包),以及从 bash 传递的 Python。
- (可选)检查任何服务或包的状态(此概念验证当前在脚本内实现)
- 仅在概念验证中检查 SSH
- 为所有已检查的文件和服务提供源信息
- 对 Guest Agent 进行配置检查
- 来宾代理要求的连通性检查
- 基本系统配置和状态检查(#Guest 最佳做法)
先决条件
- VM 必须启动到完整的 OS(而不是紧急或维护模式)。
- 必须通过 sudo 或直接登录/sudo -i 获取根级访问权限
如何运行该工具
转到以下GitHub位置,按照此处的说明download、安装和运行该工具。 随后,可以直接运行 bash 脚本: vmassist.sh 作为根脚本或使用 sudo。
如果提出支持请求,请包括这两个文件,以帮助辅助你的支持代理。
已知问题
- 不要尝试在设备上运行 VM 助手。 设备不会在通用操作系统上运行,因此客户代理可能根本无法运行。
- 在 RedHat、SUSE、Ubuntu、Mariner 或 Azure Linux 以下支付即用(PAYG)版本之外的其他分发中,可能会显示有关存储库名称的错误正警告。 这种情况需要更仔细的阅读,因为即使是官方存储库也可能与严格的模式匹配不匹配。 该条件为真,因为我们不会为所有分发版创建用例。
- Ubuntu 24.04 具有不同的 SSH 服务体系结构。 它可能会对服务发出警告,即使服务运行良好。
第三方联系人免责声明
Microsoft提供第三方联系信息,可帮助你查找有关本主题的其他信息。 该联系信息可能会在不通知的情况下更改。 Microsoft不能保证第三方联系信息的准确性。