Итак, я пытаюсь настроить vswitch на своем кластере из 4 узлов. Мне удалось сделать мост на узле 1, но когда я применяю ту же конфигурацию к остальным узлам, они а) после перезагрузки ломаются и, похоже, не поднимаются, и б) выдают ошибку при выполнении /etc/init.d/networking restart. Причём, несмотря на это, когда интерфейсы были активны, они могли пинговать друг друга и имели доступ в интернет. Также, когда они могли пинговать, кластер ломался, и я не мог получить к нему доступ через веб-портал. Ниже приведены файлы /etc/network/interfaces для узла 1 (работающий) и узла 2 (остальные практически идентичны, за исключением разных IP-адресов).
David Herselman
Guest
0
21.11.2017 09:04:00
Просто оставляю это здесь для других. Установили Proxmox 5, обновились до 5.1 и ждали, пока клиент подпишет документы, чтобы мы могли активировать подписку. Тем временем добавили репозиторий «non-subscription» для обновления системы. После установки openvswitch и настройки всё работало, но сеть не запускалась при загрузке. Подписались на систему, а затем просто выполнили 'apt-get update; apt-get -y dist-upgrade' — обновились разные пакеты, и openvswitch заработал идеально. Вот содержимое нашего файла конфигурации /etc/network/interfaces:
PS: В Proxmox без подписки нет пакета net-tools (с ‘ifconfig’). Замена 'ifconfig ethX mtu 9000' на 'ip link set ethX mtu 9000' или вообще отказ от увеличения MTU не меняет ситуацию. PS: Не знаю, баг это или нет, но если добавить больше двух интерфейсов в bond с режимом active-backup, по крайней мере при использовании linux bridge, режим меняется на round-robin!
fabian
Guest
0
21.11.2017 09:24:00
В pve-enterprise никогда не бывает новых или дополнительных пакетов (всё наоборот: пакеты попадают в enterprise после более тщательного тестирования в no-subscription). net-tools не входит ни в один из репозиториев Proxmox, это часть стандартного Debian (но сейчас он уже не нужен, его заменил iproute2 с командами ip, ss и прочими). Возможно, твоя конфигурация репозиториев как-то сбилась, когда ты тестировал без подписки?
David Herselman
Guest
0
21.11.2017 09:37:00
Мы добавили и удалили следующее до и после подписки на коробку: Код: nano /etc/apt/sources.list # Репозиторий PVE pve-no-subscription от proxmox.com, НЕ рекомендуется для использования в продакшене deb stretch pve-no-subscription
В любом случае, теперь у нас есть простая политика: мы не выпускаем установленные Proxmox системы для клиентов, использующих их в рабочей среде, пока система не получит доступ к репозиторию с подпиской и не будет обновлена.
Znuff
Guest
0
03.12.2017 07:48:00
У меня такие же проблемы с openvswitch (с установленным репозиторием pve-no-subscription). Простой мост вроде такого: Code: auto vmbr0 allow-ovs vmbr0 iface vmbr0 inet manual ovs_type OVSBridge
не работает с openvswitch 2.7.0-2 из репозитория без подписки. Это свежая установка. Ещё то, что упоминал David про необходимость ifconfig — если посмотреть код /usr/share/openvswitch/scripts/ifupdown.sh, там внутри для поднятия и опускания интерфейсов используется именно ifconfig, несмотря на то, что ifconfig считается устаревшим, и пакет openvswitch-switch от него зависит. Я не уверен, стоит ли рисковать с подпиской, учитывая, что версия без неё не работает.
fabian
Guest
0
04.12.2017 10:42:00
Если вы не дадите больше информации, чем просто «не работает», будет трудно решить вашу проблему. Пожалуйста, предоставьте вывод команды 'pveversion -v', а также чёткое описание самой проблемы, включая любые сообщения об ошибках или ожидаемое поведение.
David Herselman
Guest
0
04.12.2017 15:44:00
Основная проблема, с которой мы столкнулись, заключалась в том, что OVS не запускался, скрипт инициализации сети в итоге тайм-аутился через 5 минут. Система не имела out of band управления, поэтому отладка была затруднена. Хотя мы всё-таки привезли систему к себе в офис... Ошибок нигде не фиксировалось, но я почти уверен, что в /etc/init.d были файлы ovs или openswitch. Очень возможно, что причина была в установленном пакете ovswitch для Debian, так как, возможно, мы запускали 'apt-get install xxx' до добавления репозитория 'no-subscription'... Я только что проверил это, установив PVE 5.1 как гостевую систему, и всё работает идеально... Вот мои заметки:
Установил PVE 5.1 как виртуальную гостевую систему (вложенная виртуализация сейчас отключена), затем после перезагрузки вошёл и выполнил: Code: apt-get update; apt-get -y dist-upgrade; apt-get autoremove; apt-get autoclean; echo -e "\n# PVE pve-no-subscription repository provided by proxmox.com, NOT recommended for production use\ndeb stretch pve-no-subscription" >> /etc/apt/sources.list apt-get update; apt-get -y dist-upgrade; apt-get autoremove; apt-get autoclean;
Всё собрано как и ожидалось. Вот подтверждение от OVS: Code: root@test-pve:~# ovs-vsctl show 28766dfd-e40d-4843-9eab-8a246fbd62a7 Bridge "vmbr0" Port "ens18" tag: 1 Interface "ens18" Port "vlan1" tag: 1 Interface "vlan1" type: internal Port "vmbr0" Interface "vmbr0" type: internal ovs_version: "2.7.0"
Znuff
Guest
0
04.12.2017 15:59:00
Для настройки бонда нужно минимум 2 порта. Команда: ovs-vsctl add-bond vmbr0 bond0 ens18 сообщит вам, что требуется минимум 4 аргумента (то есть 2 физических порта).
David Herselman
Guest
0
04.12.2017 16:11:00
Привет, Znuff. Всё верно. Я обнаружил свою ошибку, когда отправил ответ, а потом отредактировал его. Для тех, кому это может пригодиться, привожу рабочий конфигурационный файл интерфейсов при запуске OVS с bonded-интерфейсами:
@David Herselman, я не вижу пакет openv-switch в выводе pveversion -v. Это может быть по двум причинам: 1) пакет не установлен, 2) вы установили Debian-пакет, который не работает с proxmox-ve.
David Herselman
Guest
0
05.12.2017 09:15:00
Привет, Wolfgang. Вывод команды 'pveversion -v' в моём тесте был сделан до установки OVS. Моя обратная связь была, по сути, подтверждением того, что всё работает как положено, и что мои, а скорее всего и чужие проблемы, возникали из-за того, что мы устанавливали OVS до добавления репозитория no-subscription.
Повторяя тест из пункта #16 выше: если запускать 'apt-get install openvswitch-switch' до добавления репозитория no-subscription, возникает та же проблема, с которой мы сталкивались изначально.
Симптомы: установка Debian-пакета openvswitch не включает net-tools. Просто проверьте, работает ли команда 'ifconfig' (она должна работать, если это пакет openvswitch от Proxmox, так как они указывают его как зависимость и собирают пакет с ней).
Debian-пакеты можно определить так: Code: root@pve-test:~# dpkg -l | grep openvswitch ii openvswitch-common 2.6.2~pre+git20161223-3 amd64 Общие компоненты Open vSwitch ii openvswitch-switch 2.6.2~pre+git20161223-3 amd64 Реализация коммутатора Open vSwitch
Вот вывод при установке стандартных Debian-пакетов openvswitch: Code: root@pve-test:~# apt-get install openvswitch-switch Чтение списков пакетов... Готово Построение дерева зависимостей Чтение информации о состоянии... Готово Будут установлены дополнительно: libatomic1 openvswitch-common uuid-runtime Рекомендуемые пакеты: ethtool Будут установлены новые пакеты: libatomic1 openvswitch-common openvswitch-switch uuid-runtime
Чтобы затем исправить проблему: Code: dpkg --purge openvswitch-common openvswitch-switch; echo -e "\n# Репозиторий PVE pve-no-subscription от proxmox.com, НЕ рекомендуется для использования в продакшене\ndeb stretch pve-no-subscription" >> /etc/apt/sources.list; apt-get update; apt-get -y dist-upgrade; apt-get autoremove; apt-get autoclean; apt-get install openvswitch-switch;
Вот вывод при установке пакетов openvswitch от Proxmox: Code: Будут установлены дополнительно: libatomic1 net-tools openvswitch-common Рекомендуемые пакеты: ethtool openvswitch-datapath-module Будут установлены новые пакеты: libatomic1 net-tools openvswitch-common openvswitch-switch
Обратите внимание: 'net-tools'… И… всё работает…
Информация о пакетах от Proxmox: Code: root@pve-test:~# dpkg -l | grep openvswitch ii openvswitch-common 2.7.0-2 amd64 Общие компоненты Open vSwitch ii openvswitch-switch 2.7.0-2 amd64 Реализация коммутатора Open vSwitch