Описание
Недоступно добавление бриджа по умолчанию через веб-интерфейс платформы.
Когда может возникнуть проблема:
- при ручной конфигурации сети узла;
-
при некорректном отображении статусов бриджей на вкладке "Настройки сети" для узлов кластера с двумя сетевыми интерфейсами. При наличии бриджа по умолчанию в интерфейсе отображается сообщение о его отсутствии: Для корректной работы сети на узле, добавьте бридж по умолчанию. При этом ссылка на добавление устройства отсутствует.
Исправлено в версии 2023.07.1. Для устранения ошибки рекомендуем обновиться до актуальной версии платформы.
Решение
Вмешательство в базу данных предполагает потенциальный риск. Мы не рекомендуем вносить ручные правки в базу, поскольку это может нарушить корректную работу платформы.
Перед внесением изменений в БД создайте резервную копию платформы.
Чтобы решить проблему, добавьте бридж по умолчанию через БД:
- Подключитесь к серверу с платформой по SSH.
-
Подключитесь к СУБД.
В связи с поэтапным переходом платформы на использование СУБД PostgreSQL, разные экземпляры VMmanager могут использовать разные СУБД:
- VMmanager Hosting — MySQL;
- VMmanager Infrastructure:
- для новых установок на ОС Astra Linux, начиная с версии VMmanager 2023.06.1 — PostgreSQL;
- в остальных случаях — MySQL.
Чтобы определить тип СУБД, выполните на сервере с платформой команду:
docker ps --filter name=pgsql
Пример ответаCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3213c5dc94d0 postgres:12 "docker-entrypoint.s…" 5 days ago Up 4 days 5432/tcp pgsql
Если вывод команды содержит информацию о контейнере, платформа использует PostgreSQL, если ответ пустой — MySQL.
MySQLdocker exec -it mysql bash -c "mysql isp -p\$MYSQL_ROOT_PASSWORD"
PostgreSQLdocker exec -it pgsql bash -c "psql -d isp"
-
Получите названия и id бриджей запросом:
SELECT id, name FROM vm_node_bridge WHERE node = <node_id> ;
ПоясненияПример вывода+----+-------+ | id | name | +----+-------+ | 97 | vmbr0 | +----+-------+ 1 row in set (0.00 sec)
-
Установите бридж по умолчанию запросом:
UPDATE vm_node_bridge SET is_default = 1 WHERE id = <bridge_id> ;
Пояснения -
Убедитесь, что бридж по умолчанию установлен корректно. Для этого выполните запрос:
select * from vm_node_bridge where node= <node_id>;
ПоясненияПример вывода*************************** 1. row *************************** id: 97 name: vmbr0 node: 64 ipv4: 10.10.10.10/24 ipv6: NULL state: enabled is_default: 1 is_main_network: 1 vlan: 111 take_slave_ip: 0
Строка is_default: 1 означает, что бридж установлен по умолчанию.