簡記ELK環境搭建

Elasticsearch+Logstash+Kiabana

三個框架組合成分佈式日誌收集框架,簡稱ELK

Elasticsearch是一個高度可擴展的開源全文本搜索和分析引擎。它使您可以快速,近乎實時地存儲,搜索和分析大量數據。
它通常用作支持具有複雜搜索功能和要求的應用程序的基礎引擎/技術。

Kibana是一個開源的分析和可視化平臺,設計用於和Elasticsearch一起工作。

Logstash是一個完全開源的工具,它可以對你的日誌進行收集、過濾、分析,支持大量的數據獲取方法,並將其存儲供以後使用(如搜索)

一、Linux環境安裝Elasticsearch

首先要安裝JDK環境變量


export JAVA_HOME=/usr/local/jdk1.8.0_181

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar


source /etc/profile

1.下載elasticsearch安裝包

中文官網:

https://www.elastic.co/cn/

ELK下載:

https://www.elastic.co/downloads/elasticsearch

https://www.elastic.co/cn/downloads/kibana

https://www.elastic.co/cn/downloads/logstash

 

百度網盤:https://pan.baidu.com/s/164LDseqry93x7FSGz2qepw (內含ELK7.2版本三個包)
提取碼:eber

注意:linux安裝內存建議1g內存以上

2.上傳elasticsearch安裝包

3.解壓elasticsearch

tar -zxvf elasticsearch-6.4.3.tar.gz

4.修改elasticsearch.yml

network.host: 172.0.1.125
http.port: 9200

5.啓動elasticsearch

cd /data/elasticsearch/elasticsearch-6.4.3/bin

./elasticsearch

繼續報錯

can not run elasticsearch as root

解決方案:

因爲安全問題elasticsearch 不讓用root用戶直接運行,所以要創建新用戶

//切換用戶

su esuser 

./elasticsearch 繼續報錯

bootstrap checks failed max virtual memory areas vm.max_map_count [65530] is

解決方案:

vi /etc/sysctl.conf

添加:

vm.max_map_count=655360  

sysctl -p

 

./elasticsearch 繼續報錯:

max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

解決方案:

vi /etc/security/limits.conf

* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096

上述都要重啓服務器

6.關閉防火牆

systemctl stop firewalld.service

7.訪問elasticsearch

http://172.0.1.125:9200

8.構建Elasticsearch啓動腳本 start_es.sh。

#!/bin/bash

export ES_HOME=/data/elasticsearch/elasticsearch-6.4.3/ 

su elastic -c "sh ${ES_HOME}/bin/elasticsearch -d -p ${ES_HOME}/pid"

export的執行僅僅適用於當前登陸操作,也就是說當你關閉了當前窗口,再次登錄時,這個變量又回到了原來的值,需要再次執行些命令進行設置。

參數說明:

  • su:登錄用戶。
  • elastic:部署Elasticsearch用戶,避免root用戶而無法啓動。
  • c:c參數後跟具體命令。
  • d:Elasticsearch作爲守護線程後臺啓動。
  • p:指定線程ID文件,需要新建。

9.構建Elasticsearch停止腳本 stop_es.sh。

#!/bin/bash

export ES_HOME=/data/elasticsearch/elasticsearch-6.4.3/

kill `cat ${ES_HOME}/pid`

二、Linux環境安裝Kibana

1.下載並解壓(見上述鏈接)

tar  -zxvf kibana-6.4.3-linux-x86_64.tar.gz

2.配置

vim config/kibana.yml

# 將默認配置改成如下:

server.port: 5601

server.host: "172.0.1.125"

elasticsearch.url: "http:// 172.0.1.125:9200"

3.啓動Kibana

./bin/kibana

4.訪問

http://172.0.1.125:5601/app/kibana

5.停止kibana

ps -ef|grep kibana

上述命令找不到kibana進程的.可以使用

ps -ef|grep node

kill -9 xx

6.kibana6.6版本以後支持i18國際化(即可漢化)

 

三、Linux環境安裝Logstash

1、下載並上傳logstash安裝包(見上述鏈接)

2、解壓tar –zxvf  logstash-6.4.3.tar.gz

3、config目錄下放入logstash_hhj.conf 讀入並且讀出日誌信息

logstash_hhj.conf:

input {
    # 從文件讀取日誌信息 輸送到控制檯
    file {
        path => "/data/business-equipment-manager/nohup.out"
        codec => "json" ## 以JSON格式讀取日誌
        type => "elasticsearch"
        start_position => "beginning"
    }
	
}

# filter {
#
# }

output {
    # 標準輸出 
    # stdout {}
    # 輸出進行格式化,採用Ruby庫來解析日誌   
     stdout { codec => rubydebug }
     elasticsearch {
        hosts => ["172.0.1.125:9200"]
        index => "es-%{+YYYY.MM.dd}"
    }
}

4、啓動./logstash -f ../config/logstash_hhj.conf
5、查看實時日誌

 

(後臺啓動ELK,需要可使用./xxx -d 或者使用nohup啓動.其中一種不行,可試試另一種,二者選一即可)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章