最近,領導看到一臺aix的主機內存利用率99.9%,頗爲震驚,讓我查查。在此記錄。
一、檢查主機資源的概況
命令:topas
這裏看到計算空間的內存只佔用了54%,沒有使用到分頁paging space。所以初步斷定沒有內存的瓶頸問題。
命令:svmon -G
看到內存的分片是4K,有7330個分片空閒,那麼空閒內存是7330*4K = 28M
當然也可以看svmon -P查看每個進程的內存佔用情況。
因爲爲了提高 I/O 性能,如果應用程序或內核沒有明確請求的話,AIX會用儘可能多的空閒內存進行文件緩存。
二、查看內存管理
命令:vmstat
這裏kthr表示kernel thread其中的r表示在一個cpu時間片中的線程數。b表示阻塞(等待)這裏都是0,表示進程情況良好。
memory內存狀態:avm是active virtual pages實際使用的內存 2833902*4k = 11069M;該內存和total的20G內存顯然不是99.9%的關係。
paging space還是沒有使用。
faults的值略微高,in表示device interrupts, sy表示system call,cs表示kernel thread context switches.
cpu利用情況:m 沒有wait
命令:nmon,進入nmon後輸入m
最後在filesystemcache看到了99.9%的問題,系統因爲IO頻繁,系統將內存作爲了文件的緩存,文件系統實際佔用了44.8%的內存,造成了內存使用率99.9%。
參考文章:http://www.ibm.com/developerworks/cn/aix/library/au-memory_issue/