Как использовать средство устранения неполадок агента Azure Monitor для операционной системы Linux

Внимание

В этой статье упоминается CentOS — дистрибутив Linux, достигший конца жизненного цикла (EOL). Учитывайте свое использование и планируйте соответственно. Дополнительные сведения см. в руководстве centOS End Of Life.

Средство устранения неполадок агента Azure Monitor (AMA) помогает выявлять проблемы агента и выполнять общие оценки работоспособности. Он проверяет, установлен ли агент и корректно ли он подключен, а также собирает журналы AMA с диагностируемого компьютера.

Примечание.

Средство устранения неполадок AMA — это исполняемый файл, поставляемый вместе с агентом для Linux во всех версиях новее 1.25.1.

Предварительные условия

Требование общедоступной конечной точки

Для правильной работы средства устранения неполадок Linux AMA требуется доступ к следующей общедоступной конечной точке: https://docs.microsoft.com/en-us/azure/azure-monitor/agents/azure-monitor-agent-extension-versions

Средство использует этот URL-адрес для получения последних сведений о версии агента Azure Monitor (AMA). Убедитесь, что исходящее подключение к этой конечной точке разрешено из среды, в которой выполняется средство. Отсутствие доступа может привести к тайм-аутам или сбоям при устранении неполадок.

Требование Python

Для устранения неполадок Linux AMA требуется Python 2.6 или любая версия Python 3 , установленная на компьютере.

Чтобы проверить, установлен ли Python на компьютере, скопируйте следующую команду и выполните в Bash от имени суперпользователя.

sudo python -V
sudo python3 -V

Снимок экрана: команды для проверки версии Python в Linux.

Можно установить несколько версий Python и создать для них псевдонимы — если установлено несколько версий, используйте:

ls -ls /usr/bin/python*

Снимок экрана: команда для проверки нескольких версий Python для Linux.

Если виртуальная машина использует дистрибутив, который не включает Python 3 по умолчанию, необходимо установить его. Следующие примеры команд устанавливают Python 3 в разных дистрибутивах:

sudo yum install -y python3

Кроме того, для выполнения необходимы следующие пакеты Python (все они должны присутствовать на установке Python 2 или Python 3 по умолчанию):

Пакет Python Требуется для Python 2? Требуется для Python 3?
копия да да
дата/время да да
JSON (формат обмена данными JavaScript) да да
ОС да да
платформа да да
по поводу да да
запросы нет да
shutil да да
подпроцесс да да
URL lib да нет
xml.dom.minidom да да

Проверка существования средства устранения неполадок

Проверьте, существует ли каталог средства диагностики агента AMA на компьютере, который требуется диагностировать, чтобы подтвердить его установку.

/var/lib/waagent/Microsoft.Azure.Monitor.AzureMonitorLinuxAgent-{version}

Чтобы проверить наличие средства устранения неполадок агента Azure Monitor, скопируйте следующую команду и выполните её в Bash от имени суперпользователя (root).

ls -ltr /var/lib/waagent | grep "Microsoft.Azure.Monitor.AzureMonitorLinuxAgent-*"

Снимок экрана: окно Bash, в котором показан результат команды ls для каталога установки AMA.

Если каталог не существует или установка не выполнена, выполните основные действия по устранению неполадок.

Если каталог существует, перейдите к запуску средства устранения неполадок.

Запуск средства устранения неполадок

На компьютере, подлежащем диагностике, запустите диагностику агента.

Режим журнала включает коллекцию журналов, которые затем можно сжать в формат TGZ для экспорта или проверки. Интерактивный режим позволяет пользователям активно участвовать в сценариях устранения неполадок и просматривать выходные данные непосредственно в оболочке.

Чтобы запустить средство устранения неполадок агента в режиме журнала, скопируйте следующую команду и выполните в Bash от имени root.

Примечание.

Необходимо обновить {version} в соответствии с установленным номером версии. В следующем примере версия — 1.28.11.

cd /var/lib/waagent/Microsoft.Azure.Monitor.AzureMonitorLinuxAgent-{version}/ama_tst/
sudo sh ama_troubleshooter.sh -L

Введите путь к выходным журналам. Например, можно использовать /tmp.

Он выполняет ряд действий и выводит TGZ-файл в указанный выходной каталог. Будьте терпеливы, пока этот процесс не завершится.

Снимок экрана: окно Bash, в котором показан результат выполнения AgentTroubleshooter с параметром -L для создания журналов.

Вопросы и ответы

Можно ли скопировать средство устранения неполадок с более нового агента на более старого агента и запустить его на более старом агенте для диагностики проблем на более старом агенте?

Средство устранения неполадок нельзя использовать для диагностики более старой версии агента путем его копирования. Агент должен быть обновлен для правильной работы средства устранения неполадок.

Следующие шаги