歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> 看一下我編寫的系統

看一下我編寫的系統

日期:2017/2/27 9:22:21   编辑:更多Linux
  QQ:2237433 測試版和詳細文檔下載地址:http://61.241.81.36/shololo/monitor/ 尋求各種方式合作. 一, 系統簡要概述: 1, 開發目的 隨著社會的發展,我們已經進入一個信息時代。伴隨著計算機和網絡技術的不斷發展,越來越多的計算機,服務器被廣泛應用到各個領域。它們能否正常穩定的工作影響到社會生活的方方面面。 為確保網絡的重要組成部分-服務器能夠正常運行,及時發現服務器運行狀態是否異常.初步分析出問題原因, 並且能夠在最短的時間內通知管理員以便解決問題.減少損失。而且該系統大大減輕系統管理員的工作強度,節省人力資源成本。 2,運行平台 SUN SOLARIS7/8 包括SPARC和x86版本. FreeBSD 4.0+ 3,系統結構 該系統采用C/S結構. 主監控服務器(一台):負責被監控服務器分組管理,定時采集數據,數據邏輯判斷,數據入庫,報警. 被監控服務器(多台):打開某一端口監聽數據采集請求.數據采集並傳送給主控服務器 5,分組管理 為便於管理,可根據一定條件將一台或多台服務器劃分為一各組.在同一組內的服務器具有相同的數據采集周期和相同的管理員名單.如該組中的任何一台服務器出現故障,則只將報警消息發給該組的管理員. 6,報警 服務器運行不正常時,監控服務器會向該組管理員發出報警.報警方式為電子郵件.也可采用手機短信報警(需要與當地移動公司有短信發送協議) 7,配置文件維護 為減輕維護難度與復雜度,統一將配置文件放在主監控服務器上,被監控服務器上只放置自定義部分.在絕大多數情況下只需要維護主監控服務器上的配置文件. 8,數據采集指標,指標狀態 靜態指標: 1),服務器操作系統類型 2),操作系統版本 3),CPU型號 4),CPU個數 5),內存大小 6),SWAP大小 7),PATCH版本 8),時區 動態指標: 9),系統連續運行時間 10),系統時間 11),CPU LOAD(1MIN,5MIN,15MIN) 12),CPU狀態,Solaris下(IDLE,USER,KERNEL,IO,SWAP) FreeBSD下(IDEL,USER,SYSTEN,NICE,INTERRUPT) 13),內存使用率 14),SWAP使用率 15),系統中當前總共進程數目 16),某一進程占用的CPU(可以設置多個) 17),某一進程占用的系統資源(可以設置多個) 18),某一進程在系統中的數目(可以設置多個) 19),某一物理分區使用率(可以設置多個) 20),某一物理分區I-NODE使用率(可以設置多個) 21),系統網絡總連接數目 22),連接中SYNC狀態的數目,用於判斷是否遭到DOS攻擊 23),已成功建立連接的數目 24),監測服務器某一端口是否可以連通(可是設置多個). 25),十個用戶自定義外掛模塊(用戶可以根據服務器用途不同,自己編寫要監控的內容,然後掛接到系統裡面) 指標可以有兩個狀態,觀察(WATCH),報警(ALARM).所有靜態指標只能是觀察狀態,所有動態指標可以是上面兩個狀態中的一種. 所有靜態指標屬於系統基本配置,屬於非量化指標.所有動態指標屬於量化指標,都可以標明一閥值.將采集上來的數據根據配置文件中規定好的判斷邏輯進行比較,若滿足判斷邏輯且為報警狀態則報警. 9,判斷邏輯 支持六種判斷邏輯: SEQ == 等於 SNE != 不等於 SGT > 大於 SGE >= 大於等於 SLT < 小於 SLE <= 小於等於 10,安全 被監控服務器采用IP允許措施,只有其配置文件中允許的主機才可以提出數據采集請求.否則連接會馬上斷開. 主監控服務器與被監控服務器采用特定二進制命令結構進行通訊, 11,可擴充性 由於服務器的任務不同,可能需要監控一些特殊指標.因此預留了十個自定義指標.用戶可以在被監控服務器上自行開發自己的監控模塊(最多十個),然後無縫的掛接到監控系統中.


12,數據紀錄與歷史數據顯示 每次采集的數據都記錄在數據庫中,現支持的數據庫有Oracle,SYBASE,mysql顯示和查詢界面基於B/S結構,免除安裝額外程序和不兼容問題.用戶也可根據自行需要開發顯示,查詢程序. 如采用debug方式運行可打印日志到屏幕或者文件. 二、項目技術可行性分析 1.項目名稱、項目主要內容及目前進展情況 (1)項目名稱:UNIX服務器集群動態性能監控系統。SERVERS MONITOR (2)主要內容:采集UNIX服務器的各項動態性能指標:如系統負載狀況、CPU使用率、內存,交換區使用狀況、特定進程的狀態,所占系統資源(包括占用CPU,內存和交換區)、磁盤使用率以及特定服務是否正常,端口是否可以連通,正常響應。服務器當前網絡狀態等。將采集來的數據進行整理,並根據指定的邏輯與給定閥值進行比較,如果滿足該邏輯,則進行報警。報警方式可選擇郵件或者手機短信息。並且還可以將采集來的數據存入數據庫,作為數據挖掘,數據分析的數據源。 (3)目前項目的進展情況:已完成Solaris7/8(Sparc / x86),FreeBSD(4.0以上)的所有功能。 2.關鍵技術及創新點的論述 關鍵技術: (1)UNIX內核的狀態讀取,由C語言實現。由於UNIX系統基本上是由C語言編寫實現,所以該系統可以很好的與操作系統銜接,且不需要任何額外的系統開銷,執行效率高。 (2)使用C/S結構進行基於TCP/IP的數據傳輸。 (3)用C語言實現數據庫讀寫。 (4)報警信息的發送,郵件和短信。 創新點: (1)從操作系統內核讀取系統狀態,准確高效。 (2)采用分布式結構,一台主控服務器可以監控多台服務器的狀態。被監控服務器只負責數據采集,然後發送給主控服務器。盡量減少監控程序在被監控服務器上的系統開銷。所有的邏輯判斷,報警,數據存儲全部由主控服務器完成。 (3)服務器的分組管理。可以對被監控服務器按照一定條件分組。每個組設置不同的一個或多個管理員,報警信息只發送給該組的管理員 (4)系統的延展性。每一台被監控服務器可以根據自身的需要,可以使用任何語言最多編寫十個自定義模塊來監測自身的特殊服務。自定義的模塊可以無縫的接入到報警系統中。 (5)主機信任制。只有被信任的主機才允許向被監控服務器發出數據采集請求。每一台被監控服務器上都有一個主機信任列表。增加了安全性。 3.技術性能水平(指標)與國內外先進水平的比較: 現與國外著名自由監控軟件Big Brother(http://bb4.com/)進行對比。 --------------------------------------------------------- SERVERS MONITOR BIG BROTHER --------------------------------------------------------- 開發語言 C SHELL --------------------------------------------------------- 系統結構 C/S C/S --------------------------------------------------------- 執行效率 高 低 --------------------------------------------------------- 分組管理 支持 不支持 --------------------------------------------------------- 監控指標 多,可以到進程級別 少,只能是系統基本狀態 --------------------------------------------------------- 可擴充性 支持十個用戶自定義模塊 不支持用戶自定義模塊 --------------------------------------------------------- 數據庫 可支持多種數據庫 不支持數據庫 --------------------------------------------------------- 歷史數據的保存 支持 不支持 --------------------------------------------------------- 4.技術成熟性和可靠性論述: (1) 技術成熟性的論述及有關部門對本項目技術成果的技術鑒定情況: 本系統所使用到的基本技術都是開放性技術,或者已經很成熟,是經過多年發展和驗證的技術。因此在技術上不存在技術壁壘和難點。 (2) 本項目產品的技術檢測、分析化驗的情況: 本系統經過功能測試,達到預期的目標。經測試能夠完成預定的功能,並對被監控服務器產生盡量小的系統開銷。 (3) 本項目產品在實際使用條件下的可靠性、安全性的情況等。 本系統已被國內某著名網絡公司使用,一台主監控服務器,負責一百台以上服務器的監控。已經過兩個月的實際運行,運行狀況良好。誤報警率不高於2%。另外由於數據采用自定義數據結構二進制傳輸,和信任主機制度,未發生安全問題。

三、項目、產品市場調查和需求預測 國內外市場調查和預測 (1)隨著互聯網的不斷發展,各個行業都已經離不開網絡。每年都有大量的服務器投入使用。這些服務器能否正常運行,會影響到我們生活的每一個領域。本系統主要是動態監測服務器性能,因此只要有網絡存在,並且對服務器正常工作能力有較高要求行業都適用。采用該系統可以大大縮短服務器問題處理周期,能夠及時發現問題,初步判斷問題原因,通知管理員解決問題。最大程度的減少由於服務器問題帶來的損失。並且降低系統管理員的勞動強度,解放勞動力,現在各公司使用的一些監控軟件大都是單機版,不支持服務器集群監控。或者使用的是一些自由軟件,像Big Brother等,由於這些系統都是自由軟件,不但監控的指標少,而且缺乏必要的技術支持。 (2)該系統已經被國內某著名網絡公司實際使用,並得到了系統管理員的一致好評。 四、補充說明 現在已經發布V1.3 for Solaris7/8,FreeBSD4.0+ Linux版本正在移植過程中,計劃春節以後發布LINUX版本. 我的聯系方式: [email protected] ICQ:117610173 QQ:2237433 MSN:[email protected] 上次的socket問題我寫的沒有錯誤,是正確的。主要是我的應用方式很特殊。 我有一個Java類,這個java類裡面有一個方法是native,也就是java裡面的JNI. 這個native方法我是用C語言實現的,裡面用到了非阻塞socket。 然後我把這個java類打成了一個bean.。 這個bean在被其他java程序調用的時候是沒有錯誤的。但是如果被jsp調用,就出現了我上次說的問題。 我主要感覺是普通的java程序運行方式和jsp運行方式不大一樣。jsp是要通過應用服務器來運行的。我用的是resin-2.0.3。當然具體為什麼我還沒搞清楚。我後來改成阻塞模式就可以了



(2)該系統已經被國內某著名網絡公司實際使用,並得到了系統管理員的一致好評。 四、補充說明 現在已經發布V1.3 for Solaris7/8,FreeBSD4.0+ Linux版本正在移植過程中,計劃春節以後發布LINUX版本. 我的聯系方式: [email protected] ICQ:117610173 QQ:2237433 MSN:[email protected] 上次的socket問題我寫的沒有錯誤,是正確的。主要是我的應用方式很特殊。 我有一個Java類,這個java類裡面有一個方法是native,也就是java裡面的JNI. 這個native方法我是用C語言實現的,裡面用到了非阻塞socket。 然後我把這個java類打成了一個bean.。 這個bean在被其他java程序調用的時候是沒有錯誤的。但是如果被jsp調用,就出現了我上次說的問題。 我主要感覺是普通的java程序運行方式和jsp運行方式不大一樣。jsp是要通過應用服務器來運行的。我用的是resin-2.0.3。當然具體為什麼我還沒搞清楚。我後來改成阻塞模式就可以了



Copyright © Linux教程網 All Rights Reserved