公司想要開始要建立統一的Log查詢、蒐集與分析的環境,因此嘗試使用ELK來建立。
環境說明
先嘗試建立Standalone的環境,也就是ELK都先放在同一台。- 作業系統: CentOS 6.5 final
- Elastic Search 1.3.2
- Logstash 1.4.2
- Kibana
參考資料
軟體安裝
-
作業系統安裝
- 請記得安裝已下套件
- Apache httpd (yum install httpd)
- Java 7 SDK
-
安裝Elastic Search
- 利用yum repository 來安裝(參考資料 :http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/setup-repositories.html )
- 下載公鑰
rpm --import http://packages.elasticsearch.org/GPG-KEY-elasticsearch
- 在 /etc/yum.repos.d/ 目錄下新增檔案,例如 elasticsearch.repo,內容如下
[elasticsearch-1.3] name=Elasticsearch repository for 1.3.x packages baseurl=http://packages.elasticsearch.org/elasticsearch/1.3/centos gpgcheck=1 gpgkey=http://packages.elasticsearch.org/GPG-KEY-elasticsearch enabled=1
- 安裝Elastersearch
yum install elasticsearch

設定Elasticsearch
- 編輯 /etc/elasticsearch/elasticsearch.yml ,加入
cluster.name: "LogCluster" node.name: "LogMaster" node.master: true node.data: true path.conf: /etc/elasticsearch path.data: /datapool/data1 path.work: /datapool/work path.logs: /datapool/log
- 將服務加入系統
chkconfig --add elasticsearch
- 啟動服務
/etc/init.d/elasticsearch start
- 測試啟動是否成功
curl localhost:9200/_nodes/process?pretty { "cluster_name" : "LogCluster", "nodes" : { "sqhS68RMS3q1CtthFOdSxw" : { "name" : "LogMaster", "transport_address" : "inet[/10.10.10.151:9300]", "host" : "logserver", "ip" : "127.0.0.1", "version" : "1.3.2", "build" : "dee175d", "http_address" : "inet[/10.10.10.151:9200]", "attributes" : { "master" : "true" }, "process" : { "refresh_interval_in_millis" : 1000, "id" : 30839, "max_file_descriptors" : 65535, "mlockall" : false } } } } 安裝Logstash
- 參考資料:http://logstash.net/docs/1.4.2/repositories
- 安裝金鑰
rpm --import http://packages.elasticsearch.org/GPG-KEY-elasticsearch
- 在 /etc/yum.repos.d/ 目錄下新增檔案,例如 logstash.repo,內容如下
[logstash-1.4] name=logstash repository for 1.4.x packages baseurl=http://packages.elasticsearch.org/logstash/1.4/centos gpgcheck=1 gpgkey=http://packages.elasticsearch.org/GPG-KEY-elasticsearch enabled=1
- 安裝Logstash
yum install logstash
- 參考資料:http://logstash.net/docs/1.4.2/repositories
安裝Kibana
- Kibana是一個純粹由javascript/CSS/html組成的套件,安裝好logstash之後可以在 /opt/logstash/vendor/kibana 目錄下找到。
- 複製到httpd的 /var/www/html/ 目錄之下
cp -R /opt/logstash/vendor/kibana/* /var/www/html/
- 啟動httpd服務
chkconfig httpd on /dev/init.d/httpd start
- Kibana是一個純粹由javascript/CSS/html組成的套件,安裝好logstash之後可以在 /opt/logstash/vendor/kibana 目錄下找到。
設定防火牆
- 預設的防火牆是沒有開啟http及elastersearch的port,請加入以下兩個規則
# # 開啟HTTP 80 port # iptables -A INPUT -p tcp --dport 80 -j ACCEPT # # 設定ElasticSearch使用的port 9200-9300 # iptables -A INPUT -p tcp --dport 9200:9300 -j ACCEPT
開始使用
- 用瀏覽器進入 http://<Server Address>/
待續…
- Logstash接收log設定值
- Kibana設定與使用
- Elastersearch進階設定
- and more…
