Inleiding
Dit document beschrijft de procedure voor het oplossen van problemen met het gebruik van high-swap geheugen met Cisco Policy Suite (CPS).
Voorwaarden
Vereisten
Cisco raadt kennis van de volgende onderwerpen aan:
Opmerking: Cisco raadt aan dat u bevoorrechte toegang tot CPS CLI moet hebben.
Gebruikte componenten
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
- COPS 20,2
- Unified Computing System (UCS)-B
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Achtergrondinformatie
Er wordt wisselruimte in Linux gebruikt wanneer de hoeveelheid fysiek geheugen (Random Access Memory (RAM)) vol is. Als het systeem meer geheugenbronnen nodig heeft en het RAM-geheugen vol is, worden inactieve pagina's in het geheugen naar de wisselruimte verplaatst. Hoewel het ruilmiddel ruimte machines met een kleine hoeveelheid RAM kan helpen, moet het niet als een vervanging voor meer RAM worden beschouwd. De ruilruimte bevindt zich op harde schijven, die een langzamere toegangstijd hebben dan fysiek geheugen. De ruimte van het ruilmiddel kan een specifieke ruilmiddelverdeling (geadviseerd), een ruilmiddeldossier, of een combinatie van ruilmiddelverdelingen en ruilmiddeldossiers zijn.
In het verleden is de aanbevolen hoeveelheid swapruimte lineair toegenomen met de hoeveelheid RAM in het systeem. Echter, moderne systemen bevatten vaak honderden gigabytes RAM. Als gevolg hiervan wordt de aanbevolen wisselruimte beschouwd als een functie van de werkbelasting van het systeemgeheugen, niet het systeemgeheugen.
Memory Swap is een methode voor het terugwinnen van geheugen waarbij geheugeninhoud die momenteel niet in gebruik is, wordt geruild naar een disk om het geheugen beschikbaar te maken voor andere toepassingen of processen. De exacte status of "pagina" van het geheugen wordt naar de schijf gekopieerd om de gegevens aaneengesloten te maken en later eenvoudig te herstellen.
Net als virtueel geheugen is swap space een secundair geheugen. Het wordt gebruikt door het besturingssysteem (OS) wanneer er geen fysiek geheugen beschikbaar is voor de verdere uitvoering van de processen. Als het OS wordt geconfronteerd met een situatie wanneer het geheugen nodig heeft, maar het RAM is vol, verplaatst het de inactieve pagina's van RAM om geheugen te ruilen.
Om te controleren op beschikbare vrije ruilruimte in uw machine, kunt u de gratis opdracht gebruiken.
[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 ~]#
Probleem
Een hoger percentage van swapgebruik is normaal wanneer de geleverde modules zwaar gebruik van de schijf maken. Hoog ruilgebruik moet een teken zijn dat het systeem geheugendruk ervaart.
Dit alarm wordt gegenereerd wanneer beschikbaar swap geheugen op de Virtual Machine (VM) lager is dan de ingestelde drempelwaarde.
Ook wordt hoog swap geheugen gebruik waargenomen op pcrfclient01 VM op het moment van veerkracht gebeurtenis. Diagnostiek mislukt nadat de diagnostic.sh wordt uitgevoerd vanwege het lage geheugenprobleem in de pcrfclient-VM.
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
Conditie: diagnostiek faalt nadat de diagnostic.sh wordt uitgevoerd vanwege het lage geheugenprobleem in de pcrfclient-VM.
Procedure voor het oplossen van problemen met het gebruik van high-swap geheugen met CPS
Aanpak 1.
Oplossing voor gebruik van geheugen met hoog swap wordt waargenomen op pcrfclient01 VM op het moment van de veerkracht.
1. Log in op de pcrfclient-VM en controleer het schijfgeheugen met behulp van de opdrachtdu -sh *.
2. Controleer de directory/var/lib/carbon/whisper/cisco/quantum op geheugengebruik. Als een toename in het geheugen gebruik wordt waargenomen, dan is de kwestie toe te schrijven aan de statistieken bestanden.
3. Om geheugen te herstellen, verwijder de statistieken (.wsp) bestanden of verhoog het VM-schijfgeheugen.
4. Om het geheugen te herstellen, verwijdert u de statistieken handmatig uit de map /var/lib/carbon/whisper/cisco/quantum of verwijdert u de statistieken met behulp van deze stappen:
- Start de opdracht en noteer de schijfruimte
df –h.
- Voer deze opdrachten uit:
#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
- Werk de bewaartermijn (van 90 dagen tot 30 dagen) bij die aan het eind van het bestand wordt gevonden. Dit resulteert in een agressievere retentieperiode.
Ouder - inhoudingen: 10s:1d,60s:90d
Bijwerken naar - inhoudingen: 10s:1d,60s:30d
- Na de update van de retentieperiode voert u deze opdrachten uit:
#monit start carbon-cache
#monit start grafana-server
Opmerking: U kunt ook opdracht gebruikensystmctl start/stop/restart in plaats van monit start/stop/restart opdracht.
- Maak een bestand met de naam resize.sh en voeg de deze toe.
#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
- Voeg de benodigde toegangsrechten toe met de opdracht
chmod 777 resize.sh.
- Voer uit
./resize.sh "updated_retention_value"
Opdracht Voorbeeld: #./resize.sh "10s:1d 60s:30d"
- Nadat het script is voltooid voert u de volgende opdrachten uit om te bevestigen dat de hoeveelheid gegevens is verminderd door de vergelijking van vorige en huidige resultaat.
#run df –h: disk space should reduce or less than previous result
#du -h --max-depth=0 /var/lib/carbon/whisper/cisco/quantum/qps
- Controleer dat de Grafana de laatste 30 dagen statistieken en niet meer dan 30 dagen. (de bijgewerkte bewaartermijn is 30 dagen).
Aanpak 2.
Algemene aanbeveling om een hoog swap geheugen gebruik op te lossen.
Om het wisselgeheugen op uw systeem te wissen, hoeft u alleen maar de wisselaar uit te schakelen. Hierdoor worden alle gegevens van het wisselgeheugen naar het RAM-geheugen verplaatst. Het betekent ook dat je zeker moet zijn dat je de RAM hebt om deze operatie te ondersteunen. Een makkelijke manier om dit te doen is te lopen free -m om te zien wat wordt gebruikt in wissel en in RAM. Zodra u het uitzet, kunt u een willekeurige hoeveelheid tijd (30 seconden of zo) wachten om de verrichtingstijd te geven te voltooien, dan macht het ruilmiddel terug. Hierdoor wordt het wisselgeheugencachegeheugen gewist en opnieuw ingeschakeld. Hier zijn alle opdrachten die u nodig hebt.
1. Controleer het gebruik van de wisselruimte: # free -m
2. Schakel swap uit: # swapoff -a
Wacht ongeveer 30 seconden. Loop free -m om de hoeveelheid gebruikte/beschikbare swaps in de loop der tijd te zien afnemen.
3. Swap inschakelen:# swapon -a