溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

日志分析ELK平臺部署

發布時間:2020-08-02 18:00:10 來源:網絡 閱讀:1387 作者:feng945869004 欄目:編程語言

工作原理如下如所示:


日志分析ELK平臺部署

部署流程:


1、安裝logstash的JDK環境:

# tar zvxf jdk-8u73-linux-x64.tar.gz
# mv jdk-8u73-linux-x64 /usr/local/java
# vim /etc/profile
export JAVA_HOME=/usr/local/java
CLASSPATH=/usr/local/java/lib/dt.jar/usr/local/java/lib/tools.jar
PATH=/usr/local/java/bin:$PATH
export PATH JAVA_HOME CLASSPATH

# source /etc/profile

# java -version
java version "1.8.0_73"
Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)

出來java的版本號,JDK安裝成功;


2、安裝 logstash

下載并安裝 Logstash ,本次安裝 logstash 到/usr/local (安裝路徑自己定義);

# wget 
# tar zvxf  logstash-1.5.2.tar.gz -C /usr/local/

安裝完成后執行命令:

# /usr/local/logstash-1.5.2/bin/logstash -e 'input { stdin { } } output { stdout {} }'
Logstash startup completed
hello ELK
2016-09-29T09:28:57.992Z web10.gz.com hello ELK
-e :指定logstash的配置信息,可以用于快速測試;
-f :指定logstash的配置文件;可以用于生產環境;


在 logstash 安裝目錄下創建一個測試文件 logstash-test.conf, 文件內容如下:

# vim logstash-simple.conf
input { stdin { } }
output {
   stdout { codec=> rubydebug }
}
# echo "`date`  hello ELK"
Thu Sep 29 17:33:23 CST 2016  hello ELK
# /usr/local/logstash-1.5.2/bin/logstash agent -f logstash-simple.conf
Logstash startup completed
Thu Sep 29 17:33:23 CST 2016  hello ELK
{
       "message" => "Thu Sep 29 17:33:23 CST 2016  hello ELK",
      "@version" => "1",
    "@timestamp" => "2016-09-29T09:33:57.711Z",
          "host" => "web10.gz.com"
}

安裝supervisor,管理logstash:
#yum install -y install supervisor --enablerepo=epel
#vim /etc/supervisord.conf
添加內容

[program:elkpro_1]
environment=LS_HEAP_SIZE=5000m
directory=/usr/local/logstash-1.5.2     #logstash安裝目錄
command=/usr/local/logstash-1.5.2/bin/logstash -f /usr/local/logstash-1.5.2/logstash-simple.conf -w 10 -l /var/log/logstash/logstash-simple.log  #logstash執行的命令
pro1.conf   #logstash指定運行的配置文件
/var/log/logstash/pro1.log   #指定logstash日志存放位置;

開啟關閉supervisord
#service supervisord stop
#service supervisord start

開機啟動
#chkconfig supervisord on

開啟關閉logstash
#supervisorctl start elkpro_1
#supervisorctl stop elkpro_1

3、安裝 Elasticsearch

下載 Elasticsearch 后,解壓到/usr/local/;

# wget 
# tar  zvxf elasticsearch-1.6.0.tar.gz -C /usr/local/

啟動 Elasticsearch

# /usr/local/elasticsearch-1.6.0/bin/elasticsearch

后臺運行 elasticsearch:

# nohup /usr/local/elasticsearch-1.6.0/bin/elasticsearch >nohup &
# ps aux|grep logstash
root     21154  1.6  5.0 3451732 196856 pts/0  Sl+  17:33   0:10 /usr/local/java/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Xmx500m -Xss2048k -Djffi.boot.library.path=/usr/local/logstash-1.5.2/vendor/jruby/lib/jni -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Xbootclasspath/a:/usr/local/logstash-1.5.2/vendor/jruby/lib/jruby.jar -classpath :/usr/local/java/lib/dt.jar/usr/local/java/lib/tools.jar -Djruby.home=/usr/local/logstash-1.5.2/vendor/jruby -Djruby.lib=/usr/local/logstash-1.5.2/vendor/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main --1.9 /usr/local/logstash-1.5.2/lib/bootstrap/environment.rb logstash/runner.rb agent -f logstash-simple.conf
elasticsearch官方給的啟動腳本:

https://codeload.github.com/elastic/elasticsearch-servicewrapper/zip/master

上傳到服務器上
#unzip elasticsearch-servicewrapper-master.zip
#mv elasticsearch-servicewrapper-master/service/ /usr/local/elasticsearch/bin/
#cd /usr/local/elasticsearch/bin/service
#./elasticsearch install (在init.d下自動創建服務腳本)
#/etc/init.d/elasticsearch restart

#curl -XGET 'http://elasticsearch_IP:9200/_count?pretty' -d '   #IP為 elasticsearch安裝的服務器IP
> {
>      "query":{
>         "match_all":{}
>     }
>  }
> '

返回值:
{
  "count" : 710,
  "_shards" : {
    "total" : 6,
    "successful" : 6,
    "failed" : 0
}

在logstash安裝目錄下,創建測試文件logstash-es-simple.conf,查看結果顯示是否輸出到elastisearch中。

# vim logstash-es-simple.conf
logstash-es-simple.confinput { stdin { } }
output {
   elasticsearch {host => "localhost" }
   stdout { codec=> rubydebug }
}

執行:
# /usr/local/logstash-1.5.2/bin/logstash agent -f logstash-es-simple.conf
 ...啟動輸出...
 Logstash startup completed
 hello ELK
{
       "message" => "hello ELK",
      "@version" => "1",
    "@timestamp" => "2016-09-29T09:52:21.426Z",
          "host" => "web10.gz.com"
}

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

  # curl '
  {
  "took" : 1,
  "timed_out" : false,
  "_shards" : {
    "total" : 6,
    "successful" : 6,
    "failed" : 0
  }, 
  .....

現在已成功可以使用 Elasticsearch 和 Logstash 來收集日志數據了。


4、安裝 elasticsearch 插件


在你安裝 Elasticsearch 的目錄中執行以下命令;

# cd /usr/local/elasticsearch-1.6.0/
# ./bin/plugin -install lmenezes/elasticsearch-kopf

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

在瀏覽器訪問 http://192.168.1.114:9200/_plugin/kopf 瀏覽保存在 Elasticsearch 中的數據,如圖:

日志分析ELK平臺部署


5、安裝 Kibana

下載 kibana 后,解壓到/usr/local/下

# wget 
# tar zvxf   kibana-4.1.1-linux-x64.tar.gz

啟動 kibana
# /usr/local/kibana-4.1.1-linux-x64/bin/kibana

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


看到如下界面說明索引創建完成。

日志分析ELK平臺部署

點擊“ Discover ”,可以搜索和瀏覽 Elasticsearch 中的數據;

到此, ELK 平臺部署已完成。






向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女