• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于ELK的日志分析系統(tǒng)

      2017-04-08 19:34:57魏山林
      電腦知識與技術 2017年5期
      關鍵詞:集中化配置文件開源

      魏山林

      摘要:日志主要包括系統(tǒng)日志、應用程序日志和安全日志。系統(tǒng)運維和開發(fā)人員可以通過日志了解服務器軟硬件信息、檢查配置過程中的錯誤及錯誤發(fā)生的原因。經(jīng)常分析日志可以了解服務器的負荷,性能安全性,從而及時采取措施糾正錯誤。

      關鍵詞:日志;系統(tǒng)運維

      中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2017)05-0069-02

      1 Elk日志分析平臺介紹

      通常,日志被分散的儲存不同的設備上。如果你管理數(shù)十上百臺服務器,你還在使用依次登錄每臺機器的傳統(tǒng)方法查閱日志。這樣是不是感覺很繁瑣和效率低下。當務之急我們使用集中化的日志管理,例如:開源的syslog ,將所有服務器上的日志收集匯總。

      集中化管理日志后,日志的統(tǒng)計和檢索又成為一件比較麻煩的事情,一般我們使用 grep 、 awk 和 wc 等Linux 命令能實現(xiàn)檢索和統(tǒng)計,但是對于要求更高的查詢、排序和統(tǒng)計等要求和龐大的機器數(shù)量依然使用這樣的方法難免有點力不從心。

      2 開源實時日志分析ELK平臺部署流程

      1)安裝Logstash 依賴包 JDK

      Logstash 的運行依賴于Java 運行環(huán)境, Logstash 1.5 以上版本不低于 java 7 推薦使用最新版本的Java 。

      下載RPM包安裝jdk

      #rpm -ivh jdk-8u91-linux-x64.rpm

      設置 JDK 的環(huán)境變量,如下:

      # tail -5 /etc/profile

      export JAVA_HOME=/usr/java/jdk1.8.0_91

      export PATH=$PATH:$JAVA_HOME/bin

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

      在 Shell 提示符中執(zhí)行java version 命令,顯示如下結果,說明安裝成功:

      # java -version

      java version "1.8.0_91"

      2)安裝 Logstash

      下載并安裝Logstash ,下載allplugins的版本,安裝logstash 只需將它解壓的對應目錄即可,例如: /usr/local 下:

      # tar zxf logstash-all-plugins-2.3.1.tar.gz -C /usr/local/

      #cd /usr/local

      #mv logstash-2.3.1 logstash

      安裝完成后運行如下命令:

      # /usr/local/logstash/bin/logstash -e 'input { stdin { } } output { stdout {} }'

      Settings: Default pipeline workers: 8

      Pipeline main started

      ysten

      2016-05-20T01:53:36.857Z localhost ysten

      使用-e參數(shù)在命令行中指定配置是很常用的方式,不過如果需要配置更多設置則需要很長的內容。這種情況,我們首先創(chuàng)建一個簡單的配置文件,并且指定logstash使用這個配置文件。例如:在logstash 安裝目錄下創(chuàng)建一個“基本配置”測試文件 logstash-test.conf,文件內容如下:

      # cat logstash-simple.conf

      input { stdin { } }

      output {

      stdout { codec=> rubydebug }

      }

      Logstash 使用 input 和 output 定義收集日志時的輸入和輸出的相關配置,本例中 input 定義了一個叫"stdin"的 input , output 定義一個叫"stdout"的 output 。無論我們輸入什么字符,Logstash 都會按照某種格式來返回我們輸入的字符,其中 output 被定義為"stdout"并使用了 codec 參數(shù)來指定logstash 輸出格式。

      使用logstash的-f參數(shù)來讀取配置文件,執(zhí)行如下開始進行測試:

      # echo "`date` hello World"

      Fri May 20 09:58:13 CST 2016 hello World

      # /usr/local/logstash/bin/logstash agent -f logstash-simple.conf

      Settings: Default pipeline workers: 8

      Pipeline main started

      Fri May 20 09:58:13 CST 2016 hello World

      {

      "message" =>"Fri May 20 09:58:13 CST 2016 hello World",

      "@version" =>"1",

      "@timestamp" =>"2016-05-20T01:58:23.138Z",

      "host" =>"localhost"

      }

      3)安裝 Elasticsearch

      下載 Elasticsearch 的最新版RPM包并安裝。

      #rpm -ivh elasticsearch-2.3.2.rpm

      修改 Elasticsearch配置

      #vim /etc/elasticsearch/elasticsearch.yml

      啟動elasticsearch服務

      # /etc/init.d/elasticsearch start

      確認 elasticsearch 的 9200 端口已監(jiān)聽,說明 elasticsearch 已成功運行

      # netstat -anp |grep :9200

      tcp 0 0 ::ffff:192.168.1.111:9200 :::* LISTEN 12440/java

      訪問http://192.168.1.111:9200/

      Elasticsearch 安裝完成。

      4)安裝 Kibana

      下載 kibana 的最新版RPM包并安裝。

      # rpm -ivhkibana-4.5.0-1.x86_64.rpm

      修改 kibana配置

      # vim /opt/kibana/config/kibana.yml

      啟動kibana服務

      # /etc/init.d/kibana start

      使用 http://192.168.1.111:5601訪問 Kibana,全綠就說明安裝成功。

      5)安裝Redis

      下載最新版Redis

      # tar -zxvf redis-3.2.0.tar.gz -C /usr/local

      # cd /usr/local

      # mv redis-3.2.0 redis

      安裝redis

      # cd /usr/local/redis

      # make

      # make install

      使用redis自帶的腳本配置redis

      啟動redis

      # /usr/local/bin/redis-server

      6)集成測試-搜集分析nginx日志

      Logstash

      創(chuàng)建input output配置文件

      #cat sp.conf #采集傳輸nginx日志到redis

      input {

      file {

      type =>"nginx_access"

      path => ["/nginxlogs/tvlivemedia.log"]

      }

      }

      output {

      redis {

      host =>“l(fā)ocalhost"#若不是本地redis則改成redis服務器ip

      data_type =>"list"

      key =>"logstash:redis"

      }

      }

      #cat index.conf#從redis發(fā)送日志到Elasticsearch

      input {

      redis {

      host =>"localhost"

      data_type =>"list"

      key =>"logstash:redis"

      type =>"redis-input"

      }

      }

      output {

      elasticsearch {

      hosts =>"192.168.1.111"

      index =>"access-%{+YYYY.MM.dd}"

      }

      }

      啟動采集進程

      #/usr/local/logstash/bin/logstash agent -f sp.conf &

      Settings: Default pipeline workers: 8

      Pipeline main started

      Elasticsearch

      訪問http://192.168.1.111:9200/_search?pretty=true來查看index-pattern

      已經(jīng)可以看到nginx日志進入了Elasticsearch并建立索引access-2016.05.19

      Kibana

      打開Kibana

      http://192.168.1.111:5601/app/kibana#/settings

      猜你喜歡
      集中化配置文件開源
      財務共享中心促進資金管理集中化與效率提升的策略
      提示用戶配置文件錯誤 這樣解決
      搭建簡單的Kubernetes集群
      互不干涉混用Chromium Edge
      五毛錢能買多少頭牛
      忘記ESXi主機root密碼怎么辦
      商貿流通業(yè)對我國產(chǎn)業(yè)結構合理化與集中化的影響
      內蒙古移動故障管理系統(tǒng)運行成效分析
      大家說:開源、人工智能及創(chuàng)新
      開源中國開源世界高峰論壇圓桌會議縱論開源與互聯(lián)網(wǎng)+創(chuàng)新2.0
      鸡泽县| 斗六市| 淳安县| 丰台区| 临海市| 维西| 穆棱市| 金昌市| 漳平市| 吉安市| 开远市| 安塞县| 琼中| 新竹市| 满城县| 临沭县| 五华县| 兴业县| 冕宁县| 政和县| 砀山县| 孝感市| 永胜县| 张家港市| 雅安市| 梁河县| 乌鲁木齐县| 宜川县| 大英县| 永城市| 华安县| 汕头市| 无锡市| 调兵山市| 南开区| 迭部县| 昭平县| 禹州市| 轮台县| 洛隆县| 桦南县|