Per offrire le migliori prestazioni possibili fin dall'inizio, CentOS/RHEL 7 e 8 sono dotati di tuning. Offre un demone che monitora l'attività del sistema e fornisce alcuni profili. Nei profili, un amministratore può ottimizzare automaticamente un sistema per ottenere la migliore latenza, throughput o consumo energetico migliori.
In base alle proprietà di un sistema installato, un profilo ottimizzato viene selezionato automaticamente al momento dell'installazione e, dopo l'installazione, è possibile modificare manualmente il profilo corrente. Gli amministratori possono anche modificare le impostazioni in un profilo ottimizzato.
"tuned-adm" è uno strumento da riga di comando che fornisce una serie di profili diversi per migliorare le prestazioni.
Di seguito sono riportati i profili forniti e supportati in CentOS/RHEL 8:
Profilo | Usa |
---|---|
bilanciato | Il miglior compromesso tra consumo energetico e prestazioni |
desktop | Basato sul profilo bilanciato, ma ottimizzato per una migliore risposta alle applicazioni interattive |
prestazioni di latenza | Ottimizzato per il massimo throughput |
latenza di rete | Basato sulle prestazioni di latenza, ma con opzioni aggiuntive per ridurre la latenza di rete |
velocità di rete | In base alle prestazioni di throughput, ottimizza le CPU meno recenti per lo streaming di contenuti |
risparmio energetico | Tune per il massimo risparmio energetico |
Prestazioni di throughput | Ottimizza per il massimo throughput |
ospite virtuale | Ottimizza Linux per l'esecuzione come macchina virtuale |
host virtuale | Ottimizza Linux per l'uso come host KVM |
Oltre al profilo fornito, possiamo creare profili personalizzati. Puoi trovare i profili ottimizzati del sistema utilizzati in /lib/tuned/. Quando crei i tuoi, creali in /etc/tuned nello stesso modo in cui sono organizzati in /lib/tuned. Non consiglio di creare nuovi profili in /etc/tuned con lo stesso nome di /lib/tuned, ma se lo fai, verrà utilizzato quello nella directory /etc/tuned. È meglio crearne uno nuovo con un nome diverso, compreso quello che vuoi modificare, e poi apportare le modifiche necessarie al tuo nuovo profilo.
Il profilo consigliato per i carichi di lavoro del database Oracle è "throughput-prestazioni".
Installazione sintonizzata
1. Nella mia virtualbox, per impostazione predefinita, "vitu-guest" era impostato come profilo attivo:
# cd /usr/lib/tuned/ # tuned-adm active Current active profile: virtual-guest
Se tuning non è installato, installalo usando yum
# yum install tuned
2. Abilita il servizio ottimizzato per assicurarti che venga avviato all'avvio:
# systemctl enable tuned.service
3. Avvia il servizio sintonizzato:
# systemctl start tuned.service
Per controllare lo stato del servizio sintonizzato
Verifica lo stato del servizio:
# systemctl status tuned.service
Creazione nuovo profilo “oracolo”
1. Ora creiamo un nuovo profilo "oracolo" da utilizzare. Innanzitutto, crea la directory Oracle:
# mkdir /usr/lib/tuned/oracle
2. Crea tuning.conf:
# vi /usr/lib/tuned/oracle/tuned.conf # # tuned configuration # [main] include=throughput-performance [sysctl] vm.swappiness = 1 vm.dirty_background_ratio = 3 vm.dirty_ratio = 80 vm.dirty_expire_centisecs = 500 vm.dirty_writeback_centisecs = 100 kernel.shmmax = 4398046511104 kernel.shmall = 1073741824 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 6815744 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 kernel.panic_on_oops = 1 [vm] transparent_hugepages=never
3. Attiva il profilo Oracle appena aggiunto:
# tuned-adm profile oracle # sysctl -a | grep vm.swappiness vm.swappiness = 1
# sysctl -a | grep vm.dirty_ratio vm.dirty_ratio = 80
4. Per visualizzare l'elenco dei profili:
# tuned-adm list
Uno dei vantaggi di tuning è che i profili possono essere applicati dinamicamente. Per configurare il comportamento dell'ottimizzazione dinamica, modifica l'ottimizzazione_dinamica parametro in /etc/tuned/tuned-main.conf file.
Se stiamo utilizzando un profilo ottimizzato (come mostrato sopra) che rende persistenti le impostazioni di sistema, si consiglia di rimuovere tutte le voci relative a Oracle da /etc/sysctl.conf poiché le voci possono essere sovrascritte, sostituite o rimosse del tutto.