Труконф возглавил рейтинг ВКС-разработчиков
Вернуться

Оптимальная настройка гипервизоров для развёртывания решений Труконф

7 мин.

В данной статье будет рассмотрено влияние настроек монопольных ресурсов виртуализации на работу сервера видеоконференцсвязи. Также мы дадим некоторые рекомендации по оптимальным настройкам гипервизоров для использования на них TrueConf Server.

Монопольные ресурсы при использовании виртуализации

Монопольные ресурсы — ресурсы хостовой машины (кластера), которые не перераспределяются между процессами при их использовании. Положительными сторонами данного подхода можно отметить стабильность процессов развёрнутых на хосте решений, поскольку все процессы выполняются до конца. Очевидными рисками в случае отказа от настройки монополизации ресурсов последует пониженная стабильность выполнения процессов развёрнутых на хосте решений.

Монопольными ресурсами являются все ресурсы, которые может передать хост для выполнения каких либо процессов на развёрнутых на нём решениях:

  • виртуальные потоки процессора (vCPU);
  • виртуальная оперативная память (vRAM);
  • виртуальные жёсткие диски.

Как итог, монопольный режим использования ресурсов — режим работы гипервизора, при котором общее количество виртуальных ресурсов не превышает количество физических.

Параметры влияющие на использование аппаратных ресурсов хостовой машины

Переподписка по vCPU — параметр, позволяющий выделять для виртуальных машин vCPU больше, чем имеется у физического сервера. Коэффициент переподписки отражает соотношение суммарного количества виртуальных потоков vCPU к физическим потокам кластера, для его расчёта достаточно разделить количество выделенных виртуальных потоков на количество потоков кластера (vCPU/pCPU). Данное решение применимо в случае, если виртуальные машины большую часть своего времени не используют 100% имеющихся у них ресурсов, тогда нагрузка на сервер не будет критичной.

Чтобы лучше понять как работает данный параметр представим, что в компании на каждого пользователя развёрнута виртуальная машина в которой он работает. Есть группа пользователей для которой характерно низкое потребление ресурсов виртуальных машин, они практически никогда не используют свои виртуальные машины на все 100%. При таком режиме использования коэффициент переподписки можно устанавливать больше 1, путём тестирования подобрав оптимальное значение.

Теперь обратная ситуация, при которой группа пользователей использует свои виртуальные машины почти на все 100%, причём довольно продолжительное время. В данном случае для обеспечения стабильности работы как виртуальных машин, так и кластера в целом необходимо установить коэффициент переподписки 1.

При развёртывании TrueConf Server мы не рекомендуем использовать переподписку по vCPU (то есть надо оставлять коэффициент равным 1) для достижения максимальной производительности кластера, что в свою очередь положительно скажется на качестве и стабильности видеоконференцсвязи.

Живая миграция — механизм переноса виртуальной машины с одного физического сервера на другой. При этом работа переносимой виртуальной машины не прерывается, её состояние полностью сохраняется, после переноса виртуальная машина продолжает свою работу, словно ничего не происходило.

При использовании TrueConf Server функционал живой миграции должен быть выключен ввиду вероятности сбоя при переносе ресурсов с одного физического сервера на другой.

Расписание фоновых процессов — параметр для контроля выполнения всех фоновых процессов: частоты и повтора выполнения, условия срабатывания и действия при срабатывании.

В данной статье мы рекомендуем использовать отдельную виртуальную машину для TrueConf Server для максимальной стабильности его работы. Также при данном подходе нет необходимости в дополнительной настройке кластера для оптимизации работы процессов. В дополнение ко всему обеспечивается наилучшая производительность и стабильность виртуальной машины с установленным на ней TrueConf Server.

MTU (Maximum Translation Unit) — максимальный размер пакета передаваемых данных. Значение MTU в 1500 байт в большинстве случаев является оптимальным, тогда время доставки каждого блока данных не является критичным, и одновременно сохраняется высокая скорость передачи данных через сетевой интерфейс. Правильная настройка данного параметра позволяет минимизировать потери пакетов данных во время видеосвязи.

В некоторых случаях может потребоваться задать особое значение MTU, например, в соответствии с настройками сетевого оборудования. Поэтому мы не может рекомендовать некое универсальное значение. Подробнее смотрите в руководствах к вашему оборудованию.

Маркировка трафика — параметр, позволяющий отслеживать входящий и исходящий трафики и тем самым повысить безопасность сети. Нежелательный трафик при этом отбрасывается или ограничивается в соответствии с заданными правилами. Позволяет оптимизировать трафик с помощью установки приоритетов. Например видеосвязь или IP-телефония требуют более высокой скорости обслуживания, по сравнению с рассылкой писем по электронной почте или просмотром веб-страниц.

Все разобранные выше параметры имеют влияние на работу видеосвязи: качество изображения и звука, частоту кадров и т.д. Далее рассмотрена их настройка для оптимизации работы TrueConf Server на популярных гипервизорах.

Настройка ресурсов на популярных гипервизорах

Переподписка по vCPU

KVM

В гипервизоре KVM переподписка по vCPU работает в автоматическом режиме. В случае превышения суммарного количества vCPU всех виртуальных машин относительно суммарного количества потоков хостовой машины будет выдано предупреждение о переподписке и возможном снижении производительности. Поэтому единственной мерой для предотвращения переподписки по vCPU является ручное контролирование распределения виртуальных потоков, чтобы коэффициент переподписки не был больше 1.

Во время создания новой и конфигурирования уже готовой виртуальной машины количество виртуальных потоков может превысить количество физических, поэтому при настройке виртуальных машин нужно быть бдительным в виду избежания сбоев.

Для создания виртуальной машины используется команда virt-install с набором параметров, их состав может отличаться в каждом отдельном случае. Пример простой команды для создания виртуальной машины:

Здесь мы разберём параметр --vcpus, при превышении значения относительно количества потоков хоста в терминале выводится предупреждение:

Для изменения параметров уже созданных виртуальных машин необходимо вносить изменения в их конфигурационный файл, он находится в директории /etc/libvirt/qemu/. Для открытия файла выполните команду вида:

где
[vmname] — имя виртуальной машины.

Найдите в файле строку:

<vcpu placement='static'>N</vcpu>

где
N — количество виртуальных потоков.

Измените значение N на необходимое и сохраните файл. Пример части содержимого файла конфигурации:

Обратите внимание, что при изменении параметров уже сконфигурированной машины никаких предупреждающих сигналов не поступит.

Xen

В случае гипервизора Xen по-умолчанию переподписка по vCPU недоступна т.к. активирована защита. Если попытаться запустить виртуальную машину с переподпиской по vCPU с включённой блокировкой, то она просто не запустится и появится диалоговое окно с сообщением об ошибке (если используется Xen с GUI):

либо сообщение об ошибке в терминале (если используется Xen без GUI):

В случае если защита от переподписки по vCPU отключена, то данная функция работает по аналогии с гипервизором KVM: в случае превышения суммарного количества vCPU над суммарным числом pCPU хостовой машины (кластера) будет выдано предупреждение о переподписке и возможном снижении производительности.

VMware ESXi

По умолчанию переподписка по vCPU отключена, но может понадобиться проверить настройки переподписки уже работающих кластеров. Для этого нужно включить планировщик распределённых ресурсов VMware (DRS):

  • Запустите веб-браузер и войдите в VMware vSphere Client.
  • Нажмите на Hosts and Clusters в панели навигации для перехода в список кластеров и хостов.
  • Нажмите правой кнопкой мыши на имя кластера, в контекстном меню нажмите Settings.
  • В открывшейся панели сверху перейдите во вкладку Configure, в ней перейдите в Service → vSphere DRS.
  • В конце строки vSphere DRS is Turned OFF нажмите EDIT.
  • В открывшемся окне Edit Cluster Settings нажмите на переключатель vSphere DRS.

Не выходя из окна Edit Cluster Settings перейдите во вкладку Additional Options, в пункте CPU Over-Commitment активируйте параметр Enabled. Для отключения переподписки в строке Over-commitment ratio установите коэффициент 1.

VirtualBox

В гипервизоре VirtualBox всё аналогично с KVM: переподписка по vCPU работает в автоматическом режиме, в случае превышения количества vCPU всех виртуальных машин относительно числа физических потоков кластера будет выдано предупреждение о переподписке и возможном снижении производительности, регулировка vCPU происходит вручную.

Hyper-V

В интерфейсе гипервизора Microsoft Hyper-V доступна отдельная вкладка для настройки vCPU и vRAM.

Для отключения переподписки перейдите в параметры виртуальной машины, во вкладке Оборудование, нажмите дважды на пункт Процессор (либо нажмите на + около пункта Процессор), нажатием перейдите в пункт NUMA, найдите и нажмите на кнопку Использовать аппаратную топологию. После этого параметры максимально выделяемых vCPU и vRAM примут значение кластера и не могут быть больше него.

MTU

Windows

Для настройки параметра MTU в ОС Windows достаточно выполнить несколько команд. Для начала нужно узнать текущее значение с помощью команды:

После этого измените значение исходя из ваших потребностей, выполнив команду вида:

где:

  • [network interface] — название сетевого интерфейса;
  • [value] — значение MTU в байтах.

Пример команды для изменения значения MTU на 1350 байт:

Linux

Для изменения параметра MTU необходимо внести изменения в файл dhclient.conf расположенный в директории /etc/dhcp/. Для изменения файла используйте команду:

Осталось добавить сразу после строки send host-name = gethostname (); следующее:

где:

[value] — значение параметра MTU в байтах.

Данные изменения повлияют на все сетевые интерфейсы системы, но если необходимо изменить значение MTU только для отдельно выбранных сетевых интерфейсов, добавьте текст следующего вида:

где:

  • [network interface] — название сетевого интерфейса;
  • [value] — значение MTU в байтах.

Пример текста, изменяющего значение MTU на 1350 байт для интерфейса enp1s0:

После внесения изменений сохраните и закройте файл. Для применения значений перезапустите сетевую службу с помощью команды:

Проверьте изменения с помощью команды:

Также следует упомянуть случай, в котором сеть конфигурируется с помощью netplan. Для изменения параметра необходимо изменить файл конфигурации .yaml, который расположен в директории /etc/netplan/. Файлов конфигурации может быть несколько, по умолчанию он один с названием 01-network-manager-all.yaml. Вы можете создать свой файл .yaml с новым названием и настройками сети. Пример исходного файла:

В данном случае изменим параметр MTU у сетевого интерфейса enp1s0. Для этого достаточно добавить под названием интерфейса текст:

В таком случаем параметр MTU интерфейса enp1s0 будет изменён на 1350. Итоговый текст файла конфигурации:

Для применения изменений выполните команды:

Для проверки изменений выполните:

Маркировка трафика

Windows

Маркировка трафика в ОС Windows регулируется с помощью компонента “Планировщик пакетов QoS”. Для маркировки пакетов достаточно включить планировщик пакетов и настроить правила маркировки.

  • Проверьте включён ли Планировщик пакетов QoS в свойствах сетевого интерфейса.
  • Если не включён, то в реестре Windows необходимо создать новую ветку HKLM\SYSTEM\CurrentControlSet\services\Tcpip\QoS со строковым параметром Do not use NLA и задайте ему значение 1.

У TrueConf Server на ОС Windiws приоритезация трафика уже настроена изначально, достаточно включить планировщик пакетов, как было описано выше. Подробнее с настройкой QoS для ОС Windows вы можете ознакомиться в нашей статье.

Linux

Маркировка трафика в ОС Linux для TrueConf Server происходит с помощью изменения следующих параметров:

  • QoS TC Stream Value — сигнальный трафик;
  • QoS TC Transport Value — медиа трафик.

Данные параметры нужно изменить в конфигурации сервера с помощью утилиты tc_regkey.

Сначала проверьте конфигурацию на наличие уже внесённых изменений касаемо маркировки трафика с помощью команды:

Возможно два варианта вывода терминала:

  • Пустой, говорит о том что в конфигурацию не вносились изменения маркировки трафика.
  • В случае если внесены какие-либо изменения в конфигурацию, вывод будет иметь следующий вид:
    ,QoS TC Stream Value, i32, 7

где:

  • QoS TC Stream Value — название параметра;
  • i32 — тип данных;
  • 7 — передаваемое значение.

Перед внесением изменений остановите службу сервера командой:

Например, для маркировки медиа трафика по умолчанию TrueConf Server использует значение 40. Чтобы задать другое значение, выполните команду:

где:

  • QoS TC Stream Value — название параметра, в данном случае это медиа трафик;
  • i32 — тип данных;
  • 50 — передаваемое значение приоритета трафика.

В случае настройки параметра отвечающего за маркировку сигнального трафика действия аналогичны, достаточно заменить QoS TC Stream Value на QoS TC Transport Value.

После внесения изменений возобновите работу службы командой:

Проверьте внесение изменений с помощью команды:

Предыдущая статья Следующая статья
Содержание

Попробуйте безопасную ВКС-платформу Труконф!

ВКС-решение TrueConf Server работает внутри вашей закрытой сети без подключения к интернету
и позволяет собирать до 1500 человек в одной конференции!

Труконф

Крупнейшее ВКС-сообщество в России

Живой диалог с разработчиками, помощь с настройкой ВКС-систем, полезные материалы, ранние доступы и бета-версии — всё в специальном чате @trueconf_talks.

Подписаться
Видео+Конференция

Актуальные новости из мира ВКС

Подписывайтесь на канал нашего информационного партнёра «Видео+Конференция», чтобы быть в курсе последних новостей в сфере видеоконференцсвязи и AV-оборудования.

Подписаться Перейти на сайт

Содержание