👍 Как оптимизировать производительность системы Linux с помощью tuned-adm

by itisgood

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

Это руководство было написано для того, чтобы помочь вам оптимизировать производительность вашего сервера Linux с настройками.

Настроенный демон может использоваться для применения настроек системы в динамическом или статическом режиме.
Существуют предварительно определенные профили настройки, которые отражают конкретные требования к рабочей нагрузке.
Доступны следующие профили:
Профиль Назначение
balanced Идеально подходит для систем, которые требуют компромисса между энергосбережением и производительностью.
desktop
Обеспечивает более быстрый отклик интерактивных приложений.
throughput-performance
Настраивает систему для максимальной пропускной способности.
latency-performance
Идеально подходит для серверных систем, где требуется низкая задержка за счет энергопотребления.
network-latency
Позволяет использовать дополнительные параметры настройки сети для обеспечения низкой задержки сети.
network-throughput Дополнительные параметры настройки сети применяются для максимальной пропускной способности сети.
powersave
Настраивает систему для максимального энергосбережения. Минимальная пропускная способность сети.
oracle
Оптимизирован для загрузки базы данных Oracle на основе профиля throughput-performance
virtual-guest
Оптимизирует работу внутри виртуального гостевой системы
virtual-host
Настраивает систему для максимальной производительности, если используется для запуска гостевых KVM

Статическая настройка

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

Динамическая настройка

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

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

Установка Tuned

В системе Linux RHEL / CentOS 8/7 пакет установлен и включен по умолчанию.

🐧 [CentOS] Инструменты, не включенные в CentOS 7 minimal

Если вы хотите установить и включить пакет вручную на компьютере CentOS / RHEL, выполните команды:

sudo yum install tuned
sudo systemctl enable --now tuned
Ubuntu / Debian:
sudo apt update
sudo apt install tuned tuned-utils tuned-utils-systemtap

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

$ systemctl status tuned
● tuned.service - Dynamic System Tuning Daemon
   Loaded: loaded (/usr/lib/systemd/system/tuned.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2020-02-04 04:10:52 UTC; 6 days ago
     Docs: man:tuned(8)
           man:tuned.conf(5)
           man:tuned-adm(8)
 Main PID: 936 (tuned)
   CGroup: /system.slice/tuned.service
           └─936 /usr/bin/python2 -Es /usr/sbin/tuned -l -P

.....

Выбор профиля tuned

Настроенные профили делятся на следующие категории:

  • Performance-boosting profiles
  • Power-saving profiles
Профили пperformance-boosting включают профили, которые фокусируются на следующих аспектах:
  • Низкая задержка хранения и сети
  • Высокая пропускная способность для хранения и сети
  • Производительность хоста виртуализации
  • Производительность виртуальной машины

Мы будем использовать команду tuned-adm для изменения настроек демона tuned.

Проверьте текущий активный профиль:
$ tuned-adm active
Current active profile: virtual-guest
Команда tuned-adm list используется для вывода списка всех доступных профилей tuned:
Available profiles:
- balanced                    - General non-specialized tuned profile
- desktop                     - Optimize for the desktop use-case
- latency-performance         - Optimize for deterministic performance at the cost of increased power consumption
- network-latency             - Optimize for deterministic performance at the cost of increased power consumption, focused on low latency network performance
- network-throughput          - Optimize for streaming network throughput, generally only necessary on older CPUs or 40G+ networks
- powersave                   - Optimize for low power consumption
- throughput-performance      - Broadly applicable tuning that provides excellent performance across a variety of common server workloads
- virtual-guest               - Optimize for running inside a virtual guest
- virtual-host                - Optimize for running KVM guests
Current active profile: virtual-guest

В Ubuntu доступно больше профилей:

$ tuned-adm list
Available profiles:
- atomic-guest                - Optimize virtual guests based on the Atomic variant
- atomic-host                 - Optimize bare metal systems running the Atomic variant
- balanced                    - General non-specialized tuned profile
- cpu-partitioning            - Optimize for CPU partitioning
- default                     - Legacy default tuned profile
- desktop                     - Optimize for the desktop use-case
- desktop-powersave           - Optmize for the desktop use-case with power saving
- enterprise-storage          - Legacy profile for RHEL6, for RHEL7, please use throughput-performance profile
- laptop-ac-powersave         - Optimize for laptop with power savings
- laptop-battery-powersave    - Optimize laptop profile with more aggressive power saving
- latency-performance         - Optimize for deterministic performance at the cost of increased power consumption
- network-latency             - Optimize for deterministic performance at the cost of increased power consumption, focused on low latency network performance
- network-throughput          - Optimize for streaming network throughput, generally only necessary on older CPUs or 40G+ networks
- oracle                      - Optimize for Oracle RDBMS
- powersave                   - Optimize for low power consumption
- realtime                    - Optimize for realtime workloads
- realtime-virtual-guest      - Optimize for realtime workloads running within a KVM guest
- realtime-virtual-host       - Optimize for KVM guests running realtime workloads
- sap-hana                    - Optimize for SAP HANA
- sap-hana-vmware             - Optimize for SAP HANA running inside a VMware guest
- sap-netweaver               - Optimize for SAP NetWeaver
- server-powersave            - Optimize for server power savings
Команда tuned-adm profile <profile> используется для переключения активного профиля на другой.
Этот пример настроит нашу систему для максимальной пропускной способности.
sudo tuned-adm profile throughput-performance

Подтвердите текущий профиль.

$ sudo tuned-adm active
Current active profile: throughput-performance

Проверьте рекомендуемый профиль tuned для вашей системы

Команда tuned-adm также может порекомендовать профиль для системы.

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

$ tuned-adm recommend
virtual-guest

Затем вы можете установить свой профиль на рекомендуемое значение.

sudo tuned-adm profile virtual-guest

Чтобы увидеть детали профиля, запустите:

$ tuned-adm profile_info virtual-guest
Profile name:
virtual-guest

Profile summary:
Optimize for running inside a virtual guest

Profile description:

Выключение профиля

Чтобы отменить изменения tuned, сделанные текущим профилем, либо переключитесь на другой профиль, либо деактивируйте настроенный демон.

Используйте команду tuned-adm off, чтобы отключить настроенный tuned:

$ tuned-adm off

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

$ tuned-adm active
Вы также можете управлять профилями настройки с помощью Cockpit Web Console.

Loading

You may also like

Leave a Comment