Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Оплата
Новости
Доставка
Загрузки
Форум
Настройка
    info@proxmox.su
    +7 (495) 320-70-49
    Заказать звонок
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Телефоны
    +7 (495) 320-70-49
    Заказать звонок
    0
    0
    0
    Аспро: ЛайтШоп
    • +7 (495) 320-70-49
      • Назад
      • Телефоны
      • +7 (495) 320-70-49
      • Заказать звонок
    • info@proxmox.su
    • Москва, Бакунинская улица, 69с1
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Proxmox Виртуальная Среда
    [SOLVED]Proxmox VE 4.0 кластер - проблемы с мультикастом

    Форумы: Proxmox Виртуальная Среда, Proxmox Backup Server, Proxmox Mail Gateway, Proxmox Datacenter Manager
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    [SOLVED]Proxmox VE 4.0 кластер - проблемы с мультикастом, Proxmox Виртуальная Среда
     
    bkraegelin
    Guest
    #1
    0
    12.11.2015 09:05:00
    При обновлении моего кластера с версии 3.4 на 4.0 я столкнулся с серьезными проблемами с мультикастом. Мне потребовалось много усилий, чтобы найти решение. Решил поделиться этим здесь... Обновление с 3.4 на 4.0 также изменило коммуникацию кластера с уникастного UDPU на мультикаст. Поскольку наша сеть должна была поддерживать мультикаст, я ожидал, что проблем не будет. Но ничего не сработало. Симптомы: кластер не заработал, не было кворума. При тестировании с помощью "omping", как указано в справочном руководстве, я увидел полное исчезновение пакетов при мультикасте. Сетевые специалисты сказали мне, что наша сеть готова к мультикасту, так что кластер должен работать. Другие кластеры уже работают. Тесты: Использование отдельного коммутатора с отключенной IGMP-спецификацией показало, что мультикаст в Proxmox работает. Для теста я полностью переустановил все узлы кластера и подключил их обратно к обычному коммутатору. Теперь мультикаст работал частично. Тесты с "omping" показали, что теперь 2 из 3 серверов имеют мультикаст-соединение. Для более глубоких тестов я попробовал "tcpdump igmp". Это показало пакеты "IGMP query" от мультикаст-роутера на каждом узле, но только узлы, которые показали успех с мультикастом в "omping", также демонстрировали пакеты "IGMP report". Причина: интерфейс кластера был сконфигурирован как сетевой мост (интерфейс vmbrx). Сетевой мост имеет IGMP-спецификацию включенной по умолчанию, но не всегда надежно определяет мультикаст-роутер. Быстрое решение: отключите IGMP-спецификацию на сетевом мосту. Код: echo 0 >/sys/class/net/vmbrx/bridge/multicast_snooping. С этим исправлением коммуникация кластера заработала, и я получил кворум. Но почему же это не сработало, как ожидалось? И как я могу исправить это без побочных эффектов? Правильное решение: реальная проблема в том, что сетевой мост иногда не может надежно обнаружить мультикаст-роутер сам по себе. И поскольку пакеты "IGMP query" - это мультикаст-пакеты, они подавляются IGMP-спецификацией. Мне нужно было настроить мой мост так, чтобы он знал о порте, на котором находится мультикаст-роутер. Это делается путем настройки порта с "автоопределить мультикаст-роутер" на "принимать весь мультикаст-трафик". (Смотрите документы по сетевым мостам и IGMP-спецификации). В моем случае мультикаст-роутер находится вне моего сервера Proxmox, так что он находится за физическим интерфейсом ethy. Настроить этот интерфейс немного сложно, поэтому я создал для этого небольшой скрипт в /etc/network/if-up.d/multicastrouter. Код: # установка интерфейса мультикаст-роутера
    if [ "$MODE" = "start" ] ; then

     PORT=`basename \`find /sys/devices/virtual/net/$IFACE/brif | grep brif/\``
     SYS=`find /sys/devices -name multicast_router | grep $PORT`

     echo 2 >$SYS
    fi. Теперь мой интерфейс кластера получает пакеты "ICMP query" и отвечает с помощью пакетов "IGMP report". Таким образом, мост и внешний коммутатор знают о мультикаст-трафике. Надеюсь, это поможет другим, у кого есть похожие проблемы. Биргер
     
     
     
    Aaron Smith
    Guest
    #2
    0
    11.03.2016 19:29:00
    Спасибо! Я просто рвал на себе волосы, пытаясь заставить свой кластер работать!
     
     
     
    minifig
    Guest
    #3
    0
    11.03.2016 22:13:00
    Мой кластер тоже испытывает проблемы... Я думаю, что это связано с мультикастом. Когда он начинает работать... он просто начинает работать или вам приходится перезапускать сервис или систему?
     
     
     
    Aaron Smith
    Guest
    #4
    0
    27.04.2016 00:20:00
    Я написал bash-скрипт, который выполняет перезапуск кластера и исправление мультикастинга. Я использую его всякий раз, когда у меня возникают проблемы с узлами. Код: #!/bin/bash echo "Это автоматизированный скрипт перезапуска кластера, вам нужно запустить его на других узлах." echo "Начинаю: Проверка правильности настройки мультикастинга" eval 'echo 0 >/sys/class/net/vmbr0/bridge/multicast_snooping' echo "Готово" echo "Начинаю: Запуск скрипта перезапуска кластера" eval '/etc/init.d/pve-cluster restart' echo "Готово" echo "Начинаю: Запуск скрипта перезапуска pvedaemon" eval '/etc/init.d/pve-cluster restart' echo "Готово" echo "Начинаю: Запуск скрипта перезапуска pve-manager, это обычно занимает больше времени" eval '/etc/init.d/pve-cluster restart' echo "Готово" echo "Похоже, что все прошло успешно, запустите это на других узлах, вы должны восстановить кворум"
     
     
     
    Stefan Partner
    Guest
    #5
    0
    14.11.2016 09:50:00
    Я только что столкнулся с этой проблемой, и ДА, просто изменение multicast_snooping на мосту решает проблему, и куорум был восстановлен. Запуск следующего кода на всех узлах решает проблему: Код: echo 0 >/sys/class/net/vmbr0/bridge/multicast_snooping
     
     
     
    Stefan Partner
    Guest
    #6
    0
    14.11.2016 09:54:00
    У вас здесь хорошо задокументирован скрипт, но он не выполняет то, что указано в комментариях. Несмотря на ваши комментарии, вы всегда перезапускаете одну и ту же службу (pve-cluster), но никогда не pvedaemon и не pve-manager. Тем не менее, это все равно может сработать, потому что важная часть — это строка 3: Код: eval 'echo 0 >/sys/class/net/vmbr0/bridge/multicast_snooping'. Учитывая, что связь кластера происходит через linux bridge и вы ссылаетесь на правильный мост, выполнение этой команды на всех узлах решило проблему кворума в моем 3-узловом кластере.
     
     
     
    lifeboy
    Guest
    #7
    0
    20.06.2018 13:18:00
    Ваш скрипт для Proxmox 5 должен быть более похож на: Код: #!/bin/bash
    echo "Это автоматизированный скрипт перезапуска кластера, вам нужно будет запустить его на других узлах."
    echo "Начинаем: Проверяем, что мультикаст настроен правильно"
    eval 'echo 0 >/sys/class/net/vmbr0/bridge/multicast_snooping'
    echo "Готово"
    echo "Начинаем: Запускаем скрипт перезапуска кластера"
    eval 'service pve-cluster restart'
    echo "Готово"
    echo "Начинаем: Запускаем скрипт перезапуска pvedaemon"
    eval 'service pvedaemon restart'
    echo "Готово"
    echo "Начинаем: Запускаем скрипт перезапуска pve-manager, это обычно занимает больше времени"
    eval 'service pve-manager restart'
    echo "Готово"
    echo "Похоже, что это сработало, запустите это на других узлах, вы должны восстановить кворум." Однако, pve-manager больше не является сервисом...?
     
     
     
    dcsapak
    Guest
    #8
    0
    20.06.2018 13:53:00
    Зачем ты хочешь перезапустить pve-manager? Это лишь приведет к перезапуску всех виртуальных машин. Единственные сервисы, которые имеют значение для кластера/кворума — это corosync и pve-cluster.
     
     
     
    Страницы: 1
    Читают тему
    +7 (495) 320-70-49
    info@proxmox.su

    Конфиденциальность Оферта
    © 2026 Proxmox.su
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры