GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come aumentare le dimensioni dello scambio su RHEL 8 / CentOS 8

In un sistema con un carico di lavoro ad alta intensità di memoria con carichi di picco comuni, una memoria di scambio di grandi dimensioni può essere utile per archiviare contenuti di memoria di grandi dimensioni non necessari al momento. Anche se l'utilizzo di swap invece della memoria avrà sicuramente un grande impatto sulle prestazioni, a volte questo è preferibile rispetto all'aggiunta di più memoria alla macchina, poiché lo spazio su disco è molto più economico. A volte semplicemente non c'è più memoria, forse una macchina fisica che ha esaurito gli slot liberi e non ci sono moduli di memoria più grandi sul mercato. Altre volte le prestazioni più lente sui picchi di carico potrebbero essere preferibili rispetto all'arresto anomalo dell'applicazione con errore di memoria insufficiente.

In alcuni casi è necessario aumentare la memoria di scambio, un esempio dal vivo potrebbe essere l'espansione della memoria nella macchina e quindi anche l'espansione dello spazio di scambio in modo che corrisponda al doppio della nuova dimensione della memoria.

In questo tutorial imparerai:

  • Come controllare lo spazio di scambio.
  • Come identificare il volume di scambio.
  • Come aumentare il volume di scambio.
  • Come aggiungere un altro volume di scambio.

Verifica delle dimensioni e dell'utilizzo dello scambio con il comando gratuito.

Requisiti e convenzioni software utilizzati

Requisiti software e convenzioni della riga di comando Linux
Categoria Requisiti, convenzioni o versione del software utilizzata
Sistema RHEL 8 / CentOS 8
Software lvm2-2.03.00-0.4, util-linux-2.32.1-6
Altro Accesso privilegiato al tuo sistema Linux come root o tramite sudo comando.
Convenzioni # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando
$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato

Come aumentare la dimensione dello scambio su RHEL 8 istruzioni dettagliate

Nella nostra configurazione di laboratorio, la partizione di swap si trova su un volume logico. Questa è la configurazione più comune, poiché LVM è un modo molto flessibile per gestire lo spazio su disco. Il tutorial LVM copre l'architettura e l'utilizzo di Logical Volume Manager, quindi non entreremo nei dettagli quando si utilizza lvextend per aumentare la dimensione del volume di scambio. Aumenteremo lo scambio iniziale di 1 GB a 2 GB.

  1. Dobbiamo scoprire quale volume è la nostra partizione di swap:

    # grep swap /etc/fstab 
    /dev/mapper/rhel_rhel8lab-swap swap                    swap    defaults        0 0
    

    Poiché per impostazione predefinita i nomi dei volumi vengono generati con un nome host breve e durante la creazione di un volume logico possiamo nominarlo esplicitamente, il nome del volume varierà.

    Nel nostro esempio prendiamo nota del nome del volume con il percorso, che è /dev/mapper/rhel_rhel8lab-swap o /dev/rhel_rhel8lab/swap . Questi due nomi per la partizione possono creare confusione a prima vista, ma se li elenchiamo entrambi, possiamo vedere che in realtà sono collegamenti simbolici che puntano allo stesso dispositivo:

    # ls -al /dev/rhel_rhel8lab/swap
    lrwxrwxrwx. 1 root root 7 Nov 25 18:35 /dev/rhel_rhel8lab/swap -> ../dm-1
    # ls -al /dev/mapper/rhel_rhel8lab-swap
    lrwxrwxrwx. 1 root root 7 Nov 25 18:35 /dev/mapper/rhel_rhel8lab-swap -> ../dm-1
    

    Li useremo in modo intercambiabile nei prossimi passaggi.

  2. Dobbiamo disabilitare lo scambio sul volume mentre ci lavoriamo. Usiamo il nome completo del volume che abbiamo trovato nel primo passaggio.

    # swapoff -v /dev/mapper/rhel_rhel8lab-swap
    swapoff /dev/mapper/rhel_rhel8lab-swap
    
    AVVISO
    Non disabilitare lo scambio su un server di produzione mentre è sottoposto a un carico elevato e utilizza lo scambio in modo eccessivo! In uno scenario del genere aggiungi invece un'altra partizione di swap.
  3. Per aumentare la dimensione dello swap estendiamo il volume logico che lo contiene. In questo esempio con un Gigabyte in più:

    # lvextend -L +1G /dev/rhel_rhel8lab/swap 
      Size of logical volume rhel_rhel8lab/swap changed from 1.00 GiB (256 extents) to 2.00 GiB (512 extents).
      Logical volume rhel_rhel8lab/swap successfully resized.
    

    Nota che devi assicurarti di avere spazio libero sufficiente nel gruppo di volumi che contiene il volume logico, come faresti su qualsiasi altra estensione di volume che contiene filesystem.

  4. Ricreiamo lo scambio sul volume esteso:

    # mkswap /dev/mapper/rhel_rhel8lab-swap 
    mkswap: /dev/mapper/rhel_rhel8lab-swap: warning: wiping old swap signature.
    Setting up swapspace version 1, size = 2 GiB (2147479552 bytes)
    no label, UUID=defca15e-a5ed-4fe8-bddd-5f11a3c76e80
    
  5. Riattiviamo lo scambio sul volume di scambio esteso:

    # swapon -v /dev/mapper/rhel_rhel8lab-swap 
    swapon: /dev/mapper/rhel_rhel8lab-swap: found signature [pagesize=4096, signature=swap]
    swapon: /dev/mapper/rhel_rhel8lab-swap: pagesize=4096, swapsize=2147483648, devsize=2147483648
    swapon /dev/mapper/rhel_rhel8lab-swap
    
  6. È buona norma verificare sempre che la modifica del sistema sia andata a buon fine. In questo caso free -m (informazioni sulla memoria con valori in Megabyte) dovrebbero mostrare che abbiamo 2 GB di swap:

    # free -m
                  total        used        free      shared  buff/cache   available
    Mem:           1989        1201         225          17         562         617
    Swap:          2047           0        2047
    

Come aggiungere una nuova partizione di swap su RHEL 8 istruzioni dettagliate

Quando disabilitare lo scambio per aumentare le sue dimensioni non è appropriato, possiamo aumentare lo scambio generale aggiungendo un altro volume che sia anche una partizione di scambio. Quando abbiamo finito, lo diamo semplicemente al sistema, che inizierà a usarlo secondo necessità.

  1. Creiamo un nuovo volume logico con LVM come faremmo se volessimo un nuovo volume che memorizzi un filesystem:

    # lvcreate -L 1G -n swap2 rhel_rhel8lab
      Logical volume "swap2" created.
    

    Sulla stessa macchina di laboratorio questo risulterà con un percorso completo della nuova partizione come /dev/mapper/rhel_rhel8lab-swap2 , lo stesso di /dev/rhel_rhel8lab/swap2 .

  2. Crea lo scambio con mkswap :

    # mkswap /dev/rhel_rhel8lab/swap2
    Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
    no label, UUID=a319fb8d-18b8-42b7-b6bf-cafb27aaec2b
    
  3. Attiva lo scambio sul nuovo volume:

    # swapon /dev/rhel_rhel8lab/swap2
  4. E verifica i risultati:

    # free -m
                  total        used        free      shared  buff/cache   available
    Mem:           1989        1198         153          14         637         623
    Swap:          2047           0        2047
    
  5. Affinché il sistema operativo possa utilizzare la nuova partizione di swap dopo il riavvio, è necessario aggiungerla a /etc/fstab :

    # grep swap /etc/fstab 
    /dev/mapper/rhel_rhel8lab-swap swap                    swap    defaults        0 0
    /dev/mapper/rhel_rhel8lab-swap2 swap                    swap    defaults        0 0
    

    La differenza tra i due metodi può essere delineata controllando il contenuto di /proc/swaps , dove possiamo vedere che aggiungendo un altro volume invece di estendere quello che già abbiamo risulterà in due dispositivi usati per lo scambio:

    # cat /proc/swaps 
    Filename				Type		Size	Used	Priority
    /dev/dm-1                               partition	1048572	0	-2
    /dev/dm-2                               partition	1048572	0	-3
    

Cent OS
  1. Come aumentare le dimensioni dello scambio su Ubuntu Linux

  2. CentOS / RHEL:come creare una nuova partizione di swap basata su LVM

  3. CentOS / RHEL:come aggiungere file di scambio

  4. Come aumentare le dimensioni di Swap su CentOS + cPanel

  5. Come aumentare la dimensione dello scambio?

Come installare PHP-mbstring su RHEL 8 / CentOS 8

Come installare phantomjs su RHEL 8 / CentOS 8

Come installare Dropbox su RHEL 8 / CentOS 8

Come installare la bussola su RHEL 8 / CentOS 8

Come installare Puppet su RHEL 8 / CentOS 8

CentOS / RHEL:come aggiungere una nuova partizione di swap