各位老鐵們,大家好,今天由我來為大家分享服務器 監控,以及服務器用什么監控軟件好的相關問題知識,希望對大家有所幫助。如果可以幫助到大家,還望關注收藏下本站,您的支持是我們最大的動力,謝謝大家了哈,下面我們開始吧!
本文目錄
概述
今天主要對mpstat、iostat、sar、vmstat命令做一下總結,這幾個命令都是屬于運維人員必須掌握的,所以,能不偷懶就不偷懶了。
1、mpstat
mpstat是MultiprocessorStatistics的縮寫,是實時監控工具,報告與cpu的一些統計信息這些信息都存在/proc/stat文件中,在多CPU系統里,其不但能查看所有的CPU的平均狀況的信息,而且能夠有查看特定的cpu信息,mpstat最大的特點是:可以查看多核心的cpu中每個計算核心的統計數據;而且類似工具vmstat只能查看系統的整體cpu情況。
實例:查看多核cpu當前運行的狀況,每兩秒更新一次,一共更新5次
#mpstat25
說明:
%user在internal時間段里,用戶態的CPU時間(%),不包含nice值為負進程(usr/total)*100
%nice在internal時間段里,nice值為負進程的CPU時間(%)(nice/total)*100
%sys在internal時間段里,內核時間(%)(system/total)*100
%iowait在internal時間段里,硬盤IO等待時間(%)(iowait/total)*100
%irq在internal時間段里,硬中斷時間(%)(irq/total)*100
%soft在internal時間段里,軟中斷時間(%)(softirq/total)*100
%idle在internal時間段里,CPU除去等待磁盤IO操作外的因為任何原因而空閑的時間閑置時間(%)(idle/total)*100
2、iostat
iostat用于輸出CPU和磁盤I/O相關的統計信息.
語法:
iostat[-c][-d][-h][-N][-k|-m][-t][-V][-x][-z][device[...]|ALL][-p[device[,...]|ALL]][interval[count]]
實例1:
--參數-d表示顯示設備磁盤的使用狀態;-k表示某些使用block為單位的列強制使用kilobytes為單位,2表示數據每隔2秒刷新一次6表示一共刷新6次
#iostat-d-k26
說明:
tps:該設備每秒的傳輸次數(Indicatethenumberoftransferspersecondthatwereissuedtothedevice.)。
"一次傳輸"意思是"一次I/O請求"。多個邏輯請求可能會被合并為"一次I/O請求"。"一次傳輸"請求的大小是未知的。
kB_read/s:每秒從設備(driveexpressed)讀取的數據量;
kB_wrtn/s:每秒向設備(driveexpressed)寫入的數據量;
kB_read:讀取的總數據量;
kB_wrtn:寫入的總數量數據量;這些單位都為Kilobytes。
實例2:
--可以把K單位換成M
#iostat-d-m26
實例3:
--使用iostat查看cpu統計信息使用-C參數
#iostat-c26
實例4:-X參數
--iostat還有一個比較常用的-X參數,該選項將用于顯示和io相關的擴展數據。
#iostat-d-x-k16
3、sar
sar(SystemActivityReporter系統活動情況報告)是目前Linux上最為全面的系統性能分析工具之一,可以從多方面對系統的活動進行報告,包括:文件的讀寫情況、系統調用的使用情況、磁盤I/O、CPU效率、內存使用狀況、進程活動及IPC有關的活動等,sar命令有sysstat安裝包安裝。
語法:
sar[options][<interval>[<count>]]
--Optionsare:
-A:所有報告的總和
-b:顯示I/O和傳遞速率的統計信息
-B:顯示換頁狀態
-d:輸出每一塊磁盤的使用信息
-e:設置顯示報告的結束時間
-f:從制定的文件讀取報告
-i:設置狀態信息刷新的間隔時間
-P:報告每個CPU的狀態
-R:顯示內存狀態
–u:輸出cpu使用情況和統計信息
–v:顯示索引節點、文件和其他內核表的狀態
-w:顯示交換分區的狀態
-x:顯示給定進程的裝
-r:報告內存利用率的統計信息
實例1:
--每2秒采樣一次,連續4次,觀察cpu的使用情況,并將采樣的結果以二進制形式存入當前目錄下的文件sar中,如下:
#sar-u-osar24
實例2:
--從二進制中調取
#sar-u-f/root/sar
實例3:
--報告每個cpu的狀態,1秒一次,一共4次
#sar-p14
實例4:
--查看平均負載
#sar-q
實例5:
--查看內存使用情況
#sar-r
實例6:
--查看系統swap分區的統計信息
#sar-w
實例7:
--磁盤使用統計信息
#sar-d
默認監控:
sar55//CPU和IOWAIT統計狀態
(1)sar-b55//IO傳送速率
(2)sar-B55//頁交換速率
(3)sar-c55//進程創建的速率
(4)sar-d55//塊設備的活躍信息
(5)sar-nDEV55//網路設備的狀態信息
(6)sar-nSOCK55//SOCK的使用情況
(7)sar-nALL55//所有的網絡狀態信息
(8)sar-PALL55//每顆CPU的使用狀態信息和IOWAIT統計狀態
(9)sar-q55//隊列的長度(等待運行的進程數)和負載的狀態
(10)sar-r55//內存和swap空間使用情況
(11)sar-R55//內存的統計信息(內存頁的分配和釋放、系統每秒作為BUFFER使用內存頁、每秒被cache到的內存頁)
(12)sar-u55//CPU的使用情況和IOWAIT信息(同默認監控)
(13)sar-v55//inode,fileandotherkerneltablesd的狀態信息
(14)sar-w55//每秒上下文交換的數目
(15)sar-W55//SWAP交換的統計信息(監控狀態同iostat的siso)
(16)sar-x290655//顯示指定進程(2906)的統計信息,信息包括:進程造成的錯誤、用戶級和系統級用戶CPU的占用情況、運行在哪顆CPU上
(17)sar-y55//TTY設備的活動狀態
(18)將輸出到文件(-o)和讀取記錄信息(-f)
4、vmstat
vmstat命令是最常見的Linux/Unix監控工具,可以展現給定時間間隔的服務器的狀態值,包括服務器的CPU使用率,內存使用,虛擬內存交換情況,IO讀寫情況。這個命令是我查看Linux/Unix最喜愛的命令,一個是Linux/Unix都支持,二是相比top,我可以看到整個機器的CPU,內存,IO的使用情況,而不是單單看到各個進程的CPU使用率和內存使用率(使用場景不一樣)。
實例1:
--第一個參數是采樣的時間間隔數,單位是秒,第二個參數是采樣的次數
--如果想在一段時間內一直監控可執行#vmstat2
#vmstat26
說明:
r表示運行隊列(就是說多少個進程真的分配到CPU),當這個值超過了CPU數目,就會出現CPU瓶頸了。這個也和top的負載有關系,一般負載超過了3就比較高,超過了5就高
,超過了10就不正常了,服務器的狀態很危險。top的負載類似每秒的運行隊列。如果運行隊列過大,表示你的CPU很繁忙,一般會造成CPU使用率很高。
b表示阻塞的進程
swpd虛擬內存已使用的大小,如果大于0,表示你的機器物理內存不足了,如果不是程序內存泄露的原因,那么你該升級內存了或者把耗內存的任務遷移到其他機器。
free空閑的物理內存的大小
buffLinux/Unix系統是用來存儲,目錄里面有什么內容,權限等的緩存
cachecache直接用來記憶我們打開的文件,給文件做緩沖
si每秒從磁盤讀入虛擬內存的大小,如果這個值大于0,表示物理內存不夠用或者內存泄露了,要查找耗內存進程解決掉。
so每秒虛擬內存寫入磁盤的大小,如果這個值大于0,同上
bi塊設備每秒接收的塊數量,這里的塊設備是指系統上所有的磁盤和其他塊設備,默認塊大小是1024byte
bo塊設備每秒發送的塊數量,例如我們讀取文件,bo就要大于0。bi和bo一般都要接近0,不然就是IO過于頻繁,需要調整。
in每秒CPU的中斷次數,包括時間中斷
cs每秒上下文切換次數
us用戶CPU時間
sy系統CPU時間,如果太高,表示系統調用時間長,例如是IO操作頻繁。
id空閑CPU時間
wt等待IOCPU時間。
這種基礎命令一定要會,建議大家熟記,后面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注下~
首先這個問題非常專業,還好我有多年這方面的經驗,我就來回答下這個問題吧
服務器在公司的數字業務當中,用來存放或者運行公司的數據業務,充當著至關重要的角色,需要服務器的公司一般少則幾臺,多則成千上萬臺,甚至幾十萬臺都有可能!那么就如標題所問的,如何來管理這么多的服務器就成了一個非常重要的問題。
如果企業里只有幾臺服務器,一臺一臺的來管理尚可實現,但是一旦到了幾十臺以上就需要進行專業的管理了!目前國內已經有一些非常優秀的服務器管理軟件,我就以我用過的一個給大家做一下功能說明(為了防止打廣告嫌疑,我隱去了軟件名稱):
1、多服務器統一管理
快速查看各個機器實時數據,高效的集中管理服務器,免去來回切換及記錄密碼的煩惱
2、跨越平臺,便捷登錄
3、權限分配,安全管理
4、運行數據,一目了然
5、命令群發
6、多服務器數據同步,快速自動備份
這是一般服務器管理軟件需要具備的常用功能,當然每個平臺還有一些其他的實用功能,我就不在這里贅述,希望我的回答能夠對有需要的人起到拋磚引玉的作用!
當然是服務器好。
第一,數據安全,一般服務器都做了raid,即使磁盤壞了,也不會丟失數據。
第二,調取錄像方便,通過一個平臺,一套鍵盤鼠標就可以調取監控錄像。
第三,成本低,如果上千個攝像頭,用錄像機64路的話要100多個,而服務器只用1個就行,既節省空間,又節省成本。
曾經做過幾次大規模服務器監控,下面推薦幾款監控軟件和輔助軟件。
1.zabbix一款老牌經典的監控軟件。是一個企業級的分布式開源監控方案。能夠實時監控從成千上萬臺服務器、虛擬機和網絡設備中收集到的數以百萬計的指標。??
提供圖形操作界面,可以方便的添加監控指標、告警指標。支持郵件、微信等的告警通知。
2.Prometheus,近些年監控方面的當紅炸子雞??,Prometheus是由SoundCloud開發的開源監控報警系統和時序列數據庫(TSDB)。Prometheus使用Go語言開發,是GoogleBorgMon監控系統的開源版本。
其優點是輕量級,配置簡易,上手簡單,豐富的告警模板。
以上是兩款監控軟件,下面推薦幾款監控輔助軟件。
1.grafana監控展示界面,在我們獲取到監控數據后,可能需要把數據展示出來,給領導們邀功。grafana就是這樣一款軟件,開源免費,模板豐富。可直接對接zabbixprometheus和mysql數據庫等。
2.釘釘機器人。服務器出現告警怎么辦,當然是發消息通知運維人員啊。釘釘機器人就提供這么一個功能。在釘釘群里面直接創建機器人,會給我們一個restfull的接口,我們就可以直接發送post請求。原生linux就直接用curl發送,Prometheus提供插件可以直接對接。
方法1:Agent服務器監控
1在智能監控平臺—cloudeye上新增服務器監控
2選擇采集方式:agent監控
采集方式選擇agent監控
備注:支持應用程序監控,服務器信息自動添加
3Agent安裝與配置
下載linux、windows系統的agent并完成安裝、配置。
配置說明:
1)您的有效序列號為w2xr3tlmjryw,請用命令/usr/local/cagent/sbin/startagent-klicense-Hlocalip修改
2)主機性能監控默認開啟,應用程序監控需要在/usr/local/cagent/etc/app_task.xml文件中修改配置。
3)配置成功后,服務器自動添加,請耐心等待2分鐘
END
方法2:snmp服務器監控
?
選擇采集方式:snmp監控
備注:采用snmp監控需保證服務器已開啟SNMP服務
服務器配置:
輸入所屬組、服務器名稱、服務器IP、SNMP端口、SNMP協議、SNMPCommunity
現在所有的企業都基本需要用到服務器,那么服務器的所有信息都應該得到監控,以便管理然而一臺服務器每天需要監控的東西其實很多,比如常見的有以下內容:
一、網站故障監控,如果你所運行的項目出現了故障服務器要自動以短信或者郵件提醒的方式通知你,如果沒有這個監控,或許等你發現時損失已經很大。
二、服務器性能監控,其實就對服務器(計算機)CPU、內存、硬盤、負載等硬件使用多少的一個監控,如果出現了服務器硬件使用消耗過大那么就要考慮是否升級服務器配置了。
三、網站安全監控,如果網站遭到黑客的攻擊這時服務器如果有這項監控那么就會立刻通知你,這時采取相應的措施反攻擊,以免自己的網站受到攻擊。網站安全可以說是非常重要的,一旦黑客攻擊進來你的網站數據丟失,損失就很大了。
四、用戶訪問速度監控,監控所有訪問本服務器的用戶的訪問速度。
五、備份數據監控,查看網站的備份是否成功,哪些網站備份過、哪些沒有。網站備份可以讓你的數據有個保存,出現了突發問題可以立馬恢復到上一個版本。所以說網站的備份大家也要注重。
六、端口監控,服務器中端口檢測也尤為重要,監控服務器開啟了哪些端口哪些端口被占用,如果某些端口被一些不知名的IP或者程序占用那么就要考慮是不是服務器中了病毒,被黑客所利用。
以上只是個人觀點,不足之處還請大家補充。
Linux服務器監控軟件有哪些
Cacti:是一套基于PHP,MySQL,SNMP及RRDTool開發的網絡流量監測圖形分析工具,嚴格意思是說它只能是監控網絡設備。
Zabbix:是一個基于WEB界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。
Nagios:是一款開源的免費網絡監視工具,能有效監控Windows、Linux和Unix的主機狀態,交換機路由器等網絡設備,打印機等.
4.Ganglia:是一款為HPC(高性能計算)集群而設計的可擴展的分布式監控系統,簡單一點來說就是監控大規模服務器才需要使用到。
優點Cacti出圖比較好,比較適合作交換機和路由器監控。
Zabbix適合中小企業日常部署,監控Linux服務器、Windows服務器、路由器、交換機,報警機制也很友好,可以郵件,微信,短信報警。
Nagios適合中小企業部署使用,監控Linux服務器、路由器、交換機,報警機制有郵件、短信。
Ganglia適合大型企業部署使用,分布式存儲,以集群方式來監控,每個區域的Node來監控數據。缺點Catic對服務器監控不好用。Zabbix對超大型、數據量并發很高的應用監控不好,監控會有延時,精度不夠,有些監控參數需要會寫監控腳本完成。
Nagios部署比較復雜,沒有經驗的用戶會被折磨。出圖效果不佳需要借助于RRDTool工具出圖。
Ganglia部署成本較高,需要多臺主機,部署相對復雜。
部署Zabbix最為便捷使用Centos7系統安裝LAMP環境搭建一個環境,安裝zabbix軟件,具體操作如下:
1,安裝zabbix源
2,安裝Zabbixserver,Web前端
3,安裝MySQL源
4,查看可用的Mysql安裝源:yumrepolistenabled|grep"mysql.*-community.*"
5,安裝MySQL服務:yum-yinstallmysql-community-server
5,啟動MySQL服務,并且開機自啟動。
6,查看MySQL服務啟動正常:
7,查看登陸MySQL密碼:yG&t<kt*.3Qt
9,登陸MySQL
8,更改MySQL密碼:
9,創建數據庫和zabbix用戶并授權:
10,導入初始架構和數據
11,檢查數據庫導入情況
12,先備份配置文檔
13,修改配置文件
[root@localhost~]#vim/etc/zabbix/zabbix_server.conf
14,給主目錄文檔授權
15,啟動ZabbixServer服務
16,修改Zabbix默認時區為shanghai
[root@localhost~]#vim/etc/httpd/conf.d/zabbix.conf+20
17,啟動Apache服務
18,登陸瀏覽器操作
最后一步下載php
19,把下載下來的文件上傳到/etc/zabbix/,你可以使用rz工具上傳這個文件。
20,最后打開登陸頁面
總結以上是我工作中用到感覺最為方便的一款監控軟件,希望能夠對你有所幫助,也希望能和網絡上朋友一起多交流。
關于服務器 監控,服務器用什么監控軟件好的介紹到此結束,希望對大家有所幫助。
搜浪信息科技發展(上海)有限公司 備案號:滬ICP備17005676號