1、用vmstat來(lái)監(jiān)控Linux系統(tǒng)的整體性能
vmstat是一個(gè)相當(dāng)全面的性能分析工具,可以用來(lái)觀察系統(tǒng)的進(jìn)程狀態(tài)、內(nèi)存使用情況、虛擬內(nèi)存的使用情況、磁盤(pán)的I/O、中斷、上下文切換、CPU的使用情況等性能信息。建議熟練掌握此命令。舉例如下:
[root@localhost ~]# vmstat 1 4 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd free buffcache si sobibo incsus sy idwa st 0 00225159234310474124800023100010000 0 002251592343104741248000010341930010000 0 002251592343104741248000010171470010000 0 002251592343104741248000010281830010000 |
其中:
procs
r:等待運(yùn)行的進(jìn)程數(shù)。
b:處在非中斷睡眠狀態(tài)的進(jìn)程數(shù)。
w:被交換出去的可運(yùn)行的進(jìn)程數(shù)。此數(shù)由Linux計(jì)算得出,但Linux并不耗盡交換空間。
memory
swpd:虛擬內(nèi)存使用情況,單位為KB。
free:空閑的內(nèi)存,單位為KB。
buff:被用來(lái)作為緩存的內(nèi)存數(shù),單位為KB。
swap
si:從磁盤(pán)交換到內(nèi)存的交換頁(yè)數(shù)量,單位為KB。
so:從內(nèi)存交換到磁盤(pán)的交換頁(yè)數(shù)量,單位為KB。
io
bi:發(fā)送到塊設(shè)備的塊數(shù),單位為塊。
bo:從塊設(shè)備接收到的塊數(shù),單位為塊。
system
in:每秒的中斷數(shù),包括時(shí)鐘中斷。
cs:每秒的環(huán)境(上下文)切換次數(shù)。
cpu
按CPU的總使用百分比來(lái)顯示。
us:CPU使用時(shí)間。
sy:CPU系統(tǒng)使用時(shí)間。
id:閑置時(shí)間。
標(biāo)準(zhǔn)情況下r和b值應(yīng)該為:
r<5,b≈0
假設(shè)輸出的信息中:
r經(jīng)常大于3或4,且id經(jīng)常少于50,表示CPU的負(fù)荷很重。
pi、po長(zhǎng)期不等于0,表示內(nèi)存不足。
disk經(jīng)常不等于0,且在b中的隊(duì)列大于2或3,表示io的性能不好。
2、查看系統(tǒng)內(nèi)核
查看系統(tǒng)內(nèi)核主要是為了掌握其版本號(hào),為安裝LVS等軟件做準(zhǔn)備。我們可以用命令uname -a來(lái)查看,如下所示:
[root@localhost ~]# uname -a Linux localhost.localdomain 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:14 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux |
簡(jiǎn)化的參數(shù)命令如下:
[root@localhost ~]# uname -r |
2.6.18-194.el5如果要查看系統(tǒng)是32位還是64位,可以用如下命令:[root@localhost /]# ls -lF /| grep /$此命令會(huì)查找是否有/lib64的目錄,有則表示系統(tǒng)為64位,無(wú)則表示系統(tǒng)為32位。大家記住一點(diǎn),64位的CPU系統(tǒng)架構(gòu)可以安裝32位或64位的系統(tǒng),而32位的CPU架構(gòu)只能安裝32位的系統(tǒng)。查找情況如下所示:
drwxr-xr-x 2 root root 4096 03-13 04:02 bin/ drwxr-xr-x 4 root root 1024 03-08 16:44 boot/ drwxr-xr-x 5 root root 4096 03-27 00:58 data/ drwxr-xr-x 11 root root 3800 03-17 07:27 dev/ drwxr-xr-x 101 root root 12288 03-26 08:47 etc/ drwxr-xr-x 4 root root 4096 03-09 10:34 home/ drwxr-xr-x 11 root root 4096 03-13 04:02 lib/ drwxr-xr-x 7 root root 4096 03-13 04:02 lib64/ drwx------ 2 root root 16384 03-08 16:33 lost+found/ drwxr-xr-x 2 root root 4096 2010-01-27 media/ drwxr-xr-x 2 root root 0 03-16 16:23 misc/ drwxr-xr-x 2 root root 4096 2010-01-27 mnt/ drwxr-xr-x 2 root root 0 03-16 16:23 net/ drwxr-xr-x 2 root root 4096 2010-01-27 opt/ dr-xr-xr-x 142 root root 0 03-16 16:22 proc/ drwxr-x--- 17 root root 4096 03-28 11:30 root/ drwxr-xr-x 2 root root 12288 03-13 04:02 sbin/ drwxr-xr-x 2 root root 4096 03-08 16:35 selinux/ drwxr-xr-x 2 root root 4096 2010-01-27 srv/ drwxr-xr-x 11 root root 0 03-16 16:23 sys/ drwxrwxrwt 5 root root 4096 03-28 04:02 tmp/ drwxr-xr-x 15 root root 4096 03-08 16:40 usr/ drwxr-xr-x 21 root root 4096 03-08 16:47 var/ |
另一種常見(jiàn)方法是通過(guò)file命令來(lái)判斷系統(tǒng)中的文件是32位還是64位的,以此作為判斷系統(tǒng)的依據(jù),如下所示:
[root@localhost /]# file /sbin/init /sbin/init: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped |
此結(jié)果表示系統(tǒng)為64位的。
3、查看服務(wù)器使用的Linux發(fā)行版的相關(guān)信息
下面的命令可查看服務(wù)器使用的Linux發(fā)行版的名稱(chēng)、版本號(hào)及描述信息等:
[root@localhost /]# lsb_release -a LSB Version: :core-3.1-amd64:core-3.1-ia32:core-3.1- noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch Distributor ID: CentOS Description: CentOS release 5.5 (Final) Release: 5.5 |
Codename:Final如果Centos5.5或以前的版本沒(méi)有此命令,我們可以通過(guò)yum -y install redhat-lsb來(lái)安裝。
4、查看系統(tǒng)已載入的相關(guān)模塊
Linux操作系統(tǒng)的核心具有模塊化的特性,因此在編譯核心時(shí),無(wú)須把全部的功能都放入核心。可以將這些功能編譯成一個(gè)個(gè)單獨(dú)的模塊,待需要時(shí)再分別載入。比如說(shuō)在安裝LVS+Keepalived時(shí),我們經(jīng)常會(huì)用lsmod來(lái)查看lvs模塊是否已經(jīng)載入,如下所示:
root@localhost ~]# lsmod| grep ip_vs ip_vs_wrr 35905 1 ip_vs 122113 3 ip_vs_wrr5.在Linux下查找PCI設(shè)置 |
有時(shí)需要在Linux下查找PCI設(shè)置。這時(shí)可以用lspci命令,它能列出機(jī)器中的PCI設(shè)備信息,比如聲卡、顯卡、Modem、網(wǎng)卡等的信息,主板集成設(shè)備的信息也能列出來(lái)。lspci讀取的是hwdata數(shù)據(jù)庫(kù)。可能有讀者和我一樣,最關(guān)心的還是網(wǎng)卡型號(hào)。
[root@localhost ~]# lspci | grep Ether 06:07.0 Ethernet controller: Intel Corporation 82541GI Gigabit Ethernet Controller (rev 05) 07:08.0 Ethernet controller: Intel Corporation 82541GI Gigabit Ethernet Controller (rev 05) |
網(wǎng)卡的監(jiān)控一般用命令miit-tool和iptraf,這個(gè)知識(shí)點(diǎn)將在后面講解。
本文主要從服務(wù)器的CPU、內(nèi)存、硬盤(pán)性能、負(fù)載及其他方面詳細(xì)說(shuō)明了Linux服務(wù)器的整體性能狀態(tài),希望大家能夠通過(guò)以上所列的方法來(lái)了解自己的Linux服務(wù)器的性能狀態(tài),這對(duì)工作會(huì)有很大幫助。