盤點 AIX 系統(tǒng)信息
一臺裝有 AIX 系統(tǒng)的機器初拿到手,可能對其所知甚少,要在上面做應(yīng)用或者開發(fā),迫切需要了解的信息又很多,也就顯得紛亂繁雜,無從下手。本節(jié)內(nèi)容將介紹一些方法,以方便您快速地對 AIX 機器做一個初步地了解。
AIX 操作系統(tǒng)版本以及硬件機器位數(shù)
可以用 oslevel 和 bootinfo 命令來查看服務(wù)器上運行的 AIX 系統(tǒng)版本以及 CPU 硬件信息!痮slevel ’可以顯示 AIX 系統(tǒng)以及軟件服務(wù)包的版本。AIX 系統(tǒng)版本是很重要的一個信息,在實踐工作中,需要安裝應(yīng)用軟件的時候,首先了解 AIX 版本是否能滿足安裝要求,比如 TSM 產(chǎn)品大多都要求 AIX 5.3 以上的版本!痓ootinfo ’命令用來返回系統(tǒng)的很多初始信息,比如硬件平臺類型、是否支持多處理器、機器位數(shù)等等,機器位數(shù)對于應(yīng)用程序的安裝和使用來說也很重要。
圖 1. 系統(tǒng)版本以及硬件位數(shù)基本用法 1
如圖 1 所示:’oslevel –r ’輸出結(jié)果為 5.3 版本的 AIX,‘bootinfo –y ’顯示該機器硬件是 64 位機器。
查看文件系統(tǒng)空間
一臺機器在使用之前,必須了解其文件系統(tǒng)情況,這樣才能選擇合適的工作空間。對于系統(tǒng)無法滿足應(yīng)用程序需求的空間,就需要考慮調(diào)整文件系統(tǒng)以滿足工作需求?梢允褂谩痙f ’ 命令來了解文件系統(tǒng)空間情況,‘ df ’命令可以帶’ -g ’或’ -k ’參數(shù),選擇空間大小顯示結(jié)果是按 GB 還是 KB 來顯示。
圖 2. 文件系統(tǒng)空間
如圖 2 所示,文件系統(tǒng)詳細信息包括了各文件系統(tǒng)的大小、已使用空間和空閑空間的大小、Mount 對應(yīng)關(guān)系等重要內(nèi)容。其中’/ ’,’/tmp ’和’/var ’文件系統(tǒng)對于整個系統(tǒng)的正常運行是至關(guān)重要的,因此要保證這三個文件系統(tǒng)有足夠的剩余空間。對于如何擴展文件空間,將在后面章節(jié)做介紹。
查看當前用戶
查看當前登陸用戶可以確保用戶對這臺機器的獨享或共享的知情權(quán),為了互不干擾,必須協(xié)調(diào)好對系統(tǒng)的操作以及在系統(tǒng)工作的相應(yīng)權(quán)限。可以使用’who ’命令才查看當前系統(tǒng)登陸用戶的情況。如圖 3 所示,templar 機器上有多個登陸本機的 session,還有一個 IP 為’ 9.123.144.127 ’的 session,它們均以 root 用戶身份登陸本機。
圖 3. 查看當前用戶
如果要在 AIX 中查看每個用戶,可以打開 /etc/passwd 文件就行了,改變用戶所屬于的組,只要改變 /etc/group 文件,然后重啟動機器。
查看當前運行進程
查看當前運行進程也是在 AIX 系統(tǒng)上日常工作,通過查看進程,可以了解當前系統(tǒng)中的系統(tǒng)進程和應(yīng)用進程的情況。對系統(tǒng)的目前運行狀況有個大致的了解。可以使用’ps ’命令在查看系統(tǒng)當前進程的運行狀態(tài)。如圖 4 所示,通過輸出結(jié)果可以看到用戶名、進程號、日期以及當前進程的全路徑名。
圖 4. 查看當前進程
如果為了查找指定進程還可以使用命令:ps – ef | grep xxxx( 進程名 )。
查看系統(tǒng)安裝了哪些應(yīng)用軟件
查看系統(tǒng)安裝了哪些應(yīng)用軟件也是熟悉該 AIX 系統(tǒng)必不可少的步驟,通過’lslpp ’命令可以查看系統(tǒng)中所有的應(yīng)用軟件。如圖 5 所示,命令結(jié)果輸出軟件的版本、狀態(tài)、類型以及介紹。
圖 5. 查看系統(tǒng)中應(yīng)用軟件
如果只關(guān)注系統(tǒng)中是否安裝了某個軟件,可以使用命令:’lslpp -La | grep xxx( 軟件名 ) ’來實現(xiàn),如圖 6 所示,查找 TSM 相關(guān)產(chǎn)品的安裝軟件,輸出結(jié)果里詳細記錄了具體的安裝包。
圖 6. 查看系統(tǒng)中指定應(yīng)用軟件
通過上述操作,可以對一臺新上手的 AIX 機器有個大致的了解,接下來,可以進一步探究 AIX 系統(tǒng)的詳細信息,這就需要對 CPU、內(nèi)存、文件系統(tǒng)、I/O以及網(wǎng)絡(luò)連接等信息進行查看,下面的章節(jié)將介紹這些內(nèi)容。
文件系統(tǒng)配置及調(diào)整
在 AIX 系統(tǒng)中一般使用’df ’命令來查看文件系統(tǒng)。AIX 系統(tǒng)安裝完后,會建立一些缺省的文件系統(tǒng),其中 ‘ / ’,’ /tmp ’和’ /var ’文件系統(tǒng)對于整個系統(tǒng)的正常運行是至關(guān)重要的,因此,要保證這三個文件系統(tǒng)有足夠的剩余空間,應(yīng)保證此三個文件系統(tǒng)的大小至少為 300M,每個文件系統(tǒng)有 20% 以上的剩余空間,如’/ ’ ( 根文件系統(tǒng) ) 滿了,則會導(dǎo)致用戶不能登錄。在系統(tǒng)運行的過程中,也應(yīng)該隨時關(guān)注這三個文件系統(tǒng)剩余空間的大小。
[root@babu> /] $ df –g ## 輸入文件系統(tǒng)信息,空間大小按 GB 形式 ##
Filesystem GB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 0.09 0.04 50% 6097 13% /
/dev/hd2 2.16 1.19 26% 41662 8% /usr
/dev/hd9var 0.19 0.02 41% 6201 13% /var
/dev/hd3 0.06 0.04 33% 90 1% /tmp
/dev/hd1 0.03 0.03 4% 25 1% /home
/proc - - - - - /proc
/dev/hd10opt 0.16 0.03 83% 3473 9% /opt
/dev/lv00 40.00 6.02 85% 814 1% /tsmserv
/dev/lv01 10.00 1.05 90% 854 1% /tsmdriver
|
如果發(fā)現(xiàn)哪個文件系統(tǒng)的剩余空間不足的時候,可以用工具 smitty 來完成。smitty 是為了簡化系統(tǒng)管理任務(wù)而設(shè)計一種應(yīng)用交互接口工具,smitty 的功能很強大,可以管理用戶、設(shè)備、網(wǎng)絡(luò)、文件系統(tǒng)等等?梢栽 AIX 系統(tǒng)中運行命令’man smitty ’去了解更多關(guān)于 smitty 的內(nèi)容。在此,我們可以利用’smitty chfs ’擴展相應(yīng)文件系統(tǒng)的空間,運行’smitty chfs ’- ’ Change / Show Characteristics of an Enhanced Journaled File System ’- ’ /svt3 ’ ( 選擇需要調(diào)整的文件系統(tǒng),比如:svt3),進入到圖 7 所示界面,可以對文件空間大小做調(diào)整,然后保存退出。
圖 7. 調(diào)整文件系統(tǒng)空間大小
網(wǎng)絡(luò)資源配置
AIX 系統(tǒng)的網(wǎng)絡(luò)資源配置也很豐富,包括檢查所有網(wǎng)卡的 IP 地址配置、TCP/IP 地址的配置、檢查系統(tǒng)路由表等等。
a). 用命令 ifconfig -a 檢查所有網(wǎng)卡的 IP 地址配置,如圖 8 所示,IP 地址是 9.52.181.38,
圖 8. 顯示 IP 地址情況
每塊網(wǎng)卡應(yīng)配置在不同網(wǎng)段。如果兩塊網(wǎng)卡配置在同一網(wǎng)段,會產(chǎn)生網(wǎng)絡(luò)通信故障。
b). 可以用命令’netstat –r ’檢查系統(tǒng)路由表,如圖 9 所示,通過路由樹可以分析路由路徑:
圖 9. 顯示路由
每塊網(wǎng)卡都應(yīng)有指向本地網(wǎng)段的路由,檢查 /etc/hosts 文件中的每一行,確保每一個 IP 地址只對應(yīng)一個主機名,每一個主機名只對應(yīng)一個 IP 地址。
c). 設(shè)置 TCP/IP 同其它系統(tǒng)配置操作一樣,TCP/IP 的設(shè)置也是依靠工具 smitty 來實現(xiàn):
首先,我們通過命令’lsdev -Cc adapter’來查看網(wǎng)卡設(shè)置,如圖 10 所示:
圖 10. 網(wǎng)卡設(shè)置情況
然后,使用工具’smitty tcpip’來設(shè)置:選擇’Minimum Configuration & Startup’ ,在‘Available Network Interfaces’對話框中選擇 ‘en0 Standard Ethernet Network Interface’ ,如圖 11 所示:
圖 11. 配置 TCP/IP
如有多塊網(wǎng)卡,根據(jù)前面查看的設(shè)置 ,選擇正確的網(wǎng)卡,一般不選‘et0 IEEE 802.3 Ethernet Network Interface’在 HOSTNAME 中填入所起的主機名 (aix61)。在 Internet ADDRESS (dotted decimal) 設(shè)置 IP 地址 (9.52.181.38,在 Network MASK (dotted decimal) 設(shè)置掩碼 (255.255.254.0) ,在 Default GATEWAY Address 設(shè)置網(wǎng)關(guān),全部選定后按回車(Enter)運行,這樣就完成了對系統(tǒng) TCP/IP 的設(shè)置。
CPU 及內(nèi)存的檢查以及處理
同任何操作系統(tǒng)一樣,AIX 系統(tǒng)中 CPU 和內(nèi)存是非常重要的兩大部分。一臺 AIX 服務(wù)器剛上手,必須熟悉它的 CPU 和內(nèi)存情況,快速確認該系統(tǒng)能否滿足使用需求,如何獲取簡捷明的 CPU 和內(nèi)存信息,并根據(jù)信息對該系統(tǒng)的性能情況做出判斷至關(guān)重要。適用于 AIX 系統(tǒng)的 CPU 及內(nèi)存的檢測工具有很多種,在此選擇常用的 vmstat 來做介紹(可以通過 man vmstat 詳細了解該工具),運行 vmstat 不需要特別的使用權(quán)限,這些系統(tǒng)信息是用來向用戶提供查詢以及分析系統(tǒng)瓶頸問題信息的,AIX 系統(tǒng)在計算進程情況時不將正在運行的 vmstat 自己計算進去。vmstat 對系統(tǒng)的進程情況、內(nèi)存使用情況、交換頁和 I/O 塊使用情況、中斷以及 CPU 使用情況進行統(tǒng)計并報告相應(yīng)的信息。第一個顯示內(nèi)容指出了計算機自上次重啟至今的平均使用情況,后面的每一行信息是按延時定期地顯示系統(tǒng)的各部分信息、進程信息和內(nèi)存信息都是即時產(chǎn)生的。
圖 12. 運行 vmstat
如圖 12 所示:綠色框內(nèi):r 表示運行隊列中的進程數(shù),b 表示等待隊列中的進程數(shù),r 數(shù)目很大表示系統(tǒng)工作量較大。
黃色框內(nèi):avm 表示活動的虛擬頁面,fre 表示空閑的頁面,當系統(tǒng)內(nèi)存大于 64MB 時,最小值 MINFREE 為 120frames,當內(nèi)存小于 64MB 時,最小值為內(nèi)存以 MB 計的兩倍,F(xiàn)在大多數(shù) AIX 機器的內(nèi)存都應(yīng)該遠遠大于 64M 了。如果 fre<MINFREE,將會出現(xiàn)連續(xù)不斷的頁面調(diào)度,將導(dǎo)致系統(tǒng)性能問題,對于 page 列,re,pi,po,cy 維持于比較穩(wěn)定的狀態(tài):
pi: 為每秒鐘從分頁空間 (Paging Space) 調(diào)入內(nèi)存的頁面數(shù) (4KB/page);
po: 為每秒鐘從內(nèi)存調(diào)入分頁空間 (Paging Space) 的頁面數(shù) ;
當進程請求的內(nèi)存頁面數(shù)大于內(nèi)存中可用頁面數(shù)時 , 一些內(nèi)存頁會被換出內(nèi)存,存放于系統(tǒng)分頁空間 (Paging Space) 中,以后使用時再調(diào)入內(nèi)存。由于訪問分頁空間中頁面的速度遠小于對內(nèi)存頁面的訪問速度 , 所以頻繁的換頁會降低系統(tǒng)運行速度。 當 pi 和 po 為連續(xù)非零值時,系統(tǒng)運行速度將會降低。
紅色框內(nèi):us,sys,id 和 wa 是不確定的,最理想的狀態(tài)是使 CPU 處于 100% 工作狀態(tài)。但這只適合單用戶的情況下。如果在多用戶環(huán)境中 us + sys >> 80,進程就會在運行隊列中花費等待時間,響應(yīng)時間和吞吐量就會下降,wa>40 表明磁盤 IO 也許存在不合理的平衡,或者對磁盤操作比較頻繁。
通過上述命令,可以對 AIX 系統(tǒng)內(nèi)存和 CPU 的運行狀況有個大致的了解,接下來介紹幾個極其實用的命令來快速了解系統(tǒng)中具體進程的 CPU 及內(nèi)存耗費情況:
a)顯示 10 個消耗 CPU 最多的進程,如圖 13 所示:
ps aux|sort -rn +2|head -10 (10 表示選擇的進程數(shù),可以根據(jù)具體需求修改 )
圖 13. CPU 及內(nèi)存耗費情況
b)顯示系統(tǒng)中內(nèi)存消耗最多的進程,如圖 14 所示:
ps vx|grep -v PID|sort -rn +6|head -10 (10 表示選擇的進程數(shù),可以根據(jù)具體需求修改 )
圖 14. 顯示內(nèi)存消耗最多的進程
c)顯示系統(tǒng)中存儲空間消耗最多的進程:
ps aux |sort -rn +3 |head -10 (10 表示選擇的進程數(shù),可以根據(jù)具體需求修改 ),
圖 15. 顯示系統(tǒng)中內(nèi)存消耗最多的進程
通過上述命令,我們可以全面的了解系統(tǒng)中 CPU 和內(nèi)存的分配情況,對于一些占用資源比較多的、嚴重影響系統(tǒng)性能的進程,可以酌情考慮殺掉該進程,用命令 Kill -9 進程號,就可以殺掉不必要的進程,還 AIX 系統(tǒng)一個輕便、簡練的運行環(huán)境。
輸入輸出 (I/O) 的檢查以及處理
輸入/輸出 (I/O) 是系統(tǒng)的重要性能指標,對于 AIX 系統(tǒng)也同樣重要。系統(tǒng)的輸入輸出的工作效率跟 CPU 和內(nèi)存的關(guān)系十分緊密,也直接影響到系統(tǒng)的性能。對于日常使用的 AIX 機器,要時刻關(guān)注它的輸入輸出情況,對于影響系統(tǒng)性能的操作要及時地進行調(diào)整,讓系統(tǒng)能在一種正常的工作負荷下高效工作。為了方便查看輸入輸出狀況,可以使用 iostat 命令來檢查 tty 設(shè)備、硬盤和 CD-ROM 的 I/0 量:運行命令:iostat 5 10 下面為其中一次的數(shù)據(jù):
圖 16. 輸入輸出檢查情況
如圖 16 所示:其中:參數(shù) %iowait 表示等待本地 I/O 時 CPU 空閑時間的百分比,參數(shù) %idle 則表示未等待本地 I/O 時 CPU 空閑時間的百分比;當沒有需要使用 CPU 的進程,但至少有一個進程在等待 I/O 時, CPU 時間屬性標為 iowait。如果 iowait 時間的百分比很高,則表示該磁盤輸入輸出 (I/O) 是導(dǎo)致系統(tǒng)運行速度緩慢的主要原因;參數(shù) %tm_act 表示硬盤繁忙的百分比,該值很高,表明硬盤存在 I/O 瓶頸;當參數(shù) %tm_act( 硬盤繁忙時間 ) 很高時,可能是發(fā)現(xiàn)系統(tǒng)運行速度在減慢。有時系統(tǒng)上某個硬盤的 %tm_act 值為 60% 或更高時,系統(tǒng)性能就會受到影響。通過對輸出結(jié)果的分析,可以清楚地判斷當前系統(tǒng)的輸入輸出情況,以及對系統(tǒng)性能會產(chǎn)生的影響,以輔助用戶及時地對系統(tǒng)做出調(diào)整,防止出現(xiàn)不必要的麻煩。為此,也能從中總結(jié)出一些經(jīng)驗:觀察繁忙與空閑的硬盤,將數(shù)據(jù)從忙的盤移至相對空閑的硬盤上,這會在一定程度上減輕由此引起的 I/O 瓶頸。及時檢查內(nèi)存換頁的頻繁程度,大量的換頁操作自然會增加系統(tǒng) I/O 負載,影響系統(tǒng)性能。
總結(jié)
通過上述的介紹和總結(jié)可以發(fā)現(xiàn),平時接觸較少的 AIX 系統(tǒng)其實也不是太復(fù)雜,同其它操作系統(tǒng)相類似,只要掌握了一些關(guān)鍵的系統(tǒng)信息以及合理得方式方法,您也就有了駕御 AIX 系統(tǒng)的能力。在應(yīng)用 AIX 系統(tǒng)的實踐工作中,這只是一個開始,但是,對于在 AIX 系統(tǒng)上進行開發(fā)和測試工作來說,這已經(jīng)足夠了,希望它會讓您更加方便和愉悅地工作。
關(guān)于作者
劉舸,2007 年加入 IBM 中國軟件開發(fā)中心,從事與 Tivoli Storage Manager 的開發(fā)測試工作。
http://www.ibm.com/developerworks/cn/aix/library/1111_liuge_getstartaix/index.html