Inleiding
Dit document beschrijft hoe de fout in een monovervloed van de instantie in de sessionefout van Cisco Policy Suite (CPS) moet worden opgelost door het toegenomen gebruik van de DATA_PATH-ruimte.
Voorwaarden
Vereisten
Cisco raadt kennis van de volgende onderwerpen aan:
Gebruikte componenten
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
- CPS 2002
- MongoDB v3.6.17
- 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 levend is, zorg er dan voor dat u de mogelijke impact van om het even welke opdracht begrijpt.
Achtergrondinformatie
CPS maakt gebruik van MongoDB waar monovergoprocessen worden uitgevoerd op sessionemer virtuele machines (VM's) om de basisdatabankstructuur te vormen.
Meervoudige mongod gevallen lopen op een sessionhouder, en elk van hen heeft verschillende poortnummers toegewezen. Deze mondige voorbeelden nemen deel aan verschillende replica-sets.
Probleem
Wanneer een bepaalde monoverie stopt als gevolg van toegenomen DATA_PATH-ruimteverbruik van de bijbehorende DATA PATH, ziet u hetzelfde bij diagnostiek voor die sessie. De verbindingen met de specifieke haven zijn mislukt en er is 100% gebruik van de /var/data/sessions.X partitie. Vandaar dat dit monovervloed in de OFF-LINE-status in de respectieve replica-set terechtkomt. Vervolgens wordt zijn deelnemingsstatus in die replica-set onbekend.
Er wordt een steekproeffout in de diagnostiek verstrekt. Voer het diagnostics.sh
opdracht van ClusterManager of PCclient om de huidige status van mongod en replica-set te controleren.
Could not connect to port 27718 on sessionmgr02 (set02)...[FAIL]
Disk usage on sessionmgr02...[FAIL]
Disk usage is above critical threshold (97%) on sessionmgr02.
Results of: ssh root@sessionmgr02 -x 'df -hP -x iso9660'
-----------------------------------
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 95G 28G 62G 32% /
tmpfs 48G 0 48G 0% /dev/shm
tmpfs 57G 0 57G 0% /var/data/sessions.1
tmpfs 12G 12G 0 100% /var/data/sessions.2
-----------------------------------
|---------------------------------------------------------------------------------------------|
| BALANCE:set02 |
| Status via arbitervip:27718 sessionmgr01:27718 |
| Member-1 - 27718 : - UNKNOWN - sessionmgr02 - OFF-LINE - 19003 days - 2 |
| Member-2 - 27718 : - PRIMARY - sessionmgr01 - ON-LINE - -------- - 3 |
| Member-3 - 27718 : 192.168.10.146 - ARBITER - arbitervip - ON-LINE - -------- - 0 |
|---------------------------------------------------------------------------------------------|
De Mongod Instance in Sessionmgr herstellen
In de sectie wordt de procedure beschreven om de monovergoedinstantie in sessionmgr te herstellen indien deze is afgenomen door een toegenomen ruimteverbruik van DATA_PATH.
Voordat u deze procedure start, moet u bevoorrechte toegang hebben tot:
- Toegang tot voet aan de CPS CLI
- qns-svn toegang van gebruikers tot de CPS GUI's - Beleidsbouwer en CPS Central
Hieronder volgt de procedure voor sessionmg02 en port 27718, dat deel uitmaakt van set02.
- Meld u aan bij de respectievelijke sessionhouder.
- Voer deze opdracht in om de partitie te identificeren waar deze gegevens voor die specifieke set02 heeft opgeslagen.
[root@dc1-sessionmgr02 ~]# cat /etc/broadhop/mongoConfig.cfg | grep -A6 set02 | grep "DATA_PATH"
ARBITER_DATA_PATH=/var/data/sessions.2
DATA_PATH=/var/data/sessions.2
- Typ deze opdracht om te controleren of
aido_client
proces aanwezig is of niet.
[root@dc1-sessionmgr02 ~]# monsum
Monit 5.26.0 uptime: 11d 2h 9m
┌─────────────────────────────────┬────────────────────────────┬───────────────┐
│ Service Name │ Status │ Type │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ dc1-sessionmgr02 │ OK │ System │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ whisper │ OK │ Process │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ snmpd │ OK │ Process │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ memcached │ OK │ Process │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ collectd │ OK │ Process │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ auditrpms.sh │ OK │ Process │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ aido_client │ OK │ Process │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ primary_db_frag │ OK │ Program │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ cpu_load_monitor │ OK │ Program │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ cpu_load_trap │ OK │ Program │
├─────────────────────────────────┼────────────────────────────┼───────────────┤
│ gen_low_mem_trap │ OK │ Program │
└─────────────────────────────────┴────────────────────────────┴───────────────┘
- Als de
aido_client
proces aanwezig is, monit stop aido_client
bevel om het te stoppen.
- Voer deze opdracht in om te controleren of het betreffende mongoedinstantie-proces nog actief is of niet.
[root@dc1-sessionmgr02 ~]# ps -ef | grep 27718
root 12292 11114 0 02:05 pts/0 00:00:00 grep --color=auto 27718
root 19620 1 0 2021 ? 01:36:51 /usr/bin/mongod --ipv6 --syncdelay 1 --slowms 500 --storageEngine
mmapv1 --bind_ip_all --port 27718 --dbpath=/var/data/sessions.2 --replSet set02 --fork --pidfilepath
/var/run/sessionmgr-27718.pid --oplogSize 5120 --logpath /var/log/mongodb-27718.log --logappend --quiet
[root@dc1-sessionmgr02 ~]#
- Als de mongod instantie nog actief is, voer deze opdracht in om het te stoppen.
[root@dc1-sessionmgr02 ~]# /etc/init.d/sessionmgr-27718 stop
Stopping sessionmgr-27718 (via systemctl): [ OK ]
[root@dc1-sessionmgr02 ~]#
- Navigeer naar DATA_PATH ontvangen in stap 1.
[root@dc1-sessionmgr02 ~]# cd /var/data/sessions.2
[root@dc1-sessionmgr02 sessions.2]# ls -lrt
total 6616100
-rw------- 1 root root 16777216 Jun 22 2018 admin.ns
-rw------- 1 root root 67108864 Jun 22 2018 admin.0
-rw------- 1 root root 69 Nov 10 07:27 storage.bson
-rw------- 1 root root 16777216 Nov 10 07:27 vouchers.ns
-rw------- 1 root root 67108864 Nov 10 07:27 vouchers.0
-rw------- 1 root root 2146435072 Nov 10 07:27 local.2
drwx------ 2 root root 4096 Nov 10 07:27 local
-rw------- 1 root root 67108864 Nov 10 07:27 local.0
-rw------- 1 root root 16777216 Jan 7 14:38 config.ns
-rw------- 1 root root 67108864 Jan 7 14:38 config.0
-rw------- 1 root root 16777216 Jan 11 02:06 local.ns
-rw------- 1 root root 2146435072 Jan 11 02:06 local.1
drwx------ 2 root root 4096 Jan 11 02:06 diagnostic.data
-rw------- 1 root root 2146435072 Jan 11 02:06 local.3
-rw------- 1 root root 0 Jan 11 02:07 mongod.lock
drwx------ 2 root root 4096 Jan 11 02:08 journal
[root@dc1-sessionmgr02 sessions.2]#
- Typ de opdracht
rm -rf *
om de DATA_PATH te wissen.
- Voer deze opdracht in om de mongoinstantie te starten. Deze opdracht duurt een paar minuten.
[root@dc1-sessionmgr02 ~]# /etc/init.d/sessionmgr-27718 start
Starting sessionmgr-27718 (via systemctl): [ OK ]
[root@dc1-sessionmgr02 ~]#
- Als u de
aido_client
in stap 3, monit start adio_client
opdracht om de taak opnieuw te starten.
- Voer het
diagnostics.sh
opdracht van ClusterManager of PCclient om te bevestigen dat de respectieve monoverinstantie wordt hersteld en in reproductieset on-LINE wordt.
|---------------------------------------------------------------------------------------------|
| BALANCE:set02 |
| Status via arbitervip:27718 sessionmgr01:27718 sessionmgr02:27718 |
| Member-1 - 27718 : - SECONDARY - sessionmgr02 - ON-LINE - 0 sec - 2 |
| Member-2 - 27718 : - PRIMARY - sessionmgr01 - ON-LINE - -------- - 3 |
| Member-3 - 27718 : XX.XX.XX.XX - ARBITER - arbitervip - ON-LINE - -------- - 0 |
|---------------------------------------------------------------------------------------------|