亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Python 的服務(wù)器運(yùn)維可視化研究與應(yīng)用

        2021-01-29 07:37:34吳文哲
        科技與創(chuàng)新 2021年2期
        關(guān)鍵詞:進(jìn)程內(nèi)存運(yùn)維

        吳文哲

        (遼河油田信息工程公司智能技術(shù)中心,遼寧 盤錦 124010)

        公司中心機(jī)房是遼河油田眾多信息系統(tǒng)的大腦和中樞,在日常運(yùn)維巡檢時(shí),服務(wù)器運(yùn)維人員和信息系統(tǒng)管理員需要查看服務(wù)器各項(xiàng)硬件資源使用情況和應(yīng)用服務(wù)的運(yùn)行狀態(tài),要對各個(gè)服務(wù)器分別登錄、逐個(gè)巡檢。這項(xiàng)工作有3 個(gè)方面的問題:①手動操作煩瑣耗時(shí)、運(yùn)維效率低,無法直觀地發(fā)現(xiàn)問題;②有時(shí)疏忽大意會造成漏檢,有時(shí)操作失誤會導(dǎo)致系統(tǒng)無法正常運(yùn)行;③對于突發(fā)情況,尤其是夜間發(fā)生的故障,無法第一時(shí)間了解并處理。

        為了解決以上問題,需要有系統(tǒng)全天不間斷自動監(jiān)控服務(wù)器,對資源緊張的情況提出預(yù)警、告警,突發(fā)故障時(shí)能及時(shí)通知到系統(tǒng)管理員和運(yùn)維人員,使應(yīng)用程序和服務(wù)有一定的自我恢復(fù)能力。

        1 主要研究內(nèi)容

        為了實(shí)現(xiàn)對服務(wù)器全天候不間斷自動監(jiān)控,資源緊張時(shí)發(fā)出主動預(yù)警,并希望服務(wù)器有一定的自我恢復(fù)能力,需要研究以下三方面內(nèi)容。

        1.1 實(shí)時(shí)獲取服務(wù)器硬件資源和軟件運(yùn)行狀態(tài)

        針對不同操作系統(tǒng),使用跨平臺能力強(qiáng)的探針程序,利用操作系統(tǒng)提供的自動執(zhí)行功能,不間斷采集跟服務(wù)器運(yùn)行相關(guān)的CPU、內(nèi)存、硬盤、網(wǎng)絡(luò)、端口、進(jìn)程等關(guān)鍵敏感信息,實(shí)時(shí)上傳至數(shù)據(jù)采集數(shù)據(jù)庫。

        1.2 通過圖形化的界面,實(shí)時(shí)分析和判斷運(yùn)行狀態(tài)是否正常

        根據(jù)初始信息配置數(shù)據(jù)源后,數(shù)據(jù)庫中的數(shù)據(jù)表記錄就可以被數(shù)據(jù)可視化系統(tǒng)調(diào)用了。該階段首先進(jìn)行數(shù)據(jù)的投影和清洗,用戶查詢自己關(guān)注的數(shù)據(jù)項(xiàng),如果查詢成功,系統(tǒng)返回查詢結(jié)果,否則返回錯誤異常。通過選擇模型元素來建立數(shù)據(jù)模型,包括如折線圖、餅圖、柱形圖等模型樣式,顏色、視圖名稱,同時(shí)上層的展現(xiàn)功能調(diào)用被視圖庫添加好的模型。

        使用可視化展示模式對采集入庫的數(shù)據(jù)進(jìn)行展示的同時(shí),根據(jù)提前設(shè)置好的報(bào)警參數(shù),判斷當(dāng)前服務(wù)器各項(xiàng)關(guān)鍵信息是否超過閾值,如果超出閾值,則使用郵件方式通知運(yùn)維人員。

        1.3 發(fā)現(xiàn)異常情況的自動處理

        對于報(bào)異常的用戶進(jìn)程,重啟該異常進(jìn)程;對于占用資源非常嚴(yán)重的非系統(tǒng)進(jìn)程,自動關(guān)閉該進(jìn)程。服務(wù)器上的主要應(yīng)用程序,在服務(wù)器負(fù)載相對較低時(shí),使用腳本程序使其重啟。

        2 技術(shù)方案

        本課題的設(shè)計(jì)思路是通過Python 編程,使用目標(biāo)服務(wù)器操作系統(tǒng)的自動執(zhí)行功能運(yùn)行探針程序,通過“推”模式實(shí)時(shí)將目標(biāo)服務(wù)器的CPU、內(nèi)存、網(wǎng)卡和硬盤等硬件資源的使用情況、本地端口、進(jìn)程和應(yīng)用服務(wù)的運(yùn)行狀態(tài)推送至服務(wù)端程序,服務(wù)端程序部署在一臺安裝有雙網(wǎng)卡的服務(wù)器上,實(shí)現(xiàn)服務(wù)端程序跨網(wǎng)段運(yùn)行;運(yùn)維人員使用瀏覽器通過圖形化界面監(jiān)控目標(biāo)服務(wù)器各項(xiàng)指標(biāo)的運(yùn)行情況,頁面定時(shí)自動刷新數(shù)據(jù);探針程序判斷目標(biāo)服務(wù)器資源占用異常時(shí),將異常信息記錄到日志文件,服務(wù)端程序發(fā)現(xiàn)目標(biāo)機(jī)在指定時(shí)間間隔沒有通信,也將記錄異常信息,以上異常信息將以預(yù)警或告警郵件的形式發(fā)送給系統(tǒng)管理員;本地用戶的進(jìn)程可以自動重啟。監(jiān)控系統(tǒng)的參數(shù),比如硬件資源的預(yù)警和告警閾值、進(jìn)程或應(yīng)用服務(wù)的路徑、可視化界面的刷新時(shí)間、郵箱地址、字體大小等都可以通過配置文件修改。整個(gè)過程實(shí)時(shí)監(jiān)測,程序全天不間斷運(yùn)行。

        本課題研究的開發(fā)語言是Python,使用了psutil、glances、pymysql、sqlalchemy、pandas、flask、pyecharts、flask_bootstrap 等多個(gè)第三方模塊,數(shù)據(jù)庫使用開源的MySQL,網(wǎng)站搭建采用瀏覽器/服務(wù)器模式,使用HTML5、Bootstrap css 和jQuery 等前端技術(shù)實(shí)現(xiàn)網(wǎng)頁展示,利用flask框架實(shí)現(xiàn)后臺處理,使用pyecharts 將采集到的服務(wù)器系統(tǒng)信息可視化,使用uwsgi 和nginx 分別作為Web 服務(wù)器和反向代理服務(wù)器。

        Python 崇尚優(yōu)美、清晰、簡單,是一個(gè)優(yōu)秀并廣泛使用的語言,廣泛應(yīng)用于人工智能、運(yùn)維自動化、操作系統(tǒng)管理、Web 應(yīng)用開發(fā)、網(wǎng)絡(luò)爬蟲、科學(xué)計(jì)算、計(jì)算機(jī)視覺、深度學(xué)習(xí)、區(qū)塊鏈開發(fā)、桌面軟件、服務(wù)器軟件等。

        psutil 是一個(gè)Python 模塊用來獲取正在運(yùn)行的進(jìn)程信息和系統(tǒng)的CPU 和內(nèi)存的利用率,它不僅可以通過一兩行代碼實(shí)現(xiàn)系統(tǒng)監(jiān)控,還可以跨平臺使用,支持Linux/Windows/Sun Solaris/OSX/FreeBSD/OpenBSD/NetBSD/AIX 等,是系統(tǒng)管理員和運(yùn)維小伙伴不可或缺的必備模塊。

        flask 是Python 開發(fā)的一個(gè)輕量級的Web 框架。Pyecharts是一個(gè)用于生成ECharts 圖表的類庫。因?yàn)橛肊Charts 生成的圖可視化效果非常棒,為了方便與Python 對接、在Python中直接使用數(shù)據(jù)生成圖表,所以產(chǎn)生了pyecharts。

        3 主要技術(shù)創(chuàng)新

        本課題主要科技創(chuàng)新體現(xiàn)在以下幾方面。

        3.1 程序移植能力強(qiáng)

        系統(tǒng)使用glances 模塊獲取目標(biāo)服務(wù)器的CPU、內(nèi)存、網(wǎng)卡、硬盤和端口的狀態(tài)信息;使用psutil 模塊獲取進(jìn)程和應(yīng)用服務(wù)信息;使用email 模塊創(chuàng)建一個(gè)包含主題和具體內(nèi)容的報(bào)警郵件,再使用smtp 模塊設(shè)置郵箱的發(fā)送地址和接收地址;可視化展示功能主要使用flask、pandas 和pyecharts模塊,使用flask 構(gòu)建Web 框架,使用pandas 統(tǒng)計(jì)分析采集來的數(shù)據(jù),使用pyecharts 實(shí)現(xiàn)前端可視化效果。

        綜上所述,無論是目標(biāo)機(jī)上運(yùn)行的客戶端探針程序,還是服務(wù)端負(fù)責(zé)展示的可視化后端程序,基于跨平臺能力強(qiáng)的Python 語言開發(fā),使得監(jiān)控服務(wù)器硬件資源、預(yù)警告警和可視化展示可以不受操作系統(tǒng)的影響,可移植能力大大增強(qiáng)。業(yè)界知名的老牌開源監(jiān)控系統(tǒng)Zabbix,其server 端無法安裝在Windows 系統(tǒng)上,移植能力有限。

        3.2 多種樣式風(fēng)格的可視化展示

        對于CPU 和內(nèi)存、交換內(nèi)存,使用餅圖可以分別展示(按照刷新頻率)最近10 次的CPU 和內(nèi)存占用率,使用帶標(biāo)記的折線圖展示最近n次(時(shí)間范圍可調(diào))的占用率走勢,如圖1 所示。

        對于硬盤空間,使用柱形圖顯示硬盤總?cè)萘看笮。褂枚询B柱形圖的不同顏色區(qū)分已使用和未使用的硬盤容量,如圖2 所示。

        對于網(wǎng)卡,按照采集間隔,使用折線圖展示瞬時(shí)流入流量和流出流量,直觀展示網(wǎng)絡(luò)流量隨時(shí)間的變化趨勢,如圖3 所示。

        開源監(jiān)控系統(tǒng)Zabbix 可視化圖形展示功能較為單一,缺乏儀表盤、柱狀圖、餅圖等圖形支撐;nagios 沒有數(shù)據(jù)展示功能,只關(guān)心報(bào)警功能;MRTG 側(cè)重網(wǎng)絡(luò)監(jiān)控,主要功能是收集歷史數(shù)據(jù)和展示,圖形化能力差;Tsar 只能使用命令行形式,沒有圖形化界面。

        圖1 負(fù)載占用情況

        圖2 硬盤使用情況

        圖3 網(wǎng)卡流量情況

        3.3 具備簡單的自我修復(fù)能力

        CPU、內(nèi)存和磁盤的使用率設(shè)有一個(gè)預(yù)警值和一個(gè)告警值,具體每個(gè)硬件的預(yù)警值和告警值可以在配置文件中指定。根據(jù)提前設(shè)置好的報(bào)警參數(shù),判斷當(dāng)前服務(wù)器各項(xiàng)關(guān)鍵信息是否超過閾值,如果超出閾值,則使用郵件等方式通知運(yùn)維人員。

        在探針程序的配置文件中寫入目標(biāo)服務(wù)器需要被監(jiān)控進(jìn)程的絕對路徑,如果該進(jìn)程異常,則會通過os 模塊自動重啟。對于報(bào)異常的用戶進(jìn)程,重啟該異常進(jìn)程;對于占用資源非常嚴(yán)重的非系統(tǒng)進(jìn)程,自動關(guān)閉該進(jìn)程。服務(wù)器上的主要應(yīng)用程序,在服務(wù)器負(fù)載相對較低時(shí),使用腳本程序使其重啟。

        4 應(yīng)用情況

        本課題基于瀏覽器/服務(wù)器模式,使用基于Python 的flask 框架技術(shù),使用HTML5、JavaScript 和CSS 等前端技術(shù),通過異步請求實(shí)現(xiàn)無刷新定時(shí)更新頁面數(shù)據(jù)。通過傳輸層TCP 協(xié)議與應(yīng)用層HTTPS 協(xié)議傳輸數(shù)據(jù),保證數(shù)據(jù)完整性和安全性。使用MySQL 數(shù)據(jù)庫管理數(shù)據(jù),瀏覽器通過發(fā)送HTTPS 請求、接收J(rèn)SON 格式的返回?cái)?shù)據(jù)。主要實(shí)現(xiàn)數(shù)據(jù)采集、數(shù)據(jù)存儲及管理、可視化展示3 個(gè)功能模塊。

        數(shù)據(jù)采集:包括實(shí)時(shí)數(shù)據(jù)和非實(shí)時(shí)數(shù)據(jù)兩種。非實(shí)時(shí)數(shù)據(jù)包括服務(wù)器基本配置信息、操作系統(tǒng)版本、系統(tǒng)啟動時(shí)間等。實(shí)時(shí)數(shù)據(jù)包括服務(wù)器主要負(fù)載指標(biāo)、硬盤使用情況、網(wǎng)卡實(shí)時(shí)流量、系統(tǒng)運(yùn)行時(shí)長、端口使用和進(jìn)程分配的情況。

        數(shù)據(jù)存儲及管理:通過數(shù)據(jù)庫管理系統(tǒng)將采集到的結(jié)構(gòu)化數(shù)據(jù)整合為業(yè)務(wù)數(shù)據(jù)。

        可視化展示:包括服務(wù)器硬件資源使用情況、系統(tǒng)端口使用列表和進(jìn)程分配列表等數(shù)據(jù)的多種模型可視化展示。

        本課題已經(jīng)在車輛監(jiān)控平臺相關(guān)的15 臺服務(wù)器上研究部署并成功應(yīng)用,如圖4 所示,實(shí)現(xiàn)了對服務(wù)器、網(wǎng)絡(luò)、數(shù)據(jù)庫、中間件和應(yīng)用系統(tǒng)等要素的監(jiān)控和統(tǒng)一管理,具有分布式、全覆蓋、自動化和安全可靠等特點(diǎn)。本課題支持從業(yè)務(wù)視角排查并定位故障,讓系統(tǒng)運(yùn)維人員能夠及時(shí)定位并解決系統(tǒng)運(yùn)行問題,提升運(yùn)維質(zhì)量和效率,降低運(yùn)維難度和風(fēng)險(xiǎn),具有良好的推廣前景。在今后的工作中,還需要進(jìn)一步完善系統(tǒng)日志深化分析和報(bào)警體系(如微信、短信推送等)建設(shè),使之成為更加全面、高效、智能的自動化監(jiān)控運(yùn)維平臺。

        圖4 首頁

        猜你喜歡
        進(jìn)程內(nèi)存運(yùn)維
        債券市場對外開放的進(jìn)程與展望
        中國外匯(2019年20期)2019-11-25 09:54:58
        運(yùn)維技術(shù)研發(fā)決策中ITSS運(yùn)維成熟度模型應(yīng)用初探
        “春夏秋冬”的內(nèi)存
        風(fēng)電運(yùn)維困局
        能源(2018年8期)2018-09-21 07:57:24
        雜亂無章的光伏運(yùn)維 百億市場如何成長
        能源(2017年11期)2017-12-13 08:12:25
        基于ITIL的運(yùn)維管理創(chuàng)新實(shí)踐淺析
        社會進(jìn)程中的新聞學(xué)探尋
        基于內(nèi)存的地理信息訪問技術(shù)
        我國高等教育改革進(jìn)程與反思
        Linux僵死進(jìn)程的產(chǎn)生與避免
        中文字幕专区一区二区| 国产一区二区三区四区五区vm| 国产精品九九热| 国产噜噜亚洲av一二三区| 亚洲乱码中文字幕在线播放 | 四虎国产精品免费久久| 国产免费一级高清淫日本片| 青青草视全福视频在线| 日韩中文字幕有码午夜美女| 国产一极内射視颍一| 午夜短视频日韩免费| 亚洲综合精品一区二区三区| 精品国产一区二区三区不卡在线| 国产色无码精品视频国产| 男人天堂免费视频| 亚洲天堂av免费在线| 成人影院在线视频免费观看| 欧美猛男军警gay自慰| 亚洲欧美日韩国产精品网| 日韩激情视频一区在线观看| 国产私人尤物无码不卡| 日产精品久久久久久久蜜臀 | 亚洲男人av香蕉爽爽爽爽| 精品国产福利一区二区三区| 男男亚洲av无一区二区三区久久| 爱性久久久久久久久| 校园春色人妻激情高清中文字幕| 亚洲国产成人精品无码区二本 | 亚洲av网一区二区三区| 国产精品 视频一区 二区三区| 亚洲国产日韩精品综合| av影片在线免费观看| 55夜色66夜色国产精品视频 | 在线视频一区二区观看| 黄片视频免费在线观看国产| 色狠狠av老熟女| 国产9 9在线 | 免费| 国产一区二区三区啊啊| 国产又色又爽又刺激在线播放| 国内无遮码无码| 国产美女高潮流白浆视频|