《Linux伺服器的監控》

来源:http://www.cnblogs.com/aiweixiao/archive/2017/07/07/7131532.html
-Advertisement-
Play Games

Linux伺服器要保證高可用性,就要對其進行有效的監控,實時瞭解到伺服器的運行狀況,各項性能指標是否正常,以防患以未然,進行運維日誌的記錄,圖形化的監控,出現問題的消息報警機制,都是保證Linux伺服器能正常對外提供服務的先決條件。 ...


本文地址:http://www.cnblogs.com/aiweixiao/p/7131532.html

原文地址(公眾號):http://t.cn/RKwmqUs

點擊關註 微信公眾號 

 

1. 監控概要

      Linux伺服器要保證高可用性,就要對其進行有效的監控,實時瞭解到伺服器的運行狀況,各項性能指標是否正常,以防患以未然,進行運維日誌的記錄,圖形化的監控,出現問題的消息報警機制,都是保證Linux伺服器能正常對外提供服務的先決條件。

2. 監控的內容

        監控,是預防的其中的一項重要工作。這裡先說說我需要監控的內容。系統負載、cpu使用率、記憶體占用、磁碟空間、網路流量、埠、進程、apache或tomcat的連接數、mysql的運行狀態這些都是需要監控的東西。要瞭解伺服器每時每刻的整體運行狀態,單靠幾個Linux自帶的性能監測命令是很難實現的。所以,利用shell腳本和開源監控工具進行伺服器監控成為兩個主要的選擇。

3.監控的方法

  首先是要明白Linux伺服器監控的一些常見命令,以及這些命令編寫的監控腳本,最後,一些成熟的開源監控工具也是必要的。

  3.1 常見監控命令


      1) 【iostat】:iostat命令用來顯示存儲子系統的詳細信息,通常用它來監控磁碟 I/O 的情況。

      2)【meminfo 和 free】: cat /proc/meminfo  free

      3)【mpstat】:實時系統監控工具,多CPUs系統里,其不但能查看所有CPU的平均狀況信息,而且能夠查看特定CPU的信息

      4)【netstat】:顯示了大量跟網路相關的信息

      5)【nmon】:開源工具,用以監控 Linux 系統的性能,下載及安裝

      6)【pmap】:pmap 命令用來報告每個進程占用記憶體的詳細情況,可用來看是否有進程超支了,該命令需要進程 id 作為參數。

      7)【ps pstree】:ps 告訴你每個進程占用的記憶體和 CPU 處理時間,而 pstree以樹形結構顯示進程之間的依賴關係,包括子進程信息

      8)【sar】:sar 可用來顯示 CPU 使用率、記憶體頁數據、網路 I/O 和傳輸統計、進程創建活動和磁碟設備的活動詳情。

      9)【strace】:診斷進程工具,如 strace ls ,但是被診斷進程會變慢

     10)【tcpdump】網路監控工具,用來做基本的協議分析,看看那些進程在使用網路以及如何使用網路。

     11)【uptime】:該命令告訴你這台伺服器從開機啟動到現在已經運行了多長時間了

     12)【 vmstat 】來監控虛擬記憶體

     13)【Wireshark】:是一個網路協議檢測程式,讓您經由程式抓取運行的網站的相關資訊

     14)【dstat】 多類型資源統計工具:該命令整合了vmstat,iostat和ifstat三種命令

     15)【htop】: 更加友好的top,兩者區別見:“關於htop和top的比較

     16)【ss】: 用來記錄套接字統計信息,它可以顯示類似netstat一樣的信息,同時也能顯示更多TCP和狀態信息

     17)【lsof】 : 列表顯示打開的文件

     18)【iftop】是另一個基於網路信息的類似top的程式。它能夠顯示當前時刻按照帶寬使用量或者上傳或者下載量排序的網路連接狀況

3.2 shell監控腳本


      這裡提供 四個腳本(performance.sh 性能監控,process.sh 進程監控,network.sh 流量監控,tongji.sh流量分析統計),並使用crontab定時執行腳本進行監控數據的記錄,形成每天的監控日誌放在如下相應的文件夾,並且超過自己設定的告警值後發郵件通知,那些有免費簡訊通知功能的郵箱如騰訊企業郵箱,163郵箱可以嘗試一下,收到郵件告警後很快就能收到簡訊了,很方便。

  3.2.1 性能監控腳本 performance.sh

     代碼GitHub地址:http://t.cn/Ro0H1EV

     代碼截圖如下,有四個

 


性能監控腳本01-監控cpu負載    
性能監控腳本02-監控cpu使用率    
性能監控腳本03-監控交換分區    
性能監控腳本04-監控磁碟空間

 

3.2.2 進程監控腳本 process.sh

代碼GitHub地址:http://t.cn/Ro0R9pG

代碼截圖如下


進程監控腳本process.sh

 

3.2.3 流量監控腳本 network.sh

代碼GitHub地址:

代碼截圖如下:

 


流量監控腳本 network.sh

3.2.4 流量分析統計腳本 tongji.sh

代碼GitHub地址:http://dwz.cn/6b8y48

代碼截圖如下:

 


流量分析統計腳本 tongji.sh

 

3.3 監控工具


3.3.1) Cacti+Nagios

     【Cacti】:Cacti是一套基於PHP,MySQL,SNMP及RRDTool開發的網路流量監測圖形分析工具。

     【Nagios】: Nagios是一個監視系統運行狀態和網路信息的監視系統。能監視所指定的本地或遠程主機以及服務,同時提供異常通知功能等

3.3.2)Zabbix

    【Zabbix】: Zabbix除了能監視各種網路參數,保證伺服器系統的安全運營之外,還能提供如簡訊、郵件、jabber等通知機制以讓系統管理員快速定位/解決存在的各種問題。基本上能實現cacti+nagios的功能

 

 


關註微信公眾號

 

 

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • MySQL是一個關係型資料庫管理系統,由瑞典MySQLAB公司開發,目前屬於Oracle旗下產品。MySQL是最流行的關係型資料庫管理系統之一,在web應用方面,MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,關係資料庫管理系統)應用軟體。 mys ...
  • OracleDatabase,又名OracleRDBMS,或簡稱Oracle。是甲骨文公司的一款關係資料庫管理系統。它是在資料庫領域一直處於領先地位的產品。可以說Oracle資料庫系統是目前世界上流行的關係資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小、微機環境。它是一種高效 ...
  • 一 概述 1.什麼是動態查詢? 從多個查詢條件中隨機選擇若幹個組合成一個DQL語句進行查詢,這一過程叫做動態查詢。 2.動態查詢的難點 可供選擇的查詢條件多,組合情況多,難以一一列舉。 3.最終查詢語句的構成 一旦用戶向查詢條件中輸入數據,該查詢條件就成為最終條件的一部分。 二 基本原理 1.SQL ...
  • 同事反饋一個系統在運行一個存儲過程時遇到了下麵錯誤: Msg 1206, Level 18, State 169, Procedure xxxxxx, Line 118The Microsoft Distributed Transaction Coordinator (MS DTC) has can... ...
  • 這是官方截圖,mysql5.7安裝後,會有一個預設密碼,保存在mysql.log裡面,找的他,並更改 官方文檔地址 https://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html ...
  • 所有的Unix Like系統都會內建vi文書編輯器,其他的文書編輯器不一定存在,vim是vi的升級版,具有程式編輯的能力,可以主動的以字體顏色辨別語法的正確性,方便程式設計。vim 裡面加入了很多額外的功能,例如支持正規表示法的搜尋結構、多文件編輯、區塊複製等。 Vim有三種模式:命令模式、編輯模式 ...
  • 很好的解決辦法,問題已解決 利用rlwrap工具解決方法 1、安裝rlwrap和readline庫 CentOS下可以用EPEL的yum源直接安裝,步驟如下: (1)RHEL/CentOS/SL Linux 6.x 下安裝 EPEL6 yum源: 32位系統選擇: # rpm -ivh http:/ ...
  • 1、下載centos操作系統,提供百度雲盤鏈接:http://pan.baidu.com/s/1pLHOR03 2、打開上篇在VMware中新建好的空白虛擬機,將centos安裝在此空白虛擬機上,步驟如下圖: 3、開啟此虛擬機,出現如下圖,選擇,進行下一步,若沒有出現下圖或開機在命令行一直不動,則需 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...