




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Good is good, but better carries it.精益求精,善益求善。Linux系統管理員應該知道的20個系統監控工具Linux系統管理員應該知道的20個系統監控工具需要監控Linux服務器系統性能嗎?嘗試下面這些系統內置或附件的工具吧。大多數Linux發行版本都裝備了大量的監控工具。這些工具提供了能用作取得相關信息和系統活動的量度指標。你能使用這些工具發現造成性能問題可能原因。此次討論到的工具只是分析和調試服務器下面問題時最基本工具中的一部分。1.找出瓶頸2.硬盤(存儲)瓶頸3.CPU及內存瓶頸4.網絡瓶頸#1:top-進程活動top提供一個當前運行系統實時動態的視圖,
2、也就是正在運行進程。在默認情況下,顯示系統中CPU使用率最高的任務,并每5秒鐘刷新一次。圖01.Linuxtop命令常用熱鍵熱鍵用途t顯示摘要信息開關.m顯示內存信息開關.A分類顯示系統不同資源的使用大戶。有助于快速識別系統中資源消耗多的任務。f添加刪除所要顯示欄位.o調整所要顯示欄位的順序.r調整一個正在運行的進程Nice值.k結束一個正在運行的進程.z彩色/黑白顯示開關相關鏈接:HYPERLINK/tips/how-do-i-find-out-linux-cpu-utilization.htmlHowdoIFindOutLinuxCPUUtilization?譯者推薦鏈接:HYPERLIN
3、K/imlidapeng/blog/item/c33b42e41170b925b83820e3.htmlLinux系統管理員必備工具系列之top(原創)#2:vmstat-系統活動、硬件及系統信息使用vmstat命令可以得到關于進程、內存、內存分頁、堵塞IO、traps及CPU活動的信息。#vmstat3輸出樣例:procsmemoryswapiosystemcpurbswpdfreebuffcachesisobiboincsussyidwast000254098852218851304000023242419600100254098852218851304000007201199665109
4、90000025409565221885130400000011511569419500000254095652218851305000006111743910990000025409405221885130512000536118993210980000025384445221885130588000011871417419600000249006052218851306400001812531123519400顯示內存使用詳細信息#vmstat-m顯示內存活動/不活動的信息#vmstat-a相關鏈接:HYPERLINK/tips/linux-resource-utilization-to-
5、detect-system-bottlenecks.htmlHowdoIfindoutLinuxResourceutilizationtodetectsystembottlenecks?譯者推薦鏈接:HYPERLINK/imlidapeng/blog/item/51872329329ab8335243c1c9.htmlLinux系統管理員必備工具系列之vmstat(原創)#3:w-顯示誰已登錄,他們正在做什么?w命令顯示系統當前用戶及其運行進程的信息。#wusername#wvivek輸出樣例:17:58:47up5days,20:28,2users,loadaverage:0.36,0.26
6、,0.24USERTTYFROMLOGINIDLEJCPUPCPUWHATrootpts/04514:555.00s0.04s0.02svim/etc/resolv.confrootpts/4517:430.00s0.03s0.00sw#4:uptime-告訴系統已經運行了多久?uptime命令過去只顯示系統運行多久。現在,可以顯示系統運行多久、當前有多少的用戶登錄、在過去的1,5,15分鐘里平均負載時多少。#uptime輸入樣例:18:02:41up41days,23:42,1user,loadaverage:0.00,0.00,0.001可以被認為是最優的負載值。負載是會隨著系統不同改變得
7、。單CPU系統1-3和SMP系統6-10都是可能接受的。#5:ps-顯示進程ps命令顯示當前運行進程的快照。使用-A或-e顯示所有進程。#ps-A輸出樣例:PIDTTYTIMECMD1?00:00:02init2?00:00:02migration/03?00:00:01ksoftirqd/04?00:00:00watchdog/05?00:00:00migration/16?00:00:15ksoftirqd/14881?00:53:28java4885tty100:00:00mingetty4886tty200:00:00mingetty4887tty300:00:00mingetty48
8、88tty400:00:00mingetty4891tty500:00:00mingetty4892tty600:00:00mingetty4893ttyS100:00:00agetty12853?00:00:00cifsoplockd12854?00:00:00cifsdnotifyd14231?00:10:34lighttpd14232?00:00:00php-cgi54981pts/000:00:00vim55465?00:00:00php-cgi55546?00:00:00bind9-snmp-stat55704pts/100:00:00psps與top非常相似,但ps提供更多的信息。
9、輸出長格式#ps-Al輸出附加全格式(顯示進程在執行時傳入的參數)#ps-AlF顯示進程結構#ps-AlFH在進程后顯示線程#ps-AlLm打印服務器上所有進程#psax#psaxu打印進程樹#ps-ejH#psaxjf#pstree打印安全信息#ps-eoeuser,ruser,suser,fuser,f,comm,label#psaxZ#ps-eM查看使用Vivek用戶名運行的進程#ps-Uvivek-uviveku設置自定義輸出格式#ps-eopid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm#psaxostat,euid,ru
10、id,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm#ps-eopid,tt,user,fname,tmout,f,wchan只顯示Lighttpd的進程ID#ps-Clighttpd-opid=或者#pgreplighttpd或者#pgrep-uvivekphp-cgi顯示PID為55977的進程名稱#ps-p55977-ocomm=找出消耗內存最多的前10名進程#ps-auxf|sort-nr-k4|head-10找出使用CPU最多的前10名進程#ps-auxf|sort-nr-k3|head-10#6:free-內存使用情況free命令顯示系統中空閑的、已用
11、的物理內存及swap內存,及被內核使用的buffer。#free輸出樣例:totalusedfreesharedbufferscachedMem:123028969739664256323205231245154740-/+buffers/cache:40618008241096Swap:105224801052248相關鏈接:HYPERLINK/faq/linux-check-the-size-ofsize/LinuxFindOutVirtualMemoryPAGESIZEHYPERLINK/faq/cpu-usage-limiter-for-linux/LinuxLimitCPUUsage
12、PerProcessHYPERLINK/tips/how-much-ram-does-my-linux-system.htmlHowmuchRAMdoesmyUbuntu/FedoraLinuxdesktopPChave?#7:iostat-CPU平均負載,硬盤活動iostat命令可報告中央處理器(CPU)的統計信息,各種設備、分區及網絡文件系統輸入/輸出的統計信息。#iostat輸出樣例:Linux2.6.18-128.1.14.el5(www03.nixcraft.in)06/26/2009avg-cpu:%user%nice%system%iowait%steal%idle3.500.0
13、90.510.030.0095.86Device:tpsBlk_read/sBlk_wrtn/sBlk_readBlk_wrtnsda22.0431.88512.0316193351260102868sda10.000.000.002166180sda222.0431.87512.0316189010260102688sda30.000.000.0016150相關鏈接:HYPERLINK/faq/howto-linux-track-nfs-client-disk-metrics/LinuxTrackNFSDirectory/DiskI/OStats#8:sar-搜集和報告系統活動sar命令用來
14、搜集、報告和儲存系統活動信息。查看網路計數器,輸入:#sar-nDEV|more顯示最近24小時網絡計數器#sar-nDEV-f/var/log/sa/sa24|more你亦可以用sar顯示實時情況#sar45輸出樣例:Linux2.6.18-128.1.14.el5(www03.nixcraft.in)06/26/200906:45:12PMCPU%user%nice%system%iowait%steal%idle06:45:16PMall2.000.000.220.000.0097.7806:45:20PMall2.070.000.380.030.0097.5206:45:24PMall
15、0.940.000.280.000.0098.7806:45:28PMall1.560.000.220.000.0098.2206:45:32PMall3.530.000.250.030.0096.19Average:all2.020.000.270.010.0097.70相關鏈接:HYPERLINK/tips/howto-write-system-utilization-data-to-file.htmlt_blankHowtocollectLinuxsystemutilizationdataintoafile#9:mpstat-多處理器使用率mpstat命令可以顯示所有可用處理器的使用情況
16、,處理器編號從0開始。mpstat-PALL顯示每個處理器的平均使用率。#mpstat-PALL輸出樣例:Linux2.6.18-128.1.14.el5(www03.nixcraft.in)06/26/200906:48:11PMCPU%user%nice%sys%iowait%irq%soft%steal%idleintr/s06:48:11PMall3.500.090.340.030.010.170.0095.861218.0406:48:11PM03.440.080.310.020.000.120.0096.041000.3106:48:11PM13.100.080.320.090.0
17、20.110.0096.2834.9306:48:11PM60.020.000.110.0095.250.0006:48:11PM33.770.110.380.030.010.240.0095.4644.8006:48:11PM42.960.070.290.040.020.100.0096.5225.9106:48:11PM53.260.080.280.030.010.100.0096.2314.9806:48:11PM64.000.100.340.010.000.130.0095.423.7506:48:11PM73.300.110.390.030.010.460.0
18、095.6976.89相關鏈接:HYPERLINK/faq/linux-mpstat-command-report-processors-related-statistics/t_blankLinuxdisplayeachmultipleSMPCPUprocessorsutilizationindividually.#10:pmap-進程的內存使用pmap命令可以顯示進程的內存映射,使用這個命令可以找出造成內存瓶頸的原因。#pmap-dPID顯示PID為47394進程的內存信息。#pmap-d47394輸出樣例:47394:/usr/bin/php-cgiAddressKbytesModeOf
19、fsetDeviceMapping00000000004000002584r-x-0000000000000000008:00002php-cgi0000000000886000140rw0000000000286000008:00002php-cgi00000000008a900052rw00000000008a9000000:00000anon0000000000aa800076rw00000000002a8000008:00002php-cgi000000000f6780001980rw000000000f678000000:00000anon000000314a600000112r-x
20、-0000000000000000008:00002ld-2.5.so000000314a81b0004r000000000001b000008:00002ld-2.5.so000000314a81c0004rw000000000001c000008:00002ld-2.5.so000000314aa000001328r-x-0000000000000000008:00002libc-2.5.so000000314ab4c0002048000000000014c000008:00002libc-2.5.so.00002af8d48fd0004rw0000000000006000008:0000
21、2xsl.so00002af8d490c00040r-x-0000000000000000008:00002libnss_files-2.5.so00002af8d49160002044000000000000a000008:00002libnss_files-2.5.so00002af8d4b150004r0000000000009000008:00002libnss_files-2.5.so00002af8d4b160004rw000000000000a000008:00002libnss_files-2.5.so00002af8d4w-s-00000000000
22、00000000:00009zero(deleted)00007fffc95fe00084rw00007ffffffea000000:00000stackffffffffff60000081920000000000000000000:00000anonmapped:933712Kwriteable/private:4304Kshared:768000K最后一行非常重要:*mapped:933712K內存映射所占空間大小*writeable/private:4304K私有地址空間大小*shared:768000K共享地址空間大小相關鏈接:HYPERLINK/tips/howto-find-mem
23、ory-used-by-program.htmlt_blankLinuxfindthememoryusedbyaprogram/processusingpmapcommand#11和#12:netstat和ss-網絡相關信息netstat可以顯示網絡鏈接、路由表信息、接口統計信息、偽裝鏈接和多播成員(multicastmemberships),ss命令用來顯示網絡套接字信息,它允許顯示類似netstat一樣的信息。關于ss和netstat使用,可參考下列資源。相關鏈接:HYPERLINK/tips/linux-investigate-sockets-network-connections.ht
24、mlss:DisplayLinuxTCP/UDPNetworkandSocketInformationHYPERLINK/tips/netstat-command-tutorial-examples.htmlGetDetailedInformationAboutParticularIPaddressConnectionsUsingnetstatCommand#13:iptraf-網絡實時信息iptraf是一個可交互式的IP網絡監控工具。它可以生成多種網絡統計信息包括:TCP信息、UDP數量、ICMP和OSPF信息、以太網負載信息、節點狀態、IP校驗錯誤等。有下面幾種信息格式:不同網絡TCP鏈接
25、傳輸量不同網絡接口IP傳輸量不同協議網絡傳輸量不同TCP/UDP端口和不同包大小網絡傳輸量不同第二層地址網絡傳輸量圖02:一般接口信息:不同網絡接口IP傳輸量圖03:不同網絡TCP鏈接傳輸量#14:tcpdump:詳細的網絡流量分析tcpdump是一個簡單網絡流量轉儲工具,然而要使用好需要對TCP/IP協議非常熟悉。例如要顯示關于DNS的網絡流量,輸入:#tcpdump-ieth1udpport53顯示所有進出80端口IPv4HTTP包,也就是只打印包含數據的包。例如:SYN、FIN包和ACK-only包輸入:#tcpdumptcpport80and(ip2:2-(ip0&0 xf)2)!=0
26、)顯示所有到的FTP會話,輸入:#tcpdump-ieth1dstand(port21or20顯示所有到的HTTP會話#tcpdump-nieth0dstandtcpandporthttp用wireshark瀏覽轉儲文件中的詳細信息,輸入:#tcpdump-n-ieth1-s0-woutput.txtsrcordstport80#15:strace-系統調用追蹤系統調用和型號,這對于調試Web服務器和其他服務器非常有用。HYPERLINK/tips/linux-strace-command-examples.htmlt_blank了解怎樣追蹤進程和他功能。#16:/proc文件系統-各種內核信
27、息/proc目錄下文件提供了很多不同硬件設備和內核的詳細信息。更多詳情參見HYPERLINK/files/linux-kernel/Documentation/filesystems/proc.txtLinuxkernel/proc。一般/proc例如:#cat/proc/cpuinfo#cat/proc/meminfo#cat/proc/zoneinfo#cat/proc/mounts#17:Nagios-服務器及網絡監控HYPERLINK/t_blankNagios是一款非常流行的系統及網絡監控軟件。你可以輕松監控所有的主機、網絡設備及服務。它能在發生故障和重新恢復后發送警訊。FAN是FullyAutomatedNagios的縮寫。FAN的目標就是由Nagios社群提供Nagios的安裝。為了使安裝Nagios服務器更加容易,FAN提供一個標準ISO格式的光盤鏡像。此發行
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論