• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      ELK日志分析平臺在系統(tǒng)運維中的應(yīng)用

      2017-04-14 00:37:54張彩云
      電子技術(shù)與軟件工程 2017年6期

      張彩云

      隨著氣象部門對數(shù)據(jù)傳輸時效要求不斷提升,以及業(yè)務(wù)系統(tǒng)規(guī)模不斷擴大,對系統(tǒng)中日志的收集和集中處理的需求越來越高。本文提出了基于ELK實時進行大日志數(shù)據(jù)搜索的軟件集成方案。通過對ELK、Redis整合方案的介紹描述了ELK日志分析平臺的日志處理流程,結(jié)合全國綜合氣象信息共享系統(tǒng)(CIMISS)內(nèi)蒙古氣象局實際場景設(shè)計了ELK日志分析平臺。通過分析日志可以快速定位系統(tǒng)異常,提前預(yù)警風險,加快了氣象部門實現(xiàn)智能化運維、信息化管理的步伐。

      【關(guān)鍵詞】日志分析 ELK 智能化運維

      1 引言

      大數(shù)據(jù)時代,隨著存儲與計算集群規(guī)模的不斷擴大,氣象部門業(yè)務(wù)系統(tǒng)的集群環(huán)境也已普遍。然而現(xiàn)在的機群系統(tǒng)不僅限于解決性能、可靠、可擴展性等層面上,更重要的是具有易操作性和內(nèi)部數(shù)據(jù)共享性等。運維及開發(fā)人員通過日志信息不但可以知道系統(tǒng)運行狀況、檢查運行過程中的錯誤及排查原因,還可以知道服務(wù)器的負荷,性能安全性,從而及時采取措施糾正錯誤。

      大規(guī)模集群系統(tǒng)中日志被分散的儲存不同的設(shè)備上。傳統(tǒng)方法通過使用命令工具如cat、tail、sed、awk、grep等等進行過濾輸出后分析的方法由于效率較低與不再適用,明顯增加了運維工作量。當務(wù)之急的工作就是要使用集中化的日志管理平臺,將所有服務(wù)器上的日志收集匯總進行監(jiān)控、分析。優(yōu)秀的系統(tǒng)運維平臺既能實現(xiàn)數(shù)據(jù)平臺各組件的集中式管理、方便系統(tǒng)運維人員日常監(jiān)測、提升運維效率,又能反饋系統(tǒng)運行狀態(tài)給系統(tǒng)開發(fā)人員。

      2 ELK簡介

      ELK是由ElasticSearch、Logstash、Kibana組成的開源日志處理平臺解決方案。ELK能把這些日志集中管理,并提供全文檢索、統(tǒng)計分析功能,不僅可以提高診斷的效率,同時可以起到實時系統(tǒng)監(jiān)測、網(wǎng)絡(luò)安全、事件管理和發(fā)現(xiàn)bug等功能。

      2.1 ElasticSearch簡介

      ElasticSearch是一個基于Lucene的全文搜索引擎。基于RESTful web接口,提供了一個分布式多用戶能力的全文搜索引擎。用Java開發(fā)的Apache許可條款下的開放源碼。在云計算應(yīng)用中,能夠達到實時搜索,穩(wěn)定,可靠,快速,且安裝使用方便。

      2.2 Logstash簡介

      Logstash由JRuby語言編寫的日志采集解析工具,基于消息(message-based)的簡單架構(gòu)。Logstash由input、filter和output三部分組成,input負責從數(shù)據(jù)源提取數(shù)據(jù),filter負責解析、處理數(shù)據(jù),output負責輸出數(shù)據(jù),每部分都有提供豐富的插件。不同于分離的代理端(agent)或主機端(server),Logstash可配置單一的代理端(agent)與其它開源軟件結(jié)合,以實現(xiàn)不同的功能。

      2.3 Kibana簡介

      Kibana也是一個開源的分析可視化平臺,它具有匯總、分析和搜索重要數(shù)據(jù)日志并提供友好的web界面的功能。他可以為Logstash和ElasticSearch提供的日志分析的 Web 界面,具有較好的展示效果,可以自定義多種表格、柱狀圖、餅狀圖、折線圖,對存儲在ElasticSearch中的數(shù)據(jù)進行深入挖掘分析與可視化。

      3 日志分析系統(tǒng)

      3.1 日志分析系統(tǒng)框架

      基于ELK的日志分析系統(tǒng)的體系結(jié)構(gòu)總體分為日志采集、日志預(yù)處理和日志分析三部分,如圖1所示。

      雖然單純的ELK架構(gòu)方式容易搭建,但是由于沒有消息隊列緩沖,存在數(shù)據(jù)丟失隱患,故本文設(shè)計的日志分析平臺引入了消息隊列機制。多個獨立的Logstash agent(shipper)部署在CIMISS系統(tǒng)(26臺服務(wù)器)各個日志生成host上,負責收集不同來源的日志,直接將日志輸出到Redis隊列(list)中;Logstash(Indexe)負責從Redis中取出數(shù)據(jù),對數(shù)據(jù)進行格式化和相關(guān)預(yù)處理后,輸出到ElasticSearch集群中存儲;最后由Kibana呈現(xiàn)給用戶做統(tǒng)計、分析。

      3.2 ELK環(huán)境部署

      3.2.1 基礎(chǔ)環(huán)境準備

      ELK日志分析平臺采用兩臺安有Centos6.4系統(tǒng)的虛擬機作為集群,一臺作為master節(jié)點,另一臺為slave節(jié)點,master收集到日志后,會隨機把一部分數(shù)據(jù)碎片到salve上;同時,master和slave又都會各自做副本,并把副本放到對方機器上,這樣就保證了數(shù)據(jù)不會丟失。如果master宕機了,那么客戶端在日志采集配置中將ElasticSearch主機指向改為slave,就可以保證ELK日志的正常采集和web展示。

      3.2.2 ElasticSearch安裝及配置

      由于ElasticSearch和Logstash都是依賴于java環(huán)境運行,且對java版本要求較高,首先在兩臺ElasticSearch客戶端逐臺安裝jdk8。然后安裝ElasticSearch5.0.1,集群名設(shè)置為ElasticSearch,每臺服務(wù)器的主機名為默認主機名,完成配置文件修改工作并登陸Web頁面測試安裝是否成功。最后安裝head插件,它是一個用瀏覽器跟ES集群交互的插件,可以查看集群狀態(tài)、集群的doc內(nèi)容、執(zhí)行搜索和普通的Rest請求等。

      3.2.3 Logstash安裝及配置

      Logstash的安裝較為簡單,首先檢查CIMISS系統(tǒng)中各日志生成服務(wù)器的java版本是否能夠支持Logstash,如果版本較低的話創(chuàng)建新用戶,安裝高版本的JDK,同時配置環(huán)境變量。然后在日志生成服務(wù)器和客戶端安裝Logstash5.0.1,并編寫簡單的輸入輸出信息測試Logstash是否能夠正確輸出。測試完成創(chuàng)建一個配置文件,使用 input 、filter和 output 定義收集日志時的輸入和輸出的相關(guān)配置,啟動Logstash時指定使用該配置文件。

      3.2.4 Kibana及插件安裝配置

      解壓安裝Kibana后修改配置文件,由于Kibana需要一直運行在前臺,因此選擇使用screen啟動Kibana。為了保證日志分析平臺的安全性,在Kibana和ElasticSearch中安裝x-pack插件。此時Logstash的配置文件中應(yīng)將x-pack的訪問權(quán)限配置到output。使用瀏覽器訪問Kibana,在Discover中添加Logstash發(fā)送給ElasticSearch的index名,并在Query bar中輸入日志中可能引起系統(tǒng)異常的字段,搜索結(jié)果會隨著時間的推移顯示在頁面頂部的方直圖中,如圖2所示。同時可以保存關(guān)注的搜索結(jié)果,并在Visualize中創(chuàng)建柱狀圖,在Dashboard中監(jiān)控。

      4 結(jié)論

      大數(shù)據(jù)時代的運維管理有著重大的意義,好的日志處理平臺事半功倍的提升開發(fā)人員和運維人員的效率。本文提出了基于ELK實時進行大日志數(shù)據(jù)搜索的軟件集成方案。采集CIMISS系統(tǒng)各設(shè)備上的操作日志、系統(tǒng)運行日志、進程輸出日志、以及維護記錄日志,發(fā)現(xiàn)和捕獲海量日志中的異常行為和違規(guī)行為,通過分析日志快速定位系統(tǒng)異常,為保障氣象部門系統(tǒng)系統(tǒng)安全提供支持。

      參考文獻

      [1]https://www.elastic.co/

      [2]呂增輝,陶振凱,唐靜.基于Lucene.net的對象持久化的實現(xiàn)[J].吉林師范大學(xué)學(xué)報(自然科學(xué)版),2009,30(01):90-91.

      [3][美]拉斐爾·酷奇,等.深入理解ElasticSearch[M].北京:機械工業(yè)出版社,2016.

      作者單位

      內(nèi)蒙古自治區(qū)氣象信息中心 內(nèi)蒙古自治區(qū)呼和浩特市 010010

      博湖县| 博客| 曲阜市| 赤城县| 兴山县| 阜平县| 龙门县| 托克托县| 红安县| 中牟县| 平乐县| 新密市| 红河县| 漳浦县| 晋中市| 榕江县| 邵武市| 荥阳市| 四会市| 嫩江县| 仙桃市| 亳州市| 宕昌县| 牡丹江市| 息烽县| 香港| 神农架林区| 齐齐哈尔市| 柞水县| 崇明县| 泽州县| 定结县| 卢龙县| 舒城县| 淮南市| 城固县| 慈溪市| 六枝特区| 蒲江县| 东光县| 容城县|