摘要:基于算是云計算時代擁有劃時代意義的項目了,關于的介紹與資料非常多。
1. 為什么要分析日志
傳統的Web開發中,日志可能并不被重視,只有應用出現問題后,才會適時性的去看一眼。而且日志的儲存方式也很簡單,直接寫入一個文本文件或者扔到數據庫中就了事了。這樣對于單機應用來說沒有什么不可以的,可是當系統架構分布式后,官網、論壇、社交、交易等各個大大小小的子系統越來越多,再加上操作系統、應用服務、業務邏輯等等,日志的管理與查看就越發的麻煩,面對大量的日志數據而且又是分布在各個不同的機器甚至不同的機房,如果我們還是按照傳統的方式登錄到某一臺機器上去查看日志,然后再匯總起來,再做個跨機房的排序,那這樣感覺就太糟糕了。所以一套集中式的實時日志分析平臺就顯得非常重要了,而一套日志分析平臺至少要包括一下幾個特點:
收集, 可以收集不同來源的日志,包括Web日志,請求日志,本地機器,跨機房機器等
存儲,穩定的存儲日志信息并索引起來
分析,支持各種層面的分析,而且可以以UI展示出來
警告,根據日志內容進行不同錯誤級別的報警
2. ELK協議棧其實市面上的日志分析產品很多,簡單的Rsyslog,商業化的Splunk,開源的Scribe,Apache的Flume,Cloudera 的ELK。這里采用的是ELK這個體系架構,ELK(Elasticsearch, Logstash, Kibana)經過這么多年的發展,一直到現在的6.0.0版本。能夠發展這么快,其中肯定有他的原因所在。簡單介紹一下這三個軟件的特點:
Elasticsearch 高可用性,實時索引,拓展簡單,接口友好
Logstash 是一個具有實時的數據收集引擎,幾乎可以收集所有的數據
Kibana 提供分析和可視化的Web平臺,用來查詢分析以及生成各種報表
通過架構圖可以看到,整體日志平臺的原理其實并不難,日志的生產者作為Shipper產生各種各樣的日志,然后傳輸到Kafka中,這里傳輸也是從生產者中讀取然后傳輸通過 Logstash 到 Kafka, 再者Logstash通過讀取Kafka中的日志數據,儲存到ElasticSearch。只在中間再增加了Kafka做為緩沖層,因為Logstash會同步把日志傳輸到Elasticsearch,一旦ElasticSearch掛掉數據就有可能會丟失。于是,我們考慮利用Kafka作為緩沖區。
3.基于Docker這里選擇Kafka的原因是因為與大多數消息系統比較,Kafka有更好的吞吐量,內置分區,副本和故障轉移,這有利于處理大規模的消息,因為互聯網應用日志基本上都是海量的。
Docker算是云計算時代擁有劃時代意義的項目了,關于Docker的介紹與資料非常多。特別是docker-compose相當于給Docker插上了翅膀。Docker相對于傳統的虛擬化技術,Docker應用運行于宿主內核,無需啟動完整的操作系統,可以做到秒級、甚至毫秒級的啟動時間,大大的節約了開發、測試、部署的時間。并且確保了運行環境的一致,「這段代碼在我機器上沒問題啊」這一些的問題再也不會出現。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27144.html
摘要:基于的好處還有一個就是不用去考慮環境的搭建,直接一個就可以直接搞定了,而且現在的熱門開源軟件,都有官方維護的鏡像。這里基于和這兩個基礎鏡像制作。官方給的解決辦法是在的配置文件中寫入的帳號密碼,這樣第一次可以登錄,第二次又會不行。 基于Docker的好處還有一個就是不用去考慮環境的搭建,直接一個Dockerfile就可以直接搞定了,而且現在的熱門開源軟件,都有官方維護的鏡像。這里基于do...
摘要:簡介在出之前,對于的監控有著五花八門的解決方案,官方的插件也是各種變化,不僅名字亂而且還要一個個安裝。總共包含安全,警報,監控,監控,報告,圖表這五個功能,這里簡單介紹下安全監控與報警。 X-Pack 簡介 在 ElasticStack 出5.0之前,對于 ELK 的監控有著五花八門的解決方案,官方的插件也是各種變化,不僅名字亂而且還要一個個安裝。當然,官方也考慮到了大家的疾苦,于是推...
閱讀 2086·2021-11-23 10:13
閱讀 2794·2021-11-09 09:47
閱讀 2739·2021-09-22 15:08
閱讀 3317·2021-09-03 10:46
閱讀 2233·2019-08-30 15:54
閱讀 915·2019-08-28 18:09
閱讀 2431·2019-08-26 18:26
閱讀 2342·2019-08-26 13:48