Προσαρμοσμένα προφίλ για τη βελτιστοποίηση του φόρτου εργασίας διακομιστών Linux
16 λεπτά ανάγνωσης - 9 Ιουνίου 2026

Πώς να επιλέξετε, να εφαρμόσετε και να προσαρμόσετε βελτιστοποιημένα προφίλ για διακομιστές Linux με GPU, βάσεις δεδομένων και υψηλού εύρους ζώνης, με παραδείγματα και συμβουλές ανάπτυξης με Ansible.
προσαρμοσμένα προφίλ για τη βελτιστοποίηση του φόρτου εργασίας των διακομιστών
Οι προεπιλεγμένες ρυθμίσεις του Linux είναι προσαρμοσμένες για συμβατότητα, όχι για απόδοση. Το daemon «tuned» παρέχει προκαθορισμένα προφίλ που ρυθμίζουν τους ρυθμιστές της CPU, τους χρονοπρογραμματιστές εισόδου-εξόδου (I/O), τις παραμέτρους του πυρήνα και τα buffer δικτύου, ώστε να ταιριάζουν με ένα συγκεκριμένο φορτίο εργασίας. Αυτή η ανάρτηση καλύπτει τον τρόπο λειτουργίας των προφίλ, ποιο να επιλέξετε για συνήθεις ρόλους διακομιστών, καθώς και πώς να δημιουργήσετε και να αναπτύξετε προσαρμοσμένα προφίλ σε έναν στόλο διακομιστών.
Πώς λειτουργούν τα προσαρμοσμένα προφίλ
Ένα προφίλ είναι ένας κατάλογος κάτω από /usr/lib/tuned/profiles/ (system) ή /etc/tuned/profiles/ (custom) που περιέχει ένα tuned.conf αρχείο. Το αρχείο conf ομαδοποιεί τις παραμέτρους ανά πρόσθετο: [cpu], [disk], [sysctl], [vm], [bootloader], και ούτω καθεξής. Ενεργοποιήστε ένα προφίλ και το δαίμονα του tuned εφαρμόζει όλες τις παραμέτρους με μία κίνηση, αντί να εκτελεί δεκάδες sysctl και sysfs εντολές με το χέρι.
Τα προφίλ μπορούν να κληρονομούν το ένα από το άλλο με τη include οδηγία. Το throughput-performance προφίλ, για παράδειγμα, μπορεί να χρησιμεύσει ως βάση για ένα προσαρμοσμένο προφίλ βάσης δεδομένων που αντικαθιστά μόνο vm.swappiness και τη ρύθμιση Transparent Huge Pages.
Το tuned λειτουργεί σε δύο τρόπους. Η στατική ρύθμιση εφαρμόζει το προφίλ μία φορά κατά την ενεργοποίηση και δεν παρεμβαίνει περαιτέρω στο σύστημα, κάτι που είναι επιθυμητό σε διακομιστές παραγωγής όπου η συνέπεια έχει μεγαλύτερη σημασία από την εξοικονόμηση ενέργειας. Η δυναμική ρύθμιση παρακολουθεί τη χρήση του δίσκου, του δικτύου και του φορτίου σε πραγματικό χρόνο και προσαρμόζει τις ρυθμίσεις εν κινήσει. Τα προφίλ απόδοσης απενεργοποιούν τη δυναμική ρύθμιση από προεπιλογή, προκειμένου να αποφευχθεί το επιπλέον φορτίο της παρακολούθησης.
Επιλογή του κατάλληλου προφίλ για το φορτίο εργασίας σας
Το tuned παρέχει δώδεκα προφίλ που καλύπτουν τους πιο συνηθισμένους φόρτους εργασίας. Επιλέξτε αυτό που αντιστοιχεί στην πραγματική λειτουργία του διακομιστή, αντί να αφήσετε το προεπιλεγμένο balanced .
| Φόρτος εργασίας | Προφίλ | Τι κάνει |
|---|---|---|
| Εκπαίδευση και εξαγωγή συμπερασμάτων με GPU | accelerator-performance | Κλειδώνει την CPU σε χαμηλές καταστάσεις C, διατηρώντας την καθυστέρηση μεταξύ CPU και GPU κάτω από 100 µs |
| Βάσεις δεδομένων (Postgres, MySQL, Redis) | throughput-performance | Απενεργοποιεί τη λειτουργία εξοικονόμησης ενέργειας, ρυθμίζει τις εισόδους-εξόδους δίσκου και δικτύου, απενεργοποιεί τις Transparent Huge Pages |
| Δικτύωση υψηλού εύρους ζώνης (CDN, αναπαραγωγή, αγωγοί δεδομένων) | network-throughput | Αυξάνει τα buffer δικτύου του πυρήνα για συνεχείς μεταφορές υψηλού εύρους ζώνης |
| Υπηρεσίες ευαίσθητες στην καθυστέρηση | network-latency ή latency-performance | Κλειδώνει τον ρυθμιστή της CPU στη performance, απενεργοποιεί τις βαθιές καταστάσεις C |
| HPC και υπολογιστικά clusters | hpc-compute | Βελτιώνει την απόδοση ως προς την καθυστέρηση με ρύθμιση NUMA και μνήμης |
| Περιπτώσεις VPS (λειτουργικό σύστημα επισκέπτη) | virtual-guest | Μειώνει το swappiness, αυξάνει την προανάγνωση δίσκου για παραεικονικοποιημένες εισόδους-εξόδους |
| Κεντρικοί υπολογιστές με υπερ-επιτηρητή KVM | virtual-host | Ρυθμίζει την επαναγραφή «dirty» σελίδων για φορτία εργασίας VM |
| Μικτή ή άγνωστη | balanced | Προεπιλογή. Ανταλλάσσει την απόδοση με την ενεργειακή απόδοση |
Για συγκεκριμένους μηχανισμούς βάσεων δεδομένων, το tuned διατίθεται επίσης postgresql, mssql, καθώς και oracle προφίλ που πηγαίνουν πιο πέρα από throughput-performance με τη ρύθμιση των παραμέτρων της κοινόχρηστης μνήμης και του χρονοπρογραμματιστή του πυρήνα για αυτούς τους κινητήρες.
Σε διακομιστές πολλαπλών υποδοχών, η τοπολογία NUMA έχει σημασία. Η πρόσβαση στη μνήμη απομακρυσμένων κόμβων μπορεί να είναι δύο έως τρεις φορές πιο αργή από την τοπική πρόσβαση. Για φορτία εργασίας όπου η καθυστέρηση είναι κρίσιμη σε συστήματα διπλής υποδοχής, απενεργοποιήστε την αυτόματη εξισορρόπηση NUMA στο προφίλ και αντιστοιχίστε τις διεργασίες σε συγκεκριμένους κόμβους χειροκίνητα.
Εγκατάσταση και εφαρμογή προφίλ
Εγκατάσταση του tuned σε RHEL, Rocky, AlmaLinux ή Fedora:
dnf install tuned
systemctl enable --now tunedΣτα Debian και Ubuntu, το πακέτο ονομάζεται επίσης tuned και εγκαθίσταται μέσω apt. Εάν power-profiles-daemon το tuned εκτελείται ήδη, αποκλείστε το για να αποφύγετε συγκρούσεις:
systemctl mask --now power-profiles-daemonΕμφανίστε τα διαθέσιμα προφίλ, ρωτήστε το tuned τι προτείνει για τον εξοπλισμό, εφαρμόστε ένα προφίλ και επαληθεύστε το:
tuned-adm list
tuned-adm recommend
tuned-adm profile throughput-performance
tuned-adm verifyΤο ενεργό προφίλ αποθηκεύεται στο /etc/tuned/active_profile και διατηρείται μετά από επανεκκινήσεις. Για να καταργήσετε εντελώς τη ρύθμιση και να μετρήσετε τη βασική τιμή, εκτελέστε tuned-adm off.
Δημιουργία προσαρμοσμένου προφίλ για φορτία εργασίας AI, ML και υψηλού εύρους ζώνης
Όταν τα προκαθορισμένα προφίλ σας καλύπτουν το 90% των αναγκών σας, δημιουργήστε ένα προσαρμοσμένο προφίλ που κληρονομεί από το πιο κοντινό προφίλ και αντικαθιστά τις υπόλοιπες παραμέτρους. Ξεκινήστε με έναν κατάλογο και ένα αρχείο ρυθμίσεων:
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Οι βασικές επιλογές εδώ:
numa_balancing=0εμποδίζει τον πυρήνα να μεταφέρει μνήμη μεταξύ των υποδοχών κατά τη διάρκεια των εκτελέσεων εκπαίδευσης, μια συνηθισμένη πηγή καθυστέρησης σε συστήματα GPU με δύο υποδοχές.- Το
rmem_maxκαιtcp_rmemαυξάνουν το ανώτατο όριο του buffer των socket στα 256MB. Σε διασυνδέσεις 25G, 40G ή 100G μεταξύ κόμβων εκπαίδευσης, τα προεπιλεγμένα μεγέθη buffer περιορίζουν τη διακίνηση δεδομένων σε επίπεδα πολύ κάτω από το line rate. transparent_hugepages=neverαφαιρεί τη διακύμανση καθυστέρησης που προκαλεί το THP σε πλαίσια όπως το PyTorch και το TensorFlow, τα οποία εκχωρούν μεγάλους τανυστές.iommu=ptθέτει το IOMMU σε λειτουργία passthrough, η οποία απαιτείται για το passthrough της GPU και της κάρτας δικτύου (NIC) και μειώνει το επιπλέον φορτίο στο DMA σε bare-metal.
Οτιδήποτε κάτω από [bootloader] απαιτεί επανεκκίνηση. Μετά την ενεργοποίηση του προφίλ, εκτελέστε tuned-adm verify για να επιβεβαιώσετε ότι έχουν εφαρμοστεί οι παράμετροι εκτέλεσης και ελέγξτε journalctl -u tuned αν υπάρχουν σφάλματα. Κάντε δοκιμή επιδόσεων πριν και μετά με το iostat -xz, numastat, καθώς και το σχετικό εργαλείο φόρτου εργασίας (iperf3, fioή την πραγματική εκτέλεση εκπαίδευσης).
Μια συμβιβαστική λύση που αξίζει να επισημανθεί ρητά: η απενεργοποίηση των μέτρων ασφαλείας της CPU προσφέρει κέρδος περίπου 3-8% σε φόρτους εργασίας GPU, αλλά κοστίζει 15-30% σε φόρτους εργασίας με έντονα μοτίβα κλήσεων συστήματος. Αποφασίστε με βάση το μοντέλο απειλών για τον υπολογιστή. Μέσα σε ένα αποκλειστικό σύμπλεγμα εκπαίδευσης πίσω από τείχος προστασίας, οι υπολογισμοί συνήθως ευνοούν την απενεργοποίησή τους. Σε έναν κεντρικό υπολογιστή πολλαπλών χρηστών, αφήστε τα ενεργοποιημένα.
Διαχείριση προφίλ σε έναν στόλο διακομιστών
Η εφαρμογή του tuned με το χέρι παύει να είναι εφικτή όταν ο αριθμός των διακομιστών ξεπερνά μερικούς. Το Ansible χειρίζεται αυτό το θέμα με καθαρό τρόπο. Ένα μόνο playbook εγκαθιστά το tuned και δημιουργεί καταλόγους προσαρμοσμένων προφίλ στο /etc/tuned/ μέσω του template module, και εφαρμόζει το σωστό προφίλ ανά ομάδα αποθέματος.
Αντιστοίχιση προφίλ με ρόλους στο inventory:
- Κόμβοι GPU και AI:
accelerator-performance, ή ένα προσαρμοσμένο προφίλ που κληρονομεί από αυτό - Διακομιστές βάσεων δεδομένων:
throughput-performanceή το προφίλ που αφορά συγκεκριμένα τον κινητήρα - Κόμβοι CDN και edge που μεταφέρουν κίνηση υψηλού εύρους ζώνης:
network-throughput - Διακομιστές API και ιστού πίσω από έναν εξισορροπητή φορτίου:
network-latency - VPS και φιλοξενούμενοι KVM:
virtual-guest - Κεντρικοί υπολογιστές υπερ-επιτηρητών:
virtual-host
Η απόκλιση αποτελεί το πραγματικό λειτουργικό πρόβλημα. Οι χειροκίνητες sysctl αλλαγές, αναβαθμίσεις πακέτων που εισάγουν νέες προεπιλογές ή η παρέμβαση ενός άλλου εργαλείου διαχείρισης διαμόρφωσης στο «tuned» θα οδηγήσουν όλες σε απόκλιση των ρυθμίσεων από αυτές που ορίζει το προφίλ. Προγραμματίστε την εκτέλεση μιας εργασίας Ansible tuned-adm active και tuned-adm verify μέσω του cron και να ειδοποιείτε σε περίπτωση αποτυχίας. Ελέγξτε /var/log/tuned/tuned.log για γραμμές του τύπου «Verification failed».
Συμπέρασμα
Το tuned εξαλείφει σε μεγάλο βαθμό τις εικασίες από τη ρύθμιση του πυρήνα και των sysctl. Οι προεπιλογές είναι επαρκείς για γενική χρήση, ενώ τα προφίλ που είναι ειδικά για συγκεκριμένα φορτία εργασίας, όπως accelerator-performance, throughput-performance, και network-throughput σας φέρνουν σχεδόν στο σημείο της βελτιστοποίησης χωρίς να χρειαστεί να γράψετε ούτε ένα αρχείο ρυθμίσεων.
- Επιλέξτε το προεπιλεγμένο προφίλ που ταιριάζει περισσότερο, εκτελέστε το
tuned-adm verifyκαι, στη συνέχεια, εκτελέστε δοκιμές απόδοσης - Δημιουργήστε προσαρμοσμένα προφίλ κληρονομώντας από ένα προεπιλεγμένο προφίλ και αντικαθιστώντας μόνο ό,τι χρειάζεστε
- Προσέξτε ιδιαίτερα την εξισορρόπηση NUMA, τις hugepages και τα μεγέθη των buffer δικτύου σε συστήματα με GPU και υψηλού εύρους ζώνης
- Κάντε την ανάπτυξη με το Ansible και πραγματοποιήστε ελέγχους σύμφωνα με ένα χρονοδιάγραμμα για να εντοπίσετε τυχόν αποκλίσεις
Χρειάζεστε χωρητικότητα σε bare-metal με επαρκές περιθώριο εύρους ζώνης για να αξιοποιήσετε πραγματικά αυτές τις ρυθμίσεις; Επικοινωνήστε με την FDC για αποκλειστικούς διακομιστές σχεδιασμένους για φορτία εργασίας υψηλής απόδοσης και GPU.

Οδηγός χρήσης του iperf3: Δοκιμή ταχύτητας δικτύου σε Linux και Windows
Εγκαταστήστε το iperf3, εκτελέστε δοκιμές εύρους ζώνης και ρυθμίστε τα buffer TCP για ακριβή αποτελέσματα σε Linux και Windows. Καλύπτει δοκιμές UDP, αμφίδρομες δοκιμές και δοκιμές 10GbE+.
10 λεπτά ανάγνωσης - 7 Μαΐου 2026
Προσαρμοσμένα προφίλ για τη βελτιστοποίηση του φόρτου εργασίας διακομιστών Linux
16 λεπτά ανάγνωσης - 9 Ιουνίου 2026

Έχετε ερωτήσεις ή χρειάζεστε μια προσαρμοσμένη λύση
Ευέλικτες επιλογές
Παγκόσμια εμβέλεια
Άμεση ανάπτυξη
Ευέλικτες επιλογές
Παγκόσμια εμβέλεια
Άμεση ανάπτυξη