中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ELK日志分析系統——(實戰!)

發布時間:2020-09-27 09:43:08 來源:網絡 閱讀:417 作者:一拳超人007 欄目:系統運維

簡介

日志服務器

提高安全性
集中存放日志
缺陷:對日志的分析困難

ELK日志分析系統——(實戰!)

ELK日志分析系統

Elasticsearch:存儲,索引池   
Logstash:日志收集器
Kibana:數據可視化

日志處理步驟

1,將日志進行集中化管理
2,將日志格式化(Logstash)并輸出到Elasticsearch
3,對格式化后的數據進行索引和存儲(Elasticsearch)
4,前端數據的展示(Kibana)

Elasticsearch的概述

 提供了一個分布式多用戶能力的全文搜索引擎

Elasticsearch的概念

 接近實時
 集群
 節點
 索引:索引(庫)-->類型(表)-->文檔(記錄)
 分片和副本

Logstash介紹

 一款強大的數據處理工具,可以實現數據傳輸、格式處理、格式化輸出
 數據輸入、數據加工(如過濾,改寫等)以及數據輸出

LogStash主要組件

 Shipper
 Indexer
 Broker
 Search and Storage
 Web Interface

Kibana介紹

 一個針對Elasticsearch的開源分析及可視化平臺
 搜索、查看存儲在Elasticsearch索引中的數據
 通過各種圖表進行高級數據分析及展示

Kibana主要功能

 Elasticsearch無縫之集成
 整合數據,復雜數據分析
 讓更多團隊成員受益
 接口靈活,分享更容易
 配置簡單,可視化多數據源
 簡單數據導出

實驗拓撲

ELK日志分析系統——(實戰!)

實驗環境

Apache服務器 192.168.13.128 (Logstash)
Node1服務器 192.168.13.129 (Elasticsearch,Kibana)
Node2服務器 192.168.13.130 (Elasticsearch)

1,在node1,node2上安裝elasticsearch

[root@node1 ~]# vim /etc/hosts  ##配置解析名
192.168.13.129 node1
192.168.13.130 node2
[root@node1 ~]# java -version  ##查看是否支持Java
[root@node1 ~]# mount.cifs //192.168.100.3/LNMP-C7 /mnt/
Password for root@//192.168.100.3/LNMP-C7:  
[root@node1 mnt]# cd /mnt/elk/
[root@node1 elk]# rpm -ivh elasticsearch-5.5.0.rpm   ##安裝
[root@node1 elk]# systemctl daemon-reload  ##重載守護進程
[root@node1 elk]# systemctl enable elasticsearch.service   ##開機自啟
[root@node1 elk]# cd /etc/elasticsearch/
[root@node1 elasticsearch]# cp elasticsearch.yml elasticsearch.yml.bak  ##備份
[root@node1 elasticsearch]# vim elasticsearch.yml  ##修改配置文件
cluster.name: my-elk-cluster  ##集群名
node.name: node1    ##節點名,第二個節點為node2
path.data: /data/elk_data   ##數據存放位置
path.logs: /var/log/elasticsearch/  ##日志存放位置
bootstrap.memory_lock: false  ##不在啟動時鎖定內存
network.host: 0.0.0.0   ##提供服務綁定的IP地址,為所有地址
http.port: 9200  ##端口號為9200
discovery.zen.ping.unicast.hosts: ["node1", "node2"]  ##集群發現通過單播實現
[root@node1 elasticsearch]# mkdir -p /data/elk_data   ##創建數據存放點
[root@node1 elasticsearch]# chown elasticsearch.elasticsearch /data/elk_data/  ##給權限
[root@node1 elasticsearch]# systemctl start elasticsearch.service   ##開啟服務
[root@node1 elasticsearch]# netstat -ntap | grep 9200  ##查看開啟情況
tcp6     0    0 :::9200        :::*          LISTEN      2166/java

ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)

2,在瀏覽器上檢查健康和狀態

ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)

3,在node1,node2上安裝node組件依賴包

[root@node1 elasticsearch]# yum install gcc gcc-c++ make -y  ##安裝編譯工具
[root@node1 elasticsearch]# cd /mnt/elk/
[root@node1 elk]# tar zxvf node-v8.2.1.tar.gz -C /opt/  ##解壓插件
[root@node1 elk]# cd /opt/node-v8.2.1/
[root@node1 node-v8.2.1]# ./configure   ##配置
[root@node1 node-v8.2.1]# make && make install   ##編譯安裝

4,在node1,node2上安裝phantomjs前端框架

[root@node1 elk]# tar jxvf phantomjs-2.1.1-linux-x86_64.tar.bz2 -C /usr/local/src/
##解壓到/usr/local/src下
[root@node1 elk]# cd /usr/local/src/phantomjs-2.1.1-linux-x86_64/bin/
[root@node1 bin]# cp phantomjs /usr/local/bin/   ##編譯系統識別

5,在node1,node2上安裝elasticsearch-head數據可視化

[root@node1 bin]# cd /mnt/elk/
[root@node1 elk]# tar zxvf elasticsearch-head.tar.gz -C /usr/local/src/  ##解壓
[root@node1 elk]# cd /usr/local/src/elasticsearch-head/
[root@node1 elasticsearch-head]# npm install  ##安裝

6,修改配置文件

[root@node1 elasticsearch-head]# vim /etc/elasticsearch/elasticsearch.yml
##末行加入
http.cors.enabled: true  ##開啟跨域訪問支持,默認為false
http.cors.allow-origin: "*"    ##跨域訪問允許的域名地址
[root@node1 elasticsearch-head]# systemctl restart elasticsearch.service  ##重啟
[root@node1 elasticsearch-head]# cd /usr/local/src/elasticsearch-head/
[root@node1 elasticsearch-head]# npm run start &   ##后臺運行數據可視化服務
[1] 82515
[root@node1 elasticsearch-head]# netstat -ntap | grep 9100
tcp        0      0 0.0.0.0:9100    0.0.0.0:*      LISTEN      82525/grunt  
[root@node1 elasticsearch-head]# netstat -ntap | grep 9200
tcp6       0    0 :::9200              :::*        LISTEN      82981/java 

7,在瀏覽器上查看健康值狀態

ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)

8,在node1上創建索引

ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)

[root@node2 ~]# curl -XPUT 'localhost:9200/index-demo/test/1?pretty&pretty' -H 'content-Type: application/json' -d '{"user":"zhangsan","mesg":"hello world"}'
##創建索引信息

ELK日志分析系統——(實戰!)

9,在Apache服務器上安裝logstash,多elasticsearch進行對接

[root@apache ~]# yum install httpd -y   ##安裝服務
[root@apache ~]# systemctl start httpd.service   ##啟動服務
[root@apache ~]# java -version
[root@apache ~]# mount.cifs //192.168.100.3/LNMP-C7 /mnt/   ##掛載
Password for root@//192.168.100.3/LNMP-C7:
[root@apache ~]# cd /mnt/elk/
[root@apache elk]# rpm -ivh logstash-5.5.1.rpm   ##安裝logstash
[root@apache elk]# systemctl start logstash.service 
[root@apache elk]# systemctl enable logstash.service   ##自啟
[root@apache elk]# ln -s /usr/share/logstash/bin/logstash /usr/local/bin/  ##便于系統識別
[root@apache elk]# logstash -e 'input { stdin{} } output { stdout{} }'  ##標準輸入輸出
The stdin plugin is now waiting for input:
16:58:11.145 [Api Webserver] INFO  logstash.agent - Successfully started Logstash API endpoint {:port=>9600}
www.baidu.com   ##輸入
2019-12-19T08:58:35.707Z apache www.baidu.com
www.sina.com.cn  ##輸入
2019-12-19T08:58:42.092Z apache www.sina.com.cn
[root@apache elk]# logstash -e 'input { stdin{} } output { stdout{ codec=>rubydebug } }'
##使用rubydebug顯示詳細輸出,codec為一種編解碼器
The stdin plugin is now waiting for input:
17:03:08.226 [Api Webserver] INFO  logstash.agent - Successfully started Logstash API endpoint {:port=>9600}
www.baidu.com   ##格式化的處理
{
        "@timestamp" => 2019-12-19T09:03:13.267Z,
            "@version" => "1",
                    "host" => "apache",
             "message" => "www.baidu.com"
}
[root@apache elk]# logstash -e 'input { stdin{} } output { elasticsearch { hosts=>["192.168.13.129:9200"] } }'
##使用logstach將信息寫入elasticsearch中
The stdin plugin is now waiting for input:
17:06:46.846 [Api Webserver] INFO  logstash.agent - Successfully started Logstash API endpoint {:port=>9600}
www.baidu.com     ##輸入信息
www.sina.com.cn

10,用瀏覽器查看信息

ELK日志分析系統——(實戰!)

##在數據瀏覽中可以查看信息

ELK日志分析系統——(實戰!)

11,將系統日志文件輸出到elasticsearch

[root@apache elk]# chmod o+r /var/log/messages   ##給其他用戶讀權限
[root@apache elk]# vim /etc/logstash/conf.d/system.conf  ##創建文件
input {
                file{
                path => "/var/log/messages"   ##輸出目錄
                type => "system"
                start_position => "beginning"
                }
}
output {
                elasticsearch {
                #輸入地址指向node1節點
                hosts => ["192.168.13.129:9200"]
                index => "system-%{+YYYY.MM.dd}"
                }
}
[root@apache elk]# systemctl restart logstash.service  ##重啟服務
##也可以用數據瀏覽查看詳細信息

ELK日志分析系統——(實戰!)

12,在node1服務器上安裝kibana數據可視化

[root@node1 ~]# cd /mnt/elk/
[root@node1 elk]# rpm -ivh kibana-5.5.1-x86_64.rpm   ##安裝
[root@node1 elk]# cd /etc/kibana/
[root@node1 kibana]# cp kibana.yml kibana.yml.bak  ##備份
[root@node1 kibana]# vim kibana.yml   ##修改配置文件
server.port: 5601  ##端口號
server.host: "0.0.0.0"   ##監聽任意網段
elasticsearch.url: "http://192.168.13.129:9200"  ##本機節點地址
kibana.index: ".kibana"   ##索引名稱
[root@node1 kibana]# systemctl start kibana.service   ##開啟服務
[root@node1 kibana]# systemctl enable kibana.service 

13,瀏覽器訪問kibana

ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)

14,在apache服務器中對接apache日志文件,進行統計

[root@apache elk]# vim /etc/logstash/conf.d/apache_log.conf  ##創建配置文件
input {
                file{
                path => "/etc/httpd/logs/access_log"   ##輸入信息
                type => "access"
                start_position => "beginning"
                }
                file{
                path => "/etc/httpd/logs/error_log"
                type => "error"
                start_position => "beginning"
                }
}
output {
                if [type] == "access" {     ##根據條件判斷輸出信息
                elasticsearch {
                hosts => ["192.168.13.129:9200"]
                index => "apache_access-%{+YYYY.MM.dd}"
                }
        }   
                if [type] == "error" {
                elasticsearch {
                hosts => ["192.168.13.129:9200"]
                index => "apache_error-%{+YYYY.MM.dd}"
                }
        }
}
[root@apache elk]# logstash -f /etc/logstash/conf.d/apache_log.conf  
##根據配置文件配置logstach

15,訪問網頁信息,查看kibana統計情況

ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)

##選擇management>Index Patterns>create index patterns
##創建apache兩個日志的信息

ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)
ELK日志分析系統——(實戰!)


謝謝閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

象山县| 青冈县| 尼木县| 安顺市| 多伦县| 泰兴市| 平遥县| 新密市| 潢川县| 神农架林区| 西贡区| 甘孜| 贡嘎县| 舟曲县| 伊春市| 长白| 汶川县| 宜城市| 文安县| 巴中市| 巴彦淖尔市| 阿拉善左旗| 边坝县| 鄄城县| 岑巩县| 西乌| 安徽省| 随州市| 沽源县| 靖安县| 丹寨县| 财经| 佛教| 寻甸| 潞城市| 辽阳市| 原阳县| 罗田县| 宁德市| 静乐县| 彰化县|