Introduzione
In questo documento viene descritta la procedura per risolvere i problemi di utilizzo della memoria High Swap con Cisco Policy Suite (CPS).
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza dei seguenti argomenti:
Nota: Cisco consiglia di disporre dell'accesso privilegiato alla directory principale di CPS CLI.
Componenti usati
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
- CPS 20.2
- Unified Computing System (UCS)-B
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Premesse
Lo spazio di swap in Linux viene utilizzato quando la quantità di memoria fisica (RAM, Random Access Memory) è piena. Se il sistema richiede più risorse di memoria e la RAM è piena, le pagine inattive in memoria vengono spostate nello spazio di swap. Anche se lo spazio di swap può aiutare i computer con una piccola quantità di RAM, non deve essere considerato una sostituzione per una maggiore quantità di RAM. Lo spazio di swap si trova sui dischi rigidi, che hanno un tempo di accesso inferiore rispetto alla memoria fisica. Lo spazio di swap può essere una partizione di swap dedicata (scelta consigliata), un file di swap o una combinazione di partizioni di swap e file di swap.
Negli anni passati, la quantità di spazio di swap consigliata è aumentata in modo lineare con la quantità di RAM presente nel sistema. Tuttavia, i sistemi moderni spesso includono centinaia di gigabyte di RAM. Di conseguenza, lo spazio di swap consigliato è considerato una funzione del carico di lavoro della memoria di sistema e non della memoria di sistema.
Lo swap della memoria è un metodo di recupero della memoria in cui i contenuti della memoria attualmente non in uso vengono scambiati su un disco per rendere la memoria disponibile per altre applicazioni o processi. Lo stato esatto o la "pagina" della memoria viene copiata sul disco per rendere i dati contigui e facili da ripristinare in seguito.
Analogamente alla memoria virtuale, lo spazio di swap è una memoria secondaria. Viene utilizzato dal sistema operativo quando non è disponibile memoria fisica per l'ulteriore esecuzione dei processi. Se il sistema operativo si trova in una situazione in cui è necessaria una certa quantità di memoria, ma la RAM è piena, le pagine inattive vengono spostate dalla RAM alla memoria di scambio.
Per verificare lo spazio di swap disponibile nel computer, è possibile utilizzare il comando free.
[root@dc1-qns01 ~]# free -m
total used free shared buff/cache available
Mem: 15876 4918 7750 792 3207 9987
Swap: 4095 0 4095
[root@dc1-qns01 ~]#
Problema
Una percentuale più elevata di utilizzo dello swap è normale quando i moduli con provisioning fanno un uso intensivo del disco. L'elevato utilizzo di swap deve indicare che il sistema è sottoposto a una pressione della memoria.
Questo allarme viene generato ogni volta che la memoria di swap disponibile sulla macchina virtuale (VM) è inferiore al valore di soglia configurato.
Inoltre, l'utilizzo elevato della memoria di swap viene osservato sulla VM pcrfclient01 al momento dell'evento di resilienza. Diagnostica non riuscita dopo l'esecuzione di diagnostic.sh a causa di un problema di memoria di swap insufficiente nella VM client pcrfc.
Checking swap space for all VMs...
Checking swap memory usage on pcrfclient01...[FAIL]
Swap usage is 1835 MB. This will likely lead to a slowdown in your system!
Please ensure your memory is provisioned properly.
If systems memory usage is no longer high, you can reset swap with: swap2ram.sh
Condizione: la diagnostica non riesce dopo l'esecuzione di diagnostic.sh a causa di un problema di memoria di swap insufficiente nella macchina virtuale client pcrfr.
Procedura per risolvere i problemi relativi all'utilizzo della memoria con CPS
Approccio 1.
La soluzione per un utilizzo elevato della memoria di swap è osservata sulla VM pcrfclient01 al momento dell'evento di resilienza.
1. Accedere alla VM client pcrfe controllare la memoria del disco utilizzando il comandodu -sh *.
2. Controllare se la directory è utilizzata/var/lib/carbon/whisper/cisco/quantum dalla memoria. Se si rileva un aumento nell'utilizzo della memoria, il problema è dovuto ai file di statistiche.
3. Per ripristinare la memoria, eliminare i file di statistiche (.wsp) o aumentare la memoria del disco della macchina virtuale.
4. Per recuperare la memoria, eliminare le statistiche manualmente dalla cartella o, /var/lib/carbon/whisper/cisco/quantum utilizzando questi passaggi, eliminare le statistiche:
- Eseguire il comando
df –h e annotare gli spazi su disco.
- Eseguire i seguenti comandi:
#du -h --max-depth=0 /var/lib/carbon/whisper/cisco/quantum/qps
#monit stop grafana-server
#monit stop carbon-cache
#vi /etc/carbon/storage-schemas.conf
- Aggiornare il periodo di conservazione (da 90 a 30 giorni) situato alla fine del file. Ciò determina un periodo di conservazione più aggressivo.
Vecchi - ritenzione: 10s:1d,60s:90d
Aggiorna a - criteri di conservazione: 10s:1d,60s:30d
- Dopo l'aggiornamento del periodo di conservazione, eseguire i seguenti comandi:
#monit start carbon-cache
#monit start grafana-server
Nota: in alternativa, è possibile utilizzare systmctl start/stop/restart il comando anziché il monit start/stop/restart comando.
- Creare un file denominato resize.sh e aggiungere questi file.
#monit stop carbon-cache
#cd /var/lib/carbon/whisper/cisco/quantum/qps
#find ./ -type f -name '*.wsp' -exec whisper-resize --nobackup {} $1 \;
#chown -R carbon:carbon *
#monit start carbon-cache
#monit restart grafana-server
- Aggiungere le autorizzazioni necessarie utilizzando il
chmod 777 resize.sh comando.
- Lanciare
./resize.sh "updated_retention_value"
Comando di esempio: #./resize.sh "10s:1d 60s:30d"
- Una volta completato lo script, eseguire questi comandi per verificare che la quantità di dati sia stata ridotta dal confronto tra il risultato precedente e quello corrente.
#run df –h: disk space should reduce or less than previous result
#du -h --max-depth=0 /var/lib/carbon/whisper/cisco/quantum/qps
- Verificare che nella Grafana siano visualizzate le statistiche relative agli ultimi 30 giorni e non più di 30 giorni. (il periodo di conservazione aggiornato è di 30 giorni).
Metodo 2.
Suggerimento generale per risolvere l'utilizzo elevato della memoria di swap.
Per cancellare la memoria di swapping sul sistema, è sufficiente spegnere e riaccendere lo swapping. In questo modo tutti i dati della memoria di swap vengono nuovamente spostati nella RAM. Significa anche che è necessario essere certi di avere la RAM per supportare questa operazione. Un modo semplice per eseguire questa operazione consiste nell'eseguire free -m per verificare che cosa viene utilizzato nello scambio e nella RAM. Una volta spento, è possibile attendere un periodo di tempo arbitrario (30 secondi o giù di lì) per dare il tempo di completare l'operazione, quindi riaccendere lo scambio. In questo modo la cache della memoria di swap viene cancellata e riattivata. Ecco tutti i comandi necessari.
1. Controllare l'utilizzo dello spazio di swap: # free -m
2. Disabilitare lo scambio: # swapoff -a
Attendere circa 30 secondi. Eseguire il comandofree -m per verificare la riduzione della quantità di swap utilizzata/disponibile nel tempo.
3. Abilitare lo scambio:# swapon -a