QEMU Guest Agent — это программа-демон, которая устанавливается на ВМ. QEMU Guest Agent обеспечивает выполнение команд на ВМ и обмен информацией между ВМ и узлом кластера.

VMmanager использует QEMU Guest Agent чтобы изменять сетевые настройки ВМ без перезагрузки. Если QEMU Guest Agent недоступен для платформы в течение пяти минут, VMmanager перезагрузит ВМ для применения настроек.

Чтобы управлять ВМ с ОС CentOS, в QEMU Guest Agent должна быть включена функция guest-exec.

Чтобы избежать незапланированного перезапуска ВМ, вы можете проверить статус QEMU Guest Agent перед изменением настроек. Это можно сделать на ВМ или узле кластера.

Диагностика на ВМ


  1. Подключитесь к ВМ по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.

  2. Определите статус QEMU Guest Agent:

    systemctl status qemu-guest-agent
    CODE

    Примеры ответов:

    QEMU Guest Agent запущен

    ● qemu-guest-agent.service - QEMU Guest Agent
       Loaded: loaded (/usr/lib/systemd/system/qemu-guest-agent.service; enabled; vendor preset: enabled)
       Active: active (running) since Вт 2021-08-10 05:25:54 UTC; 1 weeks 3 days ago
    CODE

    QEMU Guest Agent остановлен

    ● qemu-guest-agent.service - QEMU Guest Agent
       Loaded: loaded (/usr/lib/systemd/system/qemu-guest-agent.service; enabled; vendor preset: enabled)
       Active: inactive (dead) since Пт 2021-08-20 06:27:16 UTC; 2s ag
    CODE

    QEMU Guest Agent не установлен

    Unit qemu-guest-agent.service could not be found.
    CODE

Диагностика на узле кластера


  1. Подключитесь к узлу кластера по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
  2. Определите статус QEMU Guest Agent:

    virsh qemu-agent-command <vm_id>_<vm_name> '{"execute": "guest-info", "arguments": {}}'
    CODE
    <vm_id>_<vm_name> — имя файла ВМ, содержащее id и имя ВМ. Например, для ВМ с id 12 и именем test-vm имя файла должно быть 12_test_vm

    Если QEMU Guest Agent запущен, вы получите ответ вида:

    Фрагмент ответа в JSON

    {"return":{"version":"2.12.0","supported_commands":[{"enabled":true,"name":"guest-get-osinfo","success-response":true}
    CODE

    Если QEMU Guest Agent не запущен или остановлен, вы получите ответ вида:

    ошибка: Guest agent is not responding: QEMU guest agent is not connected
    CODE
  3. Для ВМ с ОС CentOS определите статус функции guest-exec: 

    virsh qemu-agent-command <vm_id>_<vm_name> '{"execute":"guest-info"}' --pretty | grep -B1 "guest-exec"
    BASH

    <vm_id>_<vm_name> — имя файла ВМ, содержащее id и имя ВМ. Например, для ВМ с id 12 и именем test-vm имя файла должно быть 12_test_vm

    Фрагмент ответа, если функция включена

    "enabled": true,
    "name": "guest-exec",
    CODE

    Фрагмент ответа, если функция выключена

    "enabled": false,
    "name": "guest-exec",
    CODE

Ошибка отображения макрокоманды «excerpt-include»

No link could be created for 'VMMAN:Как проверить и восстановить работу QEMU Guest Agent?'.