案例1. Kibaba:數據可視化平台工具
1.特點:靈活的分析和可視化平台
實時總結流量和數據的圖表
為不同的用戶顯示直觀的界面
即時分享和嵌入的儀表盤
2.kibana安裝
1.首先配置yum源
將1.51的yum源copy給kibana主機,
2.修改/etc/hosts 保證互相能ping通
3.ssh-copy-id 保證與其他機器免密登錄
4.安裝:yum -y install kibana
5.修改配置文件
vim /opt/kibana/config/kibana.yml
6.啟動,設置開機自啟動
systemctl start kibana
systemctl enable kibana
7.web訪問kibana
Logstash是什么
是一個數據采集.加工處理以及傳輸的工具
特點:
所有類型的數據集中處理
不同模式和格式數據的正常化
自定義日志格式的迅速擴展
為自定義數據源輕松添加插件
3. logstash 三大模塊
input 模塊:只負責獲取數據(通過郵件,緩存,web sockt等等),不做任何處理.原封不動的交給filter -----相當於采購
filter 模塊:進行數據處理(變成有序的格式) -----加工處理(廚師)
output 模塊:輸出格式化好的數據(內部處理 收發郵件,等) ------服務員(上菜)
修改配置文件(定義這三個區域)
vim
input{
}
filter{
}
output{
}
file模塊使用
mkdir /tmp/a.log
mkdir /var/tmp/b.log
echo A_${RANDOM} >> /tmp/a.log
echo A_${RANDOM} >> /var/tmp/b.log
新開一個終端查詢是否監控到
cd /opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-patterns-core-2.0.5/patterns/grok-pattern
2 案例2:綜合練習
- 安裝配置 beats插件
- 安裝一台Apache服務並配置
- 使用filebeat收集Apache服務器的日志
- 使用grok處理filebeat發送過來的日志
- 存入elasticsearch
- 使用 kibana 做圖形展示
步驟一:安裝logstash
1)配置主機名,ip和yum源,配置/etc/hosts(請把es1-es5、kibana主機配置和logstash一樣的/etc/hosts)
2)安裝java-1.8.0-openjdk和logstash
啟動並測試
]# /opt/logstash/bin/logstash -f /etc/logstash/logstash.conf
3)codec類插件
啟動並測試
4)file模塊插件
創建兩個日志目錄,並測試
- root@logstash ~] touch /tmp/a.log
- [root@logstash ~]# touch /tmp/b.log
- [root@logstash ~]# /opt/logstash/bin/logstash -f /etc/logstash/logstash.conf
另開一個終端:寫入數據
- [root@logstash ~]# echo a1 > /tmp/a.log
- [root@logstash ~]# echo b1 > /var/tmp/b.log
之前終端查看:
5)filter grok插件
grok插件:
解析各種非結構化的日志數據插件
grok使用正則表達式把飛結構化的數據結構化
在分組匹配,正則表達式需要根據具體數據結構編寫
雖然編寫困難,但適用性極廣
解析Apache的日志
下載http服務都任一台機器上
- [root@es5 ~]# yum -y install httpd
- [root@es5 ~]# systemctl restart httpd
瀏覽器訪問一次網頁,在/var/log/httpd/access_log有日志出現
- cat /var/log/httpd/access_log
- 192.168.1.254 - - [12/Mar/2019:11:51:31 +0800] "GET /favicon.ico HTTP/1.1" 404 209 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0"
復制/var/log/httpd/access_log的日志到logstash下的/tmp/a.log
若要解決沒有解析的問題,同樣的方法把日志復制到/tmp/a.log,logstash.conf配置文件里面修改grok,查找正則宏路徑
解析出的結果
步驟二: 安裝Apache服務,用filebeat收集Apache服務器的日志,並存入elasticsearch
1)在之前安裝了Apache的主機上面安裝filebeat

2)修改配置文件
[root@logstash ~]# /opt/logstash/bin/logstash -f /etc/logstash/logstash.conf
打開另一終端查看5044是否成功啟動
- [root@logstash ~]# netstat -antup | grep 5044
firefox 192.168.1.55 //ip為安裝filebeat的那台機器
回到原來的終端,有數據
2)修改logstash.conf文件
瀏覽器訪問Elasticsearch,有apachelog,如圖-20所示:
- [student@room9pc01 ~]$ firefox http://192.168.1.55:9200/_plugin/head