Solaris memóriavesztés megosztott memóriaszegmensek miatt

nemrégiben volt egy probléma az Oracle/SAP-val futó Solaris global zone egyikével .Általában a rendszer 40 GB~ 50 GB~ szabad fizikai memóriával fut.De amikor volt egy puha hang, azt találtuk, hogy a rendszer csinál több Lapozás a lemezre, és a szabad fizikai memória lement 6-8 GB.
szinte az összes felügyeleti eszközt lefuttattuk, hogy megtaláljuk, melyik folyamat fogyasztja a memóriát, de nem jártunk sikerrel .Aztán végül felvetettük az ügyet az oracle-nél, hogy megtaláljuk a kiváltó okot .
Rendszerkonfiguráció:
rendszer fizikai memória :256GB
csere: 480GB

mint egy top,prstat, használt fizikai memória szinte körül 200GB~ .

root@ ~]# sar -r 5 5
SunOS 5.10 Generic_144500-19 sun4u 09/05/2012
16:40:11 freemem freeswap
16:40:16 885031 399256061
16:40:22 883764 399240091
16:40:27 882266 399212586
16:40:33 882487 399223267
16:40:38 882453 399221275
Average 883193 399230658
root@ ~]# echo "::memstat" | mdb -k
Page Summary Pages MB %Tot
----------- ---------------- ---------------- ----
Kernel 1696877 13256 5%
Anon 24796106 193719 75%
Exec and libs 150104 1172 0%
Page cache 5814314 45424 18%
Free (cachelist) 437928 3421 1%
Free (freelist) 79348 619 0%
Total 32974677 257614
Physical 32952777 257443

végül az Oracle kernel mérnöke megállapította, hogy a megosztott memória szegmensei 103 GB fizikai memóriát fogyasztottak. Abban a 35 GB-os memóriában, amelyet érvénytelen memória szegmens használ, ahol egyetlen folyamat sem használta .

# ipcs -ZmA |awk '{x=x+} END {print x}'
111073374219

konvertálás GB

#bc
111073374219/1024/1024/1024
103.44514084886759519577

talált van pár megosztott memória szegmensek, amelyek nem használják, de tartja a memóriát.

# ipcs -mA |grep myora1
T ID KEY MODE OWNER GROUP CREATOR CGROUP NATTCH SEGSZ CPID LPID ATIME DTIME CTIME ISMATTCH
m 19777443 0x8795c49c --rw-rw---- myora1 db myora1 db 1220 24576 23178 21487 9:15:48 9:16:07 14:15:49 1220
m 19777472 0 --rw-rw---- myora1 db myora1 db 1220 34292629504 23178 21487 9:15:48 9:16:07 14:15:58 1220
m 20331903 0 --rw-rw---- myora1 db myora1 db 1220 201326592 23178 21487 9:15:48 9:16:07 14:16:47 1220
m 83886120 0 --rw-rw---- myora1 db myora1 db 0 34292629504 24490 24490 9:56:37 9:56:37 9:56:09 0
m 83886125 0 --rw-rw---- myora1 db myora1 db 0 201326592 24490 24490 9:56:09 9:56:37 9:56:09 0

megosztott memória szegmens 83886120 fogyasztott 34gb & 83886125 fogyasztott 200 MB, ahol nincs folyamat használja .A kiemelt mező többet fog magyarázni. Az első három szegmens érvényes, mivel olyan sok folyamat használta(1220), és a megosztott memória szegmensek utolsó két sorát semmilyen folyamat nem használta. (0)

NATTCH (a,A,o)

a kapcsolódó megosztott memória szegmenshez kapcsolódó folyamatok száma.

ISMATTCH (a,i)
az ISM száma a társított megosztott memória szegmensekhez kapcsolódik.

tehát miután megkaptuk a megerősítést az adatbázis-csapattól, eltávolítottuk Az érvénytelen megosztott memória szegmenst az alábbi paranccsal .
# ipcrm -m 83886120
# ipcrm -m 83886125

eltávolítása után, a rendszer vissza a normális és csere csökkentett tétel és van majdnem 50GB szabad fizikai memória .

Köszönjük, hogy elolvasta ezt a cikket.Kérjük, hagyjon megjegyzést, ha bármilyen kétsége van ,a lehető leghamarabb visszahívom Önt.

Leave a Reply

Az e-mail-címet nem tesszük közzé.