999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

海量數據日志系統架構分析與應用

2017-01-18 05:48:00
長春工業大學學報 2016年6期
關鍵詞:用戶分析系統

劉 鍇

(安徽農業大學 現代教育信息中心, 安徽 合肥 230036)

海量數據日志系統架構分析與應用

劉 鍇

(安徽農業大學 現代教育信息中心, 安徽 合肥 230036)

介紹了多種分布式日志系統的架構和數據處理流程,以ELK日志系統(即Elastic search,Logstash和Kibana)為例,介紹ELK在不同場景中的架構特點以及應用案例。

日志; 分布式; ELK; 架構

0 引 言

日志,通常是指以文本模式記錄的數據,該數據反映了系統運行過程、狀態以及各種關鍵信息。對每個系統來說,日志都是很重要的記錄信息。隨著信息化的飛速發展,傳統的單一節點的日志系統已經無法記錄指數級增長的日志數據,更不用說分析和處理這些數據了。目前,利用分布式平臺實現的日志系統逐漸成為日志系統家族中的主力軍,他們運行在多個節點組成的集群中,通過算法統一調度,可以實現海量日志的準實時處理。文中將詳細介紹分布式日志系統的幾種系統架構,并以ELK日志系統(即Elastic search,Logstash和Kibana)為例,介紹其不同場景下的部署架構,最后給出ELK的實際應用案例。

1 日志系統發展現狀

所有信息系統平臺每天會產生大量的日志,通常以流式數據為主,包括用戶訪問記錄、數據庫操作記錄等,當數據量達到一定的數量級,傳統的單節點系統已經無法完成檢索及分析任務,必須使用分布式的日志系統對他們進行處理。一般而言,這些系統需要具有以下特征:

1)構建應用系統和分析系統的橋梁;

2)支持準實時的在線分析系統和類似于Hadoop之類的離線分析系統;

3)具有高可擴展性和可靠性。即:當數據量增加時,可以通過增加節點進行水平性能擴展[1];當某個或某一些節點發生故障時,只影響系統的性能,系統功能性不受影響。

目前在這一領域較為先進的系統包括cloudera的Flume、linkedin的Kafka以及facebook的Scribe等[2]。

1.1 Flume

Flume是cloudera設計開發的開源日志系統,以可靠性、可擴展性、可管理性以及功能可擴展性為設計目標,它內置的各種組件非常齊全,用戶幾乎不必進行任何額外開發即可使用。Flume采用了分層架構,由三層組成,分別為agent,collector和storage。其中,agent和collector均由兩部分組成:source和sink。source是數據來源,sink是數據去向[3]。

Flume架構如圖1所示。

1.2 Kafka

Kafka是采用scala語言編寫的開源項目,使用了多種效率優化機制,采用比較新穎的push/pull架構,更適合異構集群[4],底層采用Hadoop作為數據平臺。它實際上是一個包含producer,broker和consumer三種角色的系統。其中producer負責向某個topic發布消息,而consumer作為接收方訂閱這個topic的消息,一旦出現關于這個topic的新消息,broker負責將新消息傳遞給訂閱它的所有consumer。由此可以看出,在Kafka中,topic是組成消息的關鍵,而為了便于管理數據和進行負載均衡,每個topic又會分為多個partition。同時,Kafka也使用了zookeeper進行負載均衡[3]。

圖1 Flume架構圖

Kafka架構如圖2所示。

圖2 Kafka架構圖

1.3 Scribe

Scribe是facebook開源的日志收集系統,facebook公司內部已經大量使用Scribe系統。Screbe系統中存在一個中央存儲系統,該系統可由NFS或者分布式文件系統組成,Scribe通過各種日志源收集日志數據,寫入中央存儲系統,便于集中分析、統計和處理。它為日志的“分布式收集,統一處理”提供了一個可擴展的、高容錯的方案[5]。其架構如圖3所示。

圖3 Scribe架構圖

Scribe的架構較為簡單,主要包括三部分,分別為Scribe Agent、Scribe和存儲系統。Scribe架構的最大特點是容錯性較好,當存儲系統發生故障時,Scribe會將本地磁盤作為存儲緩沖區,將數據臨時寫在本地磁盤上,待存儲系統恢復正常后,本地磁盤中的數據會被重新加載到存儲系統中[6]。

2 ELK架構介紹

ELK是Elasticsearch、Logstash、Kibana的簡稱,這是組成ELK的核心套件,但不是全部套件。根據應用場景的不同,搭配不同的套件,ELK可以實現不同的架構。

Elasticsearch提供日志分析中的搜集、分析、存儲數據三大功能,是整個架構中的實時全文搜索和分析引擎。它構建于Apache Lucene搜索引擎庫之上,是一套可擴展的分布式系統[7]。

Logstash是一個功能強大的工具,用來搜集、分析、過濾日志。它支持幾乎任何類型的日志,包括系統日志、錯誤日志和自定義應用程序日志。它可以從許多來源接收日志,這些來源包括 syslog、消息傳遞(例如 RabbitMQ)和JMX,它能夠以多種方式輸出數據,包括電子郵件、websockets和Elasticsearch[8]。

Kibana是用于展示日志信息的圖形界面,基于Web搜索、分析和可視化存儲在 Elasticsearch指標中的日志數據[9]。

下面將對ELK針對不同應用場景的架構進行分析。

2.1 簡單的ELK架構

這是最簡單的ELK架構,通常供學習者或者小規模集群使用。它的優點是結構簡單、搭建速度快、容易上手,可以快速了解ELK的架構組成,對搭建復雜的ELK集群提供幫助。缺點是處理能力較低,對設備資源占用較大,另外由于結構簡單,也存在數據丟失的隱患,通常在業務系統中不推薦此種架構。其架構圖如圖4所示。

圖4 簡單的ELK架構

此架構首先由Logstash分布于各個節點上搜集相關日志、數據,并經過分析、過濾后發送給遠端服務器上的Elasticsearch進行存儲。Elasticsearch將數據以分片的形式壓縮存儲并提供多種API供用戶查詢、操作。用戶亦可以更直觀地通過配置Kibana Web Portal方便的對日志查詢,并根據數據生成報表。

2.2 帶消息隊列的ELK架構

此架構在簡單ELK架構的基礎上引入消息隊列機制。其架構如圖5所示。

圖5 帶消息隊列的ELK架構

位于各個節點上的Logstash Agent先將數據/日志傳遞給Kafka(或者Redis),并將隊列中消息或數據間接傳遞給Logstash,Logstash過濾、分析后將數據傳遞給Elasticsearch存儲。最后由Kibana將日志和數據呈現給用戶。因為引入了Kafka(或者Redis),所以即使遠端Logstash server因故障停止運行,數據將會先被存儲下來,從而避免數據丟失。但這種架構也有缺點,位于中心節點的Logstash依舊存在負載過重,占用資源過多的問題。

2.3 帶Beats的ELK架構

Beats是一個代理平臺,將不同類型的數據發送到elasticsearch。Beats可以直接將數據發送到elasticsearch,也可以通過logstash將數據發送elasticsearch。引入Beats很好地解決了上述兩種架構中Logstash占用資源過多的問題。引入Beats平臺后的ELK架構如圖6所示。

圖6 帶Beats的ELK架構

Logstash-forwarder可以替代Beats平臺,但是Beats擁有更好的擴展性和靈活性。Beats有3個典型的例子:Filebeat、Topbeat、Packetbeat。Filebeat用來收集日志,Topbeat用來收集系統基礎設置數據,如CPU、內存、每個進程的統計信息,Packetbeat是一個網絡包分析工具,統計收集網絡信息。

不管采用上面哪種ELK架構,都包含了其核心組件,即Logstash、Elasticsearch 和Kibana。各系統運維中究竟該采用哪種架構,可根據現實情況和架構優劣而定。

3 ELK大數據運維應用

3.1 ELK模塊組件

采用分布式架構的日志系統中,以下幾個方面是必不可少的:

1)對各個系統的監控,包括對硬件系統和軟件系統的各個組件的監控,如CPU、內存以及系統可用性等;

2)基于分布式平臺的日志集中管理和查詢;

3)基于日志信息的鼓掌查詢;

4)安全及事件日志的記錄和管理;

5)提供可視化的報表功能。

ELK組件應用于分布式系統之上,其功能模塊如圖7所示。

ELK能夠提供線上業務的準實時監控,并在業務故障時幫助快速定位原因,跟蹤分析Bug,排除故障,通過報表功能可以跟蹤業務趨勢,實現安全與合規審計,最大深度地挖掘海量日志的數據價值。同時Elasticsearch提供包括rest,java,phthon在內的多種開源API,用戶可以根據需求自行擴展開發。

圖7 ELK功能模塊

3.2 ELK應用舉例

在實際應用中,通過ELK組件Hadoop環境下的運行日志,經過篩選、過濾并存儲可用信息,從而完成對Hadoop作業運行狀態監控。ELK搜集作業運行和完成狀態進行監控,實時掌握集群狀態,了解作業完成情況,并生成報表,方便監控和查看,ELK應用舉例如圖8所示。

圖8 ELK應用舉例

ELK的數據來源可以是多種多樣的日志數據,其input plugin組件支持近50種日志類型。

Logstash配置文件有3個主要模塊:input()輸入或者說收集數據,定義數據來源;filter()對數據進行過濾、分析等操作;output()輸出。當數據源搜集到數據后,通過filter()將數據過濾整理成固定的格式,可以是JSON、grep、grok、geoip等類型。然后將整理后的數據輸出到數據庫或者直接傳遞給Elasticsearch。當數據存儲在Elasticsearch后,用戶可以通過它提供的API來進行數據檢索,如使用REST API執行curl get命令請求檢索指定數據。另外,用戶也可以使用Kibana對數據進行可視化瀏覽。Kibana還提供時間檢索功能,即可以對某一時段的數據進行查詢和生成報表。

4 結 語

介紹了目前各大分布式環境下的日志系統架構,并對應用廣泛、靈活性較強的ELK日志系統架構進行了詳細分析,分別闡述了不同應用環境下的ELK架構的優缺點,并給出了ELK日志系統在業務系統中的應用案例。經過實踐,ELK日志系統作為一個開源的分布式日志系統,能夠為用戶提供穩定、可靠的準實時搜索服務,并且能夠提供多種報表供用戶選擇,為用戶在故障排查、數據分析時提供幫助。

[1] 丁雪松.共享數據服務統計信息的提取與可視化研究[D].北京:中國地質大學,2012.

[2] 周昕毅.Linux集群運維平臺用戶權限管理及日志審計系統實現[D].上海:上海交通大學,2012.

[3] 呂佳.基于Elastic Search的分布式日志搜索系統設計[D].上海:復旦大學,2013.

[4] 何海剛.基于Key-Value的海量日志存儲系統設計[D].上海:復旦大學,2013.

[5] 葉斌,余陽,王會,等.大數據在MOOC中的應用分析[J].微型機與應用,2015(6):97-98.

[6] Scribe Kafka.開源日志系統比較[EB/OL].(2011-06-10)[2016-05-29].http://dongxicheng.org/search-engine/log-systems/.

[7] Serdar Yegulalp.IBM Bluemix adds graph analytics, DB management[EB/OL].(2016-02-05)[2016-05-29].http://www.tuicool.com/articles/3mEzmeA.

[8] Serdar Yegulalp.6 Splunk alternatives for log analysis[EB/OL].(2016-05-02)[2016-05-29].http://www.tuicool.com/articles/7ZjQRrn.

[9] 周映,韓曉霞.ELK日志分析平臺在電子商務系統監控服務中的應用[J].信息技術與標準化,2016(7):67-70.

Architecture analysis and application of massive data log system

LIU Kai

(Modern Educational Information Center, Anhui Agricultural University, Hefei 230036, China)

The architecture and data processing flowchart of some distributed log systems are analyzed first. Taking ELK log system (Elastic search, Logstash and Kibana) as an example, we discuss the features of ELK at different scenes and applications.

log; distribute system; ELK; architecture.

2016-05-29

安徽省教育廳高校自然科學基金項目(KJ2015A326)

劉 鍇(1981-),男,漢族,安徽合肥人,安徽農業大學工程師,碩士,主要從事大數據處理研究,E-mail:liukai@ahau.edu.cn.

10.15923/j.cnki.cn22-1382/t.2016.6.13

TP 391

A

1674-1374(2016)06-0581-06

猜你喜歡
用戶分析系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
隱蔽失效適航要求符合性驗證分析
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
電力系統不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
電力系統及其自動化發展趨勢分析
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
主站蜘蛛池模板: 26uuu国产精品视频| 一级毛片在线播放免费| 视频二区亚洲精品| 波多野结衣在线一区二区| 人妻精品久久无码区| 国产网友愉拍精品视频| 99视频全部免费| www.亚洲天堂| 国产欧美日韩在线在线不卡视频| 亚洲精品国产成人7777| 亚洲综合18p| 午夜天堂视频| 在线亚洲精品自拍| 国产激情在线视频| 在线看AV天堂| 欧美狠狠干| 久久亚洲国产最新网站| 国产菊爆视频在线观看| 青草免费在线观看| 91香蕉国产亚洲一二三区| 亚洲精品波多野结衣| 亚洲乱码在线视频| 国产成人综合久久| 国产99视频精品免费观看9e| 91精品啪在线观看国产60岁| 日韩无码视频播放| 亚洲天堂视频网站| 国产女同自拍视频| 国产亚洲现在一区二区中文| 91精品专区国产盗摄| 亚洲成a人片在线观看88| 欧美特黄一级大黄录像| 欧美a在线看| 丁香亚洲综合五月天婷婷| 2020国产免费久久精品99| 亚洲成AV人手机在线观看网站| 欧美一道本| 国产精品永久久久久| 99re经典视频在线| 国产精品天干天干在线观看| 日本一区二区三区精品视频| 亚洲高清资源| 亚洲国产精品久久久久秋霞影院| 九九免费观看全部免费视频| 国产精品乱偷免费视频| 国内精品小视频在线| 国产在线专区| 4虎影视国产在线观看精品| 一级毛片免费不卡在线| 欧美日韩综合网| 亚洲一区二区三区在线视频| 国产自视频| 色偷偷综合网| 第一区免费在线观看| 久久精品人妻中文视频| 91精品专区国产盗摄| 在线观看无码a∨| 亚洲综合专区| 久草性视频| 丁香婷婷综合激情| 波多野结衣一二三| 日韩在线欧美在线| 国产精品55夜色66夜色| 欧美成人免费午夜全| 日日摸夜夜爽无码| 欧美日韩国产精品va| 亚洲综合亚洲国产尤物| 欧美成人免费一区在线播放| 国内精品久久久久久久久久影视| 免费在线观看av| 91无码人妻精品一区二区蜜桃| 亚洲精品另类| 青青久视频| 无码内射在线| 亚洲伊人天堂| 中国成人在线视频| 国产成人毛片| 国产麻豆永久视频| 国模私拍一区二区三区| 国产福利免费在线观看| 欧洲高清无码在线| 久久男人资源站|