日志收集到kibana分為3步,第一步收集,第二步存儲,第三步展示
本文第一步收集采用的是 filebeat,當(dāng)然也有別的方式,常見的比如log-stash,之所以用filebeat是因為它占用內(nèi)存資源少,10m就差不多了;
第二步存儲是采用es;
第三步展示是使用kibana;
整體就是這樣,整個流程如圖一所示,描述為 filebeat先從機器上收集指定目錄指定文件日志(需要在每個機器上安裝filebeat),然后發(fā)送到kafka消息隊列中,spark讀取kafka數(shù)據(jù)流,以指定格式寫入到es中(源碼在log-steaming simplifed分支中),kibana到es中去拉取日志展示到前端。

1、filebeat 安裝和配置:
本文安裝的是6.3.2版本,更高的版本配置是不一樣的,需要pe權(quán)限,用原生的filebeat就可以了,不用增強的
?curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.3.2-linux-x86_64.tar.gz或者
?wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.3.2-linux-x86_64.tar.gz
?tar xzvf filebeat-6.3.2-linux-x86_64.tar.gz
配置 解壓目錄下的filebeat.yml 文件,具體配置就不貼了,有敏感信息,可以網(wǎng)絡(luò)上自己搜搜看,挺多的,特別注意的是不同版本的配置是不一樣的;
?./filebeat -c filebeat.yml -e? ?前臺啟動,注意如果下線關(guān)閉了窗口 是會關(guān)閉filebeat進程的
啟動之后,如果配置沒問題的話就會把數(shù)據(jù)輸出到kafka了,之后驗證kafka中的數(shù)據(jù)和自己配置的對不對。
2、kafka數(shù)據(jù)驗證:
找一臺安裝了kafka的機器,采用kafka自帶的kafka-console-comsumer,啟動它帶上自己配置的topic,看看kafka收到的數(shù)據(jù)格式有沒有自己配置的幾個項,有的話說明對了,沒有的話,說明格式有問題,查看filebeat.yml 配置

3、寫spark 讀取kafka的數(shù)據(jù)流,然后寫入到es中
4、jenkins發(fā)布log-streaming 項目 ,帶上自己配置的topic,可能沒有權(quán)限,得找對應(yīng)的同事發(fā)一下
5、kibana配置好后直接拉取es的數(shù)據(jù)展示;