如何使用 Linux 操作系统 (OS) Azure Monitor 代理疑难解答
注意
本文引用了 CentOS,这是一个处于生命周期结束 (EOL) 状态的 Linux 发行版。 请相应地考虑你的使用和规划。 有关详细信息,请参阅 CentOS 生命周期结束指南。
Azure Monitor 代理 (AMA) 疑难解答旨在帮助识别代理的问题并执行常规运行状况评估。 它可以执行各种检查,以确保正确安装和连接代理,还可以从被诊断的计算机收集与 AMA 相关的日志。
备注
AMA 疑难解答是一个可执行文件,高于 1.25.1(适用于 Linux)的所有版本的代理都随附此文件。
Linux AMA 疑难解答要求在计算机上安装 Python 2.6+ 或 Python 3 版本。
若要检查计算机上是否安装了 python,请复制以下命令并在 Bash 中作为根运行:
sudo python -V
sudo python3 -V
可以安装多个版本的 Python 并设置别名 - 如果安装了多个版本,请使用:
ls -ls /usr/bin/python*
如果虚拟机使用的发行版默认情况下不包括 Python 3,则必须进行安装。 以下示例命令将在不同的发行版上安装 Python 3:
sudo yum install -y python3
此外,需要以下 Python 包才能运行(Python 2 或 Python 3 的默认安装应具有所有这些包):
Python 包 | Python 2 必需? | Python 3 必需? |
---|---|---|
copy | 是 | 是 |
datetime | 是 | 是 |
json | 是 | 是 |
os | 是 | 是 |
平台 | 是 | 是 |
re | 是 | 是 |
请求 | 否 | 是 |
shutil | 是 | 是 |
subprocess | 是 | 是 |
url lib | 是 | 否 |
xml.dom.minidom | 是 | 是 |
检查诊断的计算机上是否存在 AMA 代理疑难解答目录,以确认安装代理疑难解答:
/var/lib/waagent/Microsoft.Azure.Monitor.AzureMonitorLinuxAgent-{version}
若要验证是否存在 Azure Monitor 代理故障排除程序,请复制以下命令并在 Bash 中作为根运行:
ls -ltr /var/lib/waagent | grep "Microsoft.Azure.Monitor.AzureMonitorLinuxAgent-*"
如果目录不存在或安装失败,请按照基本故障排除步骤操作。
如果目录存在,请继续运行疑难解答。
在要诊断的计算机上,运行代理疑难解答。
日志模式启用日志收集,然后可将日志压缩为 .tgz 格式进行导出或评审。 交互模式允许用户积极参与故障排除方案,并直接在 shell 中查看输出。
若要在日志模式下启动代理疑难解答,请复制以下命令并在 Bash 中作为根运行:
备注
需要更新 {version} 以匹配已安装的版本号。 在下面的示例中,当前版本是 1.28.11。
cd /var/lib/waagent/Microsoft.Azure.Monitor.AzureMonitorLinuxAgent-{version}/ama_tst/
sudo sh ama_troubleshooter.sh -L
输入输出日志的路径。 例如,可能会使用 /tmp。
它运行一系列活动,并将 .tgz 文件输出到指定的输出目录。 请耐心等待此过程完成。
无法通过复制代理来使用疑难解答诊断旧版代理。 必须拥有最新版本的代理,才能正常运行疑难解答。