今天接着《ElasticSearch實戰-日誌監控平臺》一文來給你們分享後續的學習,在《ElasticSearch實戰-日誌監控平臺》中給你們介紹一個日誌監控平臺的架構方案,接下來給你們分享如何去搭建部署這樣一個平臺,給你們作一個入門介紹。下面是今天的分享目錄:html
下面開始今天的內容分享。java
搭建 Elastic 套件較爲簡單,下面咱們開始去搭建部署相關套件,首先咱們準備必要的環境。node
你們能夠 Elastic 的官方網站下載對應的安裝包,地址以下所示:redis
[下載地址]json
另外,一個基礎環境就是須要用到 JDK,ES 集羣依賴 JDK,地址以下所示:架構
[下載地址]oracle
這裏咱們將 Logstash 的服務部署在中心節點中,其核心配置文件以下所示:elasticsearch
input { redis { host => "10.211.55.18" port => 6379 type => "redis-input" data_type => "list" key => "key_count" } } filter { grok { match => ["message", "%{IPORHOST:client} (%{USER:ident}|-) (%{USER:auth}|-) \[%{HTTPDATE:timestamp}\] \"(?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:http_version})?|-)\" %{NUMBER:response} %{NUMBER:bytes} \"(%{QS:referrer}|-)\" \"(%{QS:agent}|-)\""] } kv { source => "request" field_split => "&?" value_split => "=" } urldecode { all_fields => true } } output { elasticsearch { cluster => "elasticsearch" codec => "json" protocol => "http" } }
其代理節點,分別部署在日誌生產節點之上,核心配置文件以下所示:ide
input { file { type => "type_count" path => ["/home/hadoop/dir/portal/t_customer_access.log"] exclude => ["*.gz", "access.log"] } } output { stdout {} redis { host => "10.211.55.18" port => 6379 data_type => "list" key => "key_count" } }
接着,咱們部署 ES 集羣,配置較爲簡單,其配置內容以下所示:工具
node.name: "node1"
這裏我只配置了其節點名稱信息,集羣名稱使用默認的,若你們須要配置其餘信息可自行處理,須要注意的是,這裏在實用 scp 命令分發到其餘節點時,須要修改其屬性值,保持每一個節點的 node.name 值不同便可。
另外,在安裝插件 ES 集羣的相關插件時,可使用如下命令:
sudo elasticsearch/bin/plugin -install mobz/elasticsearch-head
sudo elasticsearch/bin/plugin -install lukas-vlcek/bigdesk
其對應的 Web UI 界面以下圖所示:
關於其餘的 ES 集羣的插件,搭建能夠根據實際業務需求進行選擇性的安裝,這裏就很少贅述了。
這裏咱們須要安裝一個可以去可視化 ES 集羣數據的工具,這裏咱們選擇 Kibana 工具去可視化咱們的數據,其安裝較爲簡單,只需配置對應的核心文件便可,配置以下:
kibana.yml
elasticsearch_url: "http://10.211.55.18:9200"
這裏去可視化 node1 節點 ES 集羣中數據。
接着,咱們啓動整個系統,啓動步驟以下所示:
[hadoop@dn1 ~]$ redis-server &
bin/logstash agent --verbose --config conf/shipper.conf --log logs/stdout.log &
bin/logstash agent --verbose --config conf/central.conf --log logs/stdout.log &
bin/elasticsearch start
bin/kibana
這裏,咱們能夠預覽收集的日誌,日誌信息我只抽取了幾條,截圖以下:
咱們還可使用篩選功能,選取咱們須要觀察的數據結果,這裏咱們篩選了 IP 和 AppName 屬性進行觀察,以下圖所示:
這裏須要注意的是,如果咱們首次啓動 Kibana 服務,收集日誌信息爲空的狀況下,在咱們建立索引時,Settings 模塊下的界面中 Create 按鈕會是灰色狀態,致使沒法建立,這裏你們在建立的時候須要保證咱們有日誌已被收集存儲到 ES 集羣。以下圖,因爲我已收集存儲日誌到 ES 集羣,因此按鈕呈現綠色狀態,供點擊建立。以下圖所示:
這篇博客就和你們分享到這裏,若是你們在研究學習的過程中有什麼問題,能夠加羣進行討論或發送郵件給我,我會盡我所能爲您解答,與君共勉!