打造高效實用的運維日誌平臺

0x01 背景docker

                 

面對與日俱增的日誌信息,最傳統的日誌收集方式已難以知足運維人員的基本需求。So,咱們何不利用現在豐富的開源工具來打造一款高效實用的運維日誌收集分析平臺呢。如下就目前嘗試在作的運維日誌平臺進行簡要介紹。架構

0x02 平臺架構運維

                                                

咱們並無採用ELK的架構進行日誌收集,而是採用了多款日誌收集工具結合的方式,即EKF(K/Z),elasticsearch + kafka-zookeeper + Flume + kibana/zabbix。elasticsearch

0x03 簡要介紹    工具

針對flume進行適當改寫,將Java環境加入到flume程序中,使flume服務啓動時便可擁有Java環境,免除在每臺主機上還需單獨部署jdk的困擾。同時,針對不一樣日誌的不一樣特色,採起不一樣的收集方式,規範日誌的格式,適當對採集的日誌進行壓縮,可有效減小日誌採集量。性能

針對kafka-zookeeper集羣,嘗試採用docker容器的方式進行部署。Docker以實現快速部署而稱著,所以,若是要部署較多量的kafka-zookeeper集羣,倒不如嘗試一下采用docker的部署方式。首先,咱們製做一個dockerfile,將dockerfile生成鏡像文件,啓動後便可使用優化

            

將kafka數據寫入elasticsearch,咱們採用的是本身寫的一箇中間件程序來實現的。以前本來是想採用第三方插件之類的東西,但發現適合本身的確實是沒有,因而同事本身動手寫了一個,目前驗證來看,效果和性能仍是不錯的。插件

針對elasticsearch集羣,目前的關注點主要圍繞在如何優化上;此外,咱們還將elasticsearch中的數據進行提取,在zabbix上進行展現。目前在zabbix上展現的參數主要是對pv值和http狀態碼進行統計和監控。日誌

    zabbix效果圖:中間件

               

               

打造一款高效實用的運維日誌收集與分析平臺,遇到不少個坑,但願可以打形成真正的日誌收集分析平臺,簡化運維平常工做量,爲平常工做提供決策與處理依據。

相關文章
相關標籤/搜索