Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


flussonic:debian-linux-10-buster-operating-system-tuning-to-work-with-fussonic-media-server

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
flussonic:debian-linux-10-buster-operating-system-tuning-to-work-with-fussonic-media-server [28.09.2020 19:11] Алексей Максимовflussonic:debian-linux-10-buster-operating-system-tuning-to-work-with-fussonic-media-server [30.09.2020 16:33] (текущий) – [Производительность процессоров] Алексей Максимов
Строка 5: Строка 5:
 ---- ----
  
 +\\
 ==== Общая настройка сетевого стека ==== ==== Общая настройка сетевого стека ====
  
Строка 47: Строка 48:
  
 После внесения изменений в файл ''interfaces'', перезагрузим сервер и убедимся в том что значение параметра txqueuelen устанавливается так, как запланировано. После внесения изменений в файл ''interfaces'', перезагрузим сервер и убедимся в том что значение параметра txqueuelen устанавливается так, как запланировано.
 +
 +----
 +
 +\\
 +==== Отключение IPv6 ====
 +
 +Если в локальной сети не используется протокол **IPv6**, то можно отключить поддержку этого протокола на сервере.
 +Общий порядок отключения IPv6 на Debian описан в заметке [[unix-linux:debian:how-to-turn-off-ipv6-in-debian-linux|Как отключить IPv6 в Debian GNU/Linux]]
 +
 +После установки Flussonic Media Server, можно заметить, что в системе появляются новые TCP-прослушиватели для протокола IPv6, даже не смотря на то, что на уровне системы IPv6 выключен. Посмотреть все открытые порты можно командой:
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;">
 +# ss -lnptu | sort</pre></HTML>
 +
 +Чтобы отучить Flussonic от IPv6, можно откорректировать основной конфигурационный файл:
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># nano /etc/flussonic/flussonic.conf</pre></HTML>
 +
 +Здесь потребуется вписать либо определённый IPv4 адрес, на котором Flussonic должен слушать тот или иной порт, либо указать адрес вида ''0.0.0.0'', например следующим образом:
 +
 +<code bash>http 0.0.0.0:80;
 +https 0.0.0.0:443;
 +rtsp 0.0.0.0:554;
 +rtmp 0.0.0.0:1935;</code>
 +
 +Для вступления изменений в силу перезапускам службу **flussonic** и проверяем результат:
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># systemctl restart flussonic.service
 +# ss -lnptu | sort</pre></HTML>
 + 
 +
 +Отучить вспомогательную службу **flussonic-epmd** использовать IPv6 мне так и не удалось.
 +Теоретически, должно было хватить переопределения переменной ''ERL_EPMD_ADDRESS'' на уровне среды исполнения службы:
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># systemctl edit flussonic-epmd</pre></HTML>
 +
 +В открывшемся файле можно вписать:
 +
 +<code ini>[Service]
 +Environment=ERL_EPMD_ADDRESS=0.0.0.0</code>
 +
 +После сохранения заставим ситсему перечитать конфигурацию служб и проверим сводную текущую конфигурацию службы flussonic-epmd:   
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># systemctl daemon-reload
 +# systemctl cat flussonic-epmd</pre></HTML>
 +
 +Однако указанное переопределение службы желаемого эффекта не даёт. И этот вопрос пока остаётся открытым.
 +
 +----
 +
 +\\
 +==== Использование swap ====
 +
 +В документации к Flussonic Media Server можно встретить рекомендацию о полном отключении раздела подкачки **swap** (или файла подкачки). Однако есть мнение, что полностью отключать swap - ни есть хорошо. Вместо этого можно минимизировать размер раздела (или файла) подкачки и с помощью сторонних средств мониторинга ОС следить за уровнем использования подкачки. 
 +
 +При достаточном объёме ОЗУ на сервере Flussonic Media Server, swap использоваться не должен. Если же средства мониторинга указывают на факт использования swap, то следует увеличивать объём ОЗУ на сервере.  
 +
 +----
 +
 +\\
 +==== Производительность процессоров ====
 +
 +Для увеличения производительности серверной платформы **HPE ProLiant DL20 Gen10** выполним дополнительную настройку ну уровне микрокода сервера. Для этого на этапе инициализации аппаратной платформы, нажимаем **F9,** чтобы попасть в главное меню **System Utilities**.
 +
 +{{ :flussonic:pasted:20200929-094229.png }}
 +
 +Здесь последовательно переходим в разделы **System Configuration** > **BIOS/Platform Configuration** (**RBSU**) и значение параметра **Workload Profile** определяем как, **Custom**, чтобы у нас появилась возможность редактировать параметры электропотребеления.
 +
 +{{ :flussonic:pasted:20200929-093138.png }}
 +
 +Перейдём в раздел **Power and Perfomance Options** и значение опции **Power Regulator** выставим в режим повышенной производительности - **Static High Perfomance Mode**, а также отключим режимы **C-states**
 +
 +{{ :flussonic:pasted:20200929-093618.png }}
 +
 +Клавишей **F10** сохраняем сделанные изменения и выходим из RBSU.
 +
 +Помимо настройки аппаратной части сервера, нам потребуется выполнить настройку на уровне ОС **Linux**, где в конфигурации по умолчанию включён энергосберегающий режим (регулятор **scaling_governor** находится в режиме **powersave**).
 +Проверить это можно командой:
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
 +</br><font style="color:#B2B2B2;">powersave
 +powersave
 +powersave
 +powersave</font></pre></HTML>
 +
 +Текущую тактовую частоту процессорных ядер можем проверить командой:
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;">
 +# egrep '(MHz)' /proc/cpuinfo
 +</br><font style="color:#B2B2B2;">cpu MHz         : 1000.342
 +cpu MHz         : 1000.296
 +cpu MHz         : 1000.084
 +cpu MHz         : 1000.222</font></pre></HTML>
 +
 +Как видно из нашего примера, процессоры работают лишь на четверть от своей номинальной мощности.
 +Установить производительный режим работы можно командами типа: 
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
 +# echo performance > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
 +# echo performance > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
 +# echo performance > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor</pre></HTML>
 +
 +Проверим результат: 
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
 +</br><font style="color:#B2B2B2;">performance
 +performance
 +performance
 +performance</font></pre></HTML>
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># egrep '(MHz)' /proc/cpuinfo
 +</br><font style="color:#B2B2B2;">cpu MHz         : 3912.051
 +cpu MHz         : 3974.400
 +cpu MHz         : 3924.952
 +cpu MHz         : 3934.710</font></pre></HTML>
 +
 +Однако, изменённая нами конфигурация будет действовать только до перезагрузки сервера.
 +Чтобы настроить производительный режим работы процессора на постоянной основе, установим вспомогательный пакет:
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># apt-get install cpufrequtils</pre></HTML>
 +
 +Отредактируем конфигурационный файл ''cpufrequtils'', вписав туда нужным нам режим работы ''scaling_governor'':
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># nano /etc/default/cpufrequtils</pre></HTML>
 +
 +
 +<file bash cpufrequtils>GOVERNOR="performance"</file>
 +
 +После этого перезагрузим сервер и проверим результат уже знакомыми командами:
 +
 +<HTML><pre style="background:#5a5a62;color:#ffffff;padding:10px;border:0px;"># cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
 +# egrep '(MHz)' /proc/cpuinfo</pre></HTML>
  
  
flussonic/debian-linux-10-buster-operating-system-tuning-to-work-with-fussonic-media-server.1601309480.txt.gz · Последнее изменение: 28.09.2020 19:11 — Алексей Максимов

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki