База знаний VMmanager

Известные проблемы

ВМ не запускается с ошибкой "can't add memory device"

Описание

При "горячем" изменении ресурсов ВМ (без перезагрузки) в описание ВМ добавляется дополнительное устройство памяти. В некоторых случаях это устройство может препятствовать запуску ВМ.

Подробнее об изменении ресурсов ВМ без перезагрузки см. в статье Тонкая настройка виртуальных машин документации VMmanager.

Проблема возникает после "горячего" изменения ресурсов ВМ:

  1. Пользователь выполняет остановку ВМ.
  2. ВМ не запускается с ошибкой can't add memory device.

Чтобы увидеть полный текст ошибки:

  1. Перейдите в раздел Виртуальные машины и выберите ВМ.
  2. В столбце Состояние нажмите на статус Остановлена.
  3. В появившемся окне нажмите Подробнее:
  4. Нажмите Ошибка в столбце Событие. Это отобразит полный текст ошибки:

    libvirt.libvirtError: internal error: qemu unexpectedly closed the monitor: 2023-10-28T22:56:25.564740Z qemu-kvm: -numa node,nodeid=0,cpus=0-239,mem=12288: warning: Parameter -numa node,mem is deprecated, use -numa node,memdev instead
    2023-10-28T22:56:25.577453Z qemu-kvm: -device pc-dimm,node=0,memdev=memdimm0,id=dimm0,slot=0,addr=1234567: can't add memory device [0x1c0000000:0x180000000], usable range for memory devices [0x340000000:0xf880000000]

Решение

Чтобы решить проблему:

  1. В платформе перейдите в раздел Виртуальные машины.
  2. Выберите ВМ → кнопка Параметры раздел Тонкие настройки.
  3. Отключите опцию Добавлять ресурсы без перезагрузки VM.
  4. Нажмите Изменить и перезапустить. Поскольку ВМ остановлена, перезапуск не произойдёт.
  5. Запустите ВМ.
Внимание
Если в дальнейшем вам потребуется производить "горячее" добавление ресурсов, установите опцию Добавлять ресурсы без перезагрузки VM и нажмите Изменить и перезапустить.

Не работает платформа после обновления до версии 2023.09.1

Описание

При обновлении до версии 2023.09.1 командой

vm update

или установке платформы версии 2023.09.1 могут возникать ошибки, связанные с docker. Например, ошибка при пересоздании контейнеров:

ERROR: for vm_box  Renaming a container with the same name as its current name
ERROR: for vm_box  Renaming a container with the same name as its current name
Encountered errors while bringing up the project.
fail

Характерные признаки проблемы:

  • частично или полностью недоступен интерфейс платформы;
  • операции с контейнерами выполняются частично или не выполняются;
  • установка платформы завершается ошибкой:

    Configuring Docker ... done
    Checking docker version ... done
    Pulling images ... fail
    exit status 1

    При анализе лога  установки install.log выявляются проблемы с docker или отсутствие модуля compose.

    Пример ошибки docker
    2023/08/16 13:10:24 Running command 'systemctl restart docker'
    Job for docker.service failed because the control process exited with error code.
    Пример ошибки compose
    Traceback (most recent call last):
     File "/usr/local/bin/docker-compose", line 5, in <module>
     from compose.cli.main import main
    ModuleNotFoundError: No module named 'compose'

Указанная проблема связана с docker и решается установкой docker-compose версии v2.

Решение

Чтобы решить проблему:

  1. Подключитесь к серверу с платформой по SSH.
  2. Загрузите и установите docker-compose командой

    curl -SL https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

На новом узле не устанавливается служба gomon

Описание

Подключение узла не работает корректно. После подключения нового узла возможно следующее некорректное поведение:

  • ложные сообщения об ошибках. Например, #5344 Недостаточно RAM на узле, в то время, как показатель RAM соответствует требованиям;
  • не обновляется информация о версиях libvirt и qemu;
  • не создаются ВМ на этом узле;
  • недоступна миграция ВМ на этот узел;
  • другие проблемы на новом узле.

Причина этого в том, что при подключении нового узла не установилась служба gomon. Gomon — служба, которая запускается на узле и отвечает за статистику и мониторинг.

Чтобы проверить статус службы gomon, выполните команду на узле:

systemctl status gomon

Если служба не установлена, вывод будет таким:

Unit gomon.service could not be found.

Решение

Чтобы решить проблему:

  1. Подключитесь к серверу с платформой по SSH.
  2. Перезапустите контейнер nodewatch:

    docker stop nodewatch
    docker start nodewatch

    После перезапуска подождите примерно 10 минут. За это время служба gomon установится на узле.

  3. Подключитесь к серверу узла по SSH.
  4. Проверьте статус службы gomon:

    systemctl status gomon
  5. Перезапустите службу gomon:

    systemctl restart gomon
    Если проверить узел, не выполнив рекомендованное ожидание 10 минут после перезапуска nodewatch, результаты могут отобразиться некорректно.

После этого новый узел будет подключён без ошибок.

Ошибка #5349 Нет соединения с узлом 

Описание

Стандартно указанная ошибка возникает при отсутствии связи с узлом. Но в версии 2023.07.1 появляется ложное сообщение об ошибке #5349, когда пользователь выполняет любые действия с ВМ, которые не связаны с узлом. Например, ложное сообщение об ошибке #5349 может появиться при смене конфигурации или включении ВМ.

Решение

Чтобы устранить ошибку:

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

    docker exec -it vm_box supervisorctl restart monitor