Profiluri reglate pentru optimizarea volumului de lucru al serverelor Linux

16 min citire - 9 iunie 2026

hero section cover
Cuprins
  • profiluri optimizate pentru optimizarea încărcării serverului
  • Cum funcționează profilurile personalizate
  • Alegerea profilului potrivit pentru sarcina dvs. de lucru
  • Instalarea și aplicarea profilurilor
  • Crearea unui profil personalizat pentru AI, ML și sarcini de lucru cu lățime de bandă mare
  • Gestionarea profilurilor într-o flotă de servere
  • Concluzie
Distribuie

Cum să alegeți, să aplicați și să personalizați profiluri reglate pentru GPU, baze de date și servere Linux cu lățime de bandă mare, cu exemple și sfaturi de implementare Ansible.

profiluri optimizate pentru optimizarea încărcării serverului

Setările implicite ale Linux sunt optimizate pentru compatibilitate, nu pentru performanță. Daemonul tuned oferă profiluri predefinite care ajustează guvernatorii CPU, programatorii I/O, parametrii kernelului și bufferele de rețea pentru a se potrivi cu o sarcină de lucru specifică. Acest articol prezintă modul în care funcționează profilurile, care dintre ele trebuie ales pentru rolurile obișnuite ale serverului și cum se pot crea și implementa profiluri personalizate într-o flotă.


 

Cum funcționează profilurile personalizate

Un profil este un director din cadrul /usr/lib/tuned/profiles/ (sistem) sau /etc/tuned/profiles/ (personalizat) care conține un tuned.conf fișier. Fișierul conf grupează parametrii pe plugin: [cpu], [disk], [sysctl], [vm], [bootloader]și așa mai departe. Activați un profil și daemonul tuned aplică fiecare parametru dintr-o singură mișcare, în loc să ruleze zeci de sysctl și sysfs comenzi manual.

Profilele se pot moșteni unul de la altul cu ajutorul include . Profilul throughput-performance , de exemplu, poate servi ca bază pentru un profil de bază de date personalizat care suprascrie doar vm.swappiness setarea Transparent Huge Pages.

tuned rulează în două moduri. Reglarea statică aplică profilul o singură dată la activare și lasă sistemul în pace, ceea ce este de dorit pe serverele de producție unde consistența contează mai mult decât economiile de energie. Reglarea dinamică monitorizează utilizarea discului, a rețelei și a încărcării în timp real și ajustează setările pe parcurs. Profilurile de performanță dezactivează reglarea dinamică în mod implicit pentru a evita suprasolicitarea monitorizării.

Alegerea profilului potrivit pentru sarcina dvs. de lucru

tuned oferă o duzină de profiluri care acoperă cele mai comune sarcini de lucru. Alegeți-l pe cel care se potrivește cu ceea ce face de fapt serverul, în loc să lăsați balanced .

Sarcină de lucruSarcinăCe face
Antrenare și inferență GPUaccelerator-performanceBlochează CPU-ul în stări C joase, menținând latența CPU-GPU sub 100 µs
Baze de date (Postgres, MySQL, Redis)throughput-performanceDezactivează economisirea de energie, optimizează I/O-ul discului și al rețelei, dezactivează paginile uriașe transparente
Rețea cu lățime de bandă mare (CDN, replicare, conducte de date)network-throughputMărește bufferele de rețea ale kernelului pentru transferuri susținute cu lățime de bandă mare
Servicii sensibile la latențănetwork-latency sau latency-performanceFixează regulatorul CPU la performance, dezactivează stările C profunde
Clustere HPC și de calculhpc-computeExtinde performanța la latență cu NUMA și optimizarea memoriei
Instanțe VPS (sistem de operare oaspete)virtual-guestReduce swappiness-ul, crește citirea anticipată a discului pentru I/O paravirtualizat
Gazde hipervizor KVMvirtual-hostOptimizează rescrierea paginilor murdare pentru sarcinile de lucru ale mașinilor virtuale
Mixt sau necunoscutbalancedImplicit. Compromite performanța în favoarea eficienței energetice

Pentru anumite motoare de baze de date, tuned este livrat și postgresql, mssqlși oracle profiluri care merg mai departe decât throughput-performance prin reglarea memoriei partajate și a parametrilor programatorului de kernel pentru acele motoare.

Pe serverele cu mai multe socluri, topologia NUMA contează. Accesul la memoria nodurilor la distanță poate fi de două până la trei ori mai lent decât accesul local. Pentru sarcinile de lucru critice din punct de vedere al latenței pe sistemele cu două socluri, dezactivați echilibrarea automată NUMA în profil și alocați manual procesele la noduri specifice.

Instalarea și aplicarea profilurilor

Instalați tuned pe RHEL, Rocky, AlmaLinux sau Fedora:

dnf install tuned
systemctl enable --now tuned

Pe Debian și Ubuntu, pachetul se numește, de asemenea, tuned și se instalează prin apt. Dacă power-profiles-daemon este deja în execuție, mascați-l pentru a evita conflictele:

systemctl mask --now power-profiles-daemon

Afișați profilurile disponibile, întrebați tuned ce recomandă pentru hardware, aplicați un profil și verificați-l:

tuned-adm list
tuned-adm recommend
tuned-adm profile throughput-performance
tuned-adm verify

Profilul activ este stocat în /etc/tuned/active_profile și persistă la reporniri. Pentru a elimina complet optimizarea și a măsura valoarea de referință, rulați tuned-adm off.

Crearea unui profil personalizat pentru AI, ML și sarcini de lucru cu lățime de bandă mare

Când profilurile standard vă ajută să parcurgeți 90% din proces, creați un profil personalizat care moștenește caracteristicile celui mai apropiat profil și suprascrie parametrii rămași. Începeți cu un director și un fișier conf:

mkdir -p /etc/tuned/ai-gpu
cat > /etc/tuned/ai-gpu/tuned.conf <<'EOF'
[main]
summary=Custom profile for GPU training with high-bandwidth networking
include=accelerator-performance
 
[cpu]
governor=performance
 
[sysctl]
kernel.numa_balancing=0
net.core.rmem_max=268435456
net.core.wmem_max=268435456
net.ipv4.tcp_rmem=4096 87380 268435456
net.ipv4.tcp_wmem=4096 65536 268435456
 
[vm]
transparent_hugepages=never
 
[bootloader]
cmdline=hugepagesz=2M hugepages=16384 <a target="_blank" rel="noopener noreferrer" href="https://en.wikipedia.org/wiki/Input%E2%80%93output_memory_management_unit">iommu</a>=pt
EOF
 
tuned-adm profile ai-gpu

Opțiunile cheie aici:

  • numa_balancing=0 oprește kernelul să migreze memoria între socluri în timpul rulărilor de antrenare, o sursă comună de blocare pe cutiile GPU cu două socluri.
  • The rmem_max și tcp_rmem măresc limita maximă a bufferului de socket la 256 MB. Pe interconectările de 25G, 40G sau 100G dintre nodurile de antrenament, dimensiunile implicite ale bufferului limitează debitul cu mult sub rata de linie.
  • transparent_hugepages=never elimină variațiile de latență cauzate de THP pentru framework-uri precum PyTorch și TensorFlow care alocă tensori mari.
  • iommu=pt pune IOMMU în modul passthrough, necesar pentru passthrough-ul GPU și NIC și reduce suprasarcina pe DMA bare-metal.

Orice sub [bootloader] necesită o repornire. După activarea profilului, rulați tuned-adm verify pentru a confirma aplicarea parametrilor de rulare și verificați journalctl -u tuned dacă există erori. Efectuați un test de performanță înainte și după cu iostat -xz, numastatși instrumentul de sarcină de lucru relevant (iperf3, fiosau rularea efectivă de antrenare).

Un compromis care merită menționat în mod explicit: dezactivarea măsurilor de securitate ale CPU aduce un câștig de aproximativ 3-8% la sarcinile de lucru pe GPU, dar costă 15-30% la sarcinile de lucru cu modele intense de apeluri de sistem. Luați o decizie pe baza modelului de amenințare pentru sistem. În interiorul unui cluster de antrenare dedicat, protejat de un firewall, calculele indică de obicei dezactivarea acestora. Pe o gazdă multi-tenant, lăsați-le activate.

Gestionarea profilurilor într-o flotă de servere

Aplicarea tuned manual nu mai este viabilă după o mână de servere. Ansible se ocupă de acest lucru în mod curat. Un singur playbook instalează tuned, plasează directoarele de profiluri personalizate sub /etc/tuned/ prin intermediul template modulului și aplică profilul potrivit pentru fiecare grup de inventar.

Asocierea profilurilor cu rolurile din inventar:

  • Noduri GPU și AI: accelerator-performancesau un profil personalizat care moștenește de la acesta
  • Servere de baze de date: throughput-performance sau profilul specific motorului
  • Noduri CDN și edge care transmit trafic cu lățime de bandă mare: network-throughput
  • Servere API și web din spatele unui echilibrator de sarcină: network-latency
  • Oaspeți VPS și KVM: virtual-guest
  • Gazde hipervizor: virtual-host

Devierea este adevărata problemă operațională. Modificările manuale sysctl , actualizările de pachete care introduc noi setări implicite sau un alt instrument de gestionare a configurației care interferează cu tuned vor determina ca setările să se abată de la cele specificate în profil. Programați o sarcină Ansible care să ruleze tuned-adm active și tuned-adm verify pe cron și să trimită alerte în caz de eșecuri. Urmăriți /var/log/tuned/tuned.log dacă apar rânduri de tipul „Verificarea a eșuat”.

Concluzie

tuned elimină cea mai mare parte a incertitudinilor din reglarea kernelului și a sysctl. Setările implicite sunt suficient de bune pentru utilizarea generală, iar profilurile specifice sarcinilor de lucru, precum accelerator-performance, throughput-performance, și network-throughput vă ajută să ajungeți aproape de optimizare fără a scrie un singur fișier de configurare.

  • Alegeți profilul standard cel mai apropiat, rulați tuned-adm verify, apoi efectuați un test de performanță
  • Creați profiluri personalizate moștenind dintr-un profil standard și suprascriind doar ceea ce aveți nevoie
  • Fiți atenți la echilibrarea NUMA, la paginile uriașe și la dimensiunile bufferului de rețea pe GPU și pe sistemele cu lățime de bandă mare
  • Implementați cu Ansible și efectuați audituri periodice pentru a detecta abaterile

Aveți nevoie de capacitate bare-metal cu lățime de bandă suficientă pentru a utiliza efectiv aceste setări? Discutați cu FDC despre serverele dedicate construite pentru sarcini de lucru cu randament ridicat și GPU.

Blog

În prim plan săptămâna aceasta

Mai multe articole
Profiluri reglate pentru optimizarea volumului de lucru al serverelor Linux

Profiluri reglate pentru optimizarea volumului de lucru al serverelor Linux

Cum să alegeți, să aplicați și să personalizați profiluri reglate pentru GPU, baze de date și servere Linux cu lățime de bandă mare, cu exemple și sfaturi de implementare Ansible.

16 min citire - 9 iunie 2026

Linux OOM Killer Tuning pentru VPS: un ghid practic

12 min citire - 8 iunie 2026

Mai multe articole
background image

Aveți întrebări sau aveți nevoie de o soluție personalizată?

icon

Opțiuni flexibile

icon

Acoperire globală

icon

Implementare instantanee

icon

Opțiuni flexibile

icon

Acoperire globală

icon

Implementare instantanee