Oracle опубликовал систему автоматической оптимизации параметров ядра Linux

Автор Сообщение
news_bot ®

Стаж: 6 лет 3 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
29-Июн-2023 13:58

Компания Oracle представила инструментарий bpftune, предназначенный для автоматической оптимизации настроек ядра Linux с учётом выполняемых задач, активности в системе и характера нагрузки. Основу bpftune составляет фоновый процесс, работающий в пространстве пользователя и использующий подсистему ядра BPF. Код проекта написан на языке Си и распространяется под лицензией GPLv2.
В качестве причины создания проекта упоминается потребность в оптимизации самодостаточных систем, рассчитанных на работу с минимальным вмешательством администратора, а также увеличение сложности современного ядра, что повышает трудоёмкость ручных оптимизаций (ядром предоставляется более 1500 sysctl-параметров, влияющих на производительность и потребление ресурсов, и часто администратор просто копирует готовые рецепты, детально не вникая в их суть и надеясь, что они помогут).
Bpftune осуществляет непрерывный мониторинг состояния системы, адаптивно корректирует влияющие на производительность параметры ядра и оценивает изменение поведения для достижения оптимального результата. Благодаря BPF учитывается не только общесистемная статистика, но и детальные подробности поведения отдельных компонентов, что, например, позволяет корректировать настройки на уровне отельных сокетов и устройств.
Реализация отдельных оптимизаций вынесена в плагины, загружаемые во время запуска процесса в форме so-библиотек. Каждый плагин, реализующий отдельную оптимизацию, содержит выполняемый в ядре BPF-обработчик и компонент, работающий в пространстве пользователя. Для передачи событий из ядра в пространство пользователя все плагины используют общий глобальный кольцевой буфер BPF. Плагины могут выбираться в зависимости от потребностей администратора, а также автоматически отключаться, если администратор вручную изменит связанные с ними настройки ядра.
В процессе автонастройки bpftune пытается добиться оптимального баланса между предоставлением и потреблением ресурсов, учитывая косвенное влияние изменений. Например, для повышения пропускной способности необходимо увеличить размер сетевого буфера, но его увеличение приводит к повышению потребления памяти и увеличению задержек при передаче данных, поэтому при увеличении размера буфера следует учитывать и эти параметры.
Среди доступных для использования плагинов:
  • bpftune-tcp-cong - автоматический выбор оптимального алгоритма контроля за сетевой перегрузкой
  • bpftune-neigh - автоматический выбор размера таблицы MAC-адресов соседних хостов (ip neighbour или ARP-таблица).
  • bpftune-route - автоматический выбор размера таблицы маршрутизации.
  • bpftune-sysctl - отслеживание настроек sysctl и отключение связанного оптимизатора в случае конфликта с ручными настройками.
  • bpftune-tcp-buffer - автоматический выбор максимального и начального размеров TCP-буферов (net.ipv4.tcp_mem, net.ipv4.tcp_wmem, net.ipv4.tcp_rmem).
  • bpftune-net-buffer - автоматическая настройка базовых сетевых буферов (net.core.netdev_max_backlog, net.core.flow_limit_cpu_bitmap).
  • bpftune-netns - отслеживает добавление и удаление сетевых пространств имён (network namespace).

===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_bpftune, #_bpf, #_oracle, #_tune, #_optimization
Профиль  ЛС 
Показать сообщения:     

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

Текущее время: 06-Июн 14:21
Часовой пояс: UTC + 5