日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

日志分析平台ELK部署初学

發布時間:2025/4/16 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 日志分析平台ELK部署初学 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1)ELK介紹

ELK官方網站:https://www.elastic.co/products

elk-docker 官網:http://elk-docker.readthedocs.org/#installation

日志分析平臺ELK由 ElasticSearch 、 Logstash 和 Kiabana 三個開源工具組成。Elasticsearch 是個開源分布式搜索引擎,它的特點有:分布式,零配置,自動發現,索引自動分片,索引副本機制, restful風格接口,多數據源,自動搜索負載等。Logstash 是一個完全開源的工具,他可以對你的日志進行收集、分析,并將其存儲供以后使用(如搜索)。kibana 也是一個開源和免費的工具,Kibana 可以為 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以幫助您匯總、分析和搜索重要數據日志。

在需要收集日志的所有服務上部署 logstash ,作為 logstash agent ( logstash shipper )用于監控并過濾收集日志,將過濾后的內容發送到logstash indexer , logstash indexer 將日志收集在一起交給全文搜索服務 ElasticSearch ,可以用 ElasticSearch 進行自定義搜索通過 Kibana 來結合自定義搜索進行頁面展示。基本原理如下圖:


2)JDK部署

Logstash?依賴JDK,部署Ubuntu+jdk+tomcat基本環境。

3)安裝Logstash

下載logstash-2.2.2.zip并解壓,進入logstash-2.2.2目錄。

執行啟動:

#bin/logstash-e 'input { stdin { } } output { stdout {} }'

運行后顯示如下:

Settings:Default pipeline workers: 8

Logstashstartup completed

logstash按照某種格式輸出所輸入的內容,其中-e參數允許Logstash直接通過命令行接受設置。

使用CTRL-C命令可以退出之前運行的Logstash。

使用-e參數設置外,還可以創建配置文件并制定logstash使用這個配置文件運行。

在logstash-2.2.2目錄下創建test.conf,內容如下:

# vi test.conf

input {stdin { } }

output {

?? stdout { codec=> rubydebug }

}

Logstash 使用input 和 output 定義收集日志時的輸入和輸出的相關配置。

使用logstash的-f參數來讀取配置文件,并啟動。

# bin/logstashagent -f test.conf

運行后顯示如下:

Settings:Default pipeline workers: 8

Logstashstartup completed

Helloworld?? //輸入

{

?????? "message" => " Helloworld ",

????? "@version" => "1",

??? "@timestamp" =>"2016-04-11T01:27:22.765Z",

????????? "host" =>"ubuntu.202.96.128.86"

}

4)安裝Elasticsearch

下載elasticsearch-2.2.1.tar.gz并解壓,進入elasticsearch-2.2.1目錄。

執行下面命令啟動:

#bin/elasticsearch

提示:Exceptionin thread "main" java.lang.RuntimeException: don't run elasticsearchas root.

# adduser elastic?? //新增用戶

# chown –Relastic:elastic /home/elasticsearch-2.2.1?//授權安裝目錄訪問權限

#suelastic? //重新運行bin/elasticsearch

遠程連接并后臺運行命令:

#bin/elasticsearch>nohup &

查看elasticsearch 的 9200 端口是否已監聽:

#netstat-anp |grep ?9200

在logstash-2.2.2目錄下創建test2.conf,內容如下:

input {stdin { } }

output {

?elasticsearch { host => "IP"}

?stdout { codec=> rubydebug }

}

# bin/logstashagent -f test2.conf

使用curl 命令發送請求來查看 ES 是否接收到了數據:

# curl'http://ip:9200/_search?pretty'

5)安裝elasticsearch 插件

Elasticsearch-kopf插件可以查詢 Elasticsearch 中的數據,elasticsearch-2.2.1目錄執行:

#./plugin-install lmenezes/elasticsearch-kopf

安裝完成后在plugins 目錄下可以看到 kopf

# lsplugins/

瀏覽保存在Elasticsearch 中的數據http://IP:9200/_plugin/kopf

6)安裝Kibana

下載kibana-4.4.2-linux-x64.tar.gz并解壓,進入kibana-4.4.2-linux-x64目錄。

啟動kibana執行:

#bin/kibana

使用http:// IP:5601 訪問 Kibana ,登錄后,首先,配置一個索引,默認, Kibana 的數據被指向 Elasticsearch ,使用默認的 logstash-* 的索引名稱,并且是基于時間的,點擊“ Create ”即可。

索引創建成功后,點擊“ Discover ”,可以搜索和瀏覽 Elasticsearch 中的數據,默認搜索的是最近 15 分鐘的數據,可以自定義選擇時間。

7)平臺測試

將logstash 配置為索引器,并將 logstash 的日志數據存儲到 Elasticsearch ,本范例主要是索引本地系統日志。在在logstash-2.2.2目錄下創建test3.conf,內容如下:

input {

? file {

??? type =>"syslog"

???? path => ["/var/log/messages","/var/log/syslog" ]

? }

? syslog {

??? type =>"syslog"

??? port =>"5544"

? }

}

output {

? stdout { codec=> rubydebug }

? elasticsearch {host => "IP" }

}

啟動:

# bin/logstash–f test3.conf

使用echo 命令模擬寫入日志:

# echo"`date` test3" >>/var/log/messages

刷新 kibana ,最新的測試數據顯示到瀏覽器中。

總結

以上是生活随笔為你收集整理的日志分析平台ELK部署初学的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。