ELKStack簡介
對于日志來說,最常見的需求就是收集、存儲、查詢、展示,開源社群正好有相對應的開源項目:logstash(收集)、elasticsearch(存儲+搜尋)、kibana(展示),我們将這三個組合起來的技術稱之為ELKStack,是以說ELKStack指的是Elasticsearch、Logstash、Kibana技術棧的結合,一個通用的架構如下圖所示:

Elasticsearch部署
Elasticsearch首先需要Java環境,是以需要提前安裝好JDK,可以直接使用yum安裝。也可以從Oracle官網下載下傳JDK進行安裝。開始之前要確定JDK正常安裝并且環境變量也配置正确:
安裝JDK
[root@linux-node1 ~]# yum install -y java
[root@linux-node1 ~]# java -version
openjdk version "1.8.0_65"
OpenJDK Runtime Environment (build 1.8.0_65-b17)
OpenJDK 64-Bit Server VM (build 25.65-b01, mixed mode)
YUM安裝ElasticSearch
1.下載下傳并安裝GPG key
[root@hadoop-node1 ~]# rpm --import [url]https://packages.elastic.co/GPG-KEY-elasticsearch[/url]
2.添加yum倉庫
[root@hadoop-node1 ~]# vim /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-2.x]
name=Elasticsearch repository for 2.x packages
baseurl=http://packages.elastic.co/elasticsearch/2.x/centos
gpgcheck=1
gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
enabled=1
3.安裝elasticsearch
[root@hadoop-node1 ~]# yum install -y elasticsearch
LogStash部署與配置
和Elasticsearch一樣,在開始部署LogStash之前也需要你的環境中正确的安裝的JDK。可以下載下傳安裝Oracle的JDK或者使用 yum安裝openjdk。
[root@linux-node1 ~]# yum install -y java
[root@linux-node1 ~]# java -version
openjdk version "1.8.0_65"
OpenJDK Runtime Environment (build 1.8.0_65-b17)
OpenJDK 64-Bit Server VM (build 25.65-b01, mixed mode)
YUM部署LogStash
[root@linux-node2 ~]# rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
[root@linux-node2 ~]# vim /etc/yum.repos.d/logstash.repo
[logstash-2.3]
name=Logstash repository for 2.3.x packages
baseurl=https://packages.elastic.co/logstash/2.3/centos
gpgcheck=1
gpgkey=https://packages.elastic.co/GPG-KEY-elasticsearch
enabled=1
3.安裝logstash
[root@linux-node2 ~]# yum install -y logstash
Kibana簡介
Kibana 是為 Elasticsearch 設計的開源分析和可視化平台。你可以使用 Kibana 來搜尋,檢視存儲在 Elasticsearch 索引中的資料并與之互動。你可以很容易實作進階的資料分析和可視化,以圖表的形式展現出來。
Yum安裝Kibana
[root@linux-node2 ~]# rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
[root@test ~]# vim /etc/yum.repos.d/kibana.repo
[kibana-4.5]
name=Kibana repository for 4.5.x packages
baseurl=http://packages.elastic.co/kibana/4.5/centos
gpgcheck=1
gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
enabled=1
3.安裝kibana
[root@test ~]# yum install -y kibana
使用Cobbler建立ELKStack倉庫
當然生産環境,肯定不能使用外網的YUM倉庫,可以使用Cobbler來建立自己的yum倉庫。
[root@log-node1 ~]# cobbler repo add --name=logstash-2.3 --mirror=http://packages.elastic.co/logstash/2.3/centos --arch=x86_64 --breed=yum
[root@log-node1 ~]# cobbler repo add --name=elasticsearch2 --mirror=http://packages.elastic.co/elasticsearch/2.x/centos --arch=x86_64 --breed=yum
[root@log-node1 ~]# cobbler repo add --name=kibana4.5 --mirror=http://packages.elastic.co/kibana/4.5/centos --arch=x86_64 --breed=yum
[root@log-node1 ~]# cobbler reposync