国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

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

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

魏山林

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

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

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

1 Elk日志分析平臺介紹

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

集中化管理日志后,日志的統(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

設(shè)置 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 命令,顯示如下結(jié)果,說明安裝成功:

# java -version

java version "1.8.0_91"

2)安裝 Logstash

下載并安裝Logstash ,下載allplugins的版本,安裝logstash 只需將它解壓的對應(yīng)目錄即可,例如: /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ù)在命令行中指定配置是很常用的方式,不過如果需要配置更多設(shè)置則需要很長的內(nèi)容。這種情況,我們首先創(chuàng)建一個簡單的配置文件,并且指定logstash使用這個配置文件。例如:在logstash 安裝目錄下創(chuàng)建一個“基本配置”測試文件 logstash-test.conf,文件內(nèi)容如下:

# cat logstash-simple.conf

input { stdin { } }

output {

stdout { codec=> rubydebug }

}

Logstash 使用 input 和 output 定義收集日志時的輸入和輸出的相關(guān)配置,本例中 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服務(wù)

# /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服務(wù)

# /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服務(wù)器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

猜你喜歡
集中化配置文件開源
五毛錢能買多少頭牛
忘記ESXi主機root密碼怎么辦
大家說:開源、人工智能及創(chuàng)新
開源中國開源世界高峰論壇圓桌會議縱論開源與互聯(lián)網(wǎng)+創(chuàng)新2.0
打印機設(shè)置
開源計算機輔助翻譯工具研究
管理抉擇要問的三個問題