您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“Docker中怎么部署ELK和Filebeat日志中心”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Docker中怎么部署ELK和Filebeat日志中心”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。
ELK 不是一款軟件,而是 Elasticsearch、Logstash 和 Kibana 三種軟件產(chǎn)品的首字母縮寫。這三者都是開源軟件,通常配合使用,而且又先后歸于 Elastic.co 公司名下,所以被簡(jiǎn)稱為 ELK Stack。根據(jù) Google Trend 的信息顯示,ELK Stack 已經(jīng)成為目前最流行的集中式日志解決方案。
1.系統(tǒng):centos 7
2.docker 1.12.1
ElasticSearch
Elasticsearch 是一個(gè)實(shí)時(shí)的分布式搜索和分析引擎,它可以用于全文搜索,結(jié)構(gòu)化搜索以及分析。它是一個(gè)建立在全文搜索引擎 Apache Lucene 基礎(chǔ)上的搜索引擎,使用 Java 語言編寫。
Logstash
Logstash 是一個(gè)具有實(shí)時(shí)渠道能力的數(shù)據(jù)收集引擎,主要用于日志的收集與解析,并將其存入 ElasticSearch中。
Kibana
Kibana 是一款基于 Apache 開源協(xié)議,使用 JavaScript 語言編寫,為 Elasticsearch 提供分析和可視化的 Web 平臺(tái)。它可以在 Elasticsearch 的索引中查找,交互數(shù)據(jù),并生成各種維度的表圖。
Filebeat
引入Filebeat作為日志搜集器,主要是為了解決Logstash開銷大的問題。相比Logstash,F(xiàn)ilebeat 所占系統(tǒng)的 CPU 和內(nèi)存幾乎可以忽略不計(jì)。
不引入Filebeat
引入Filebeat
啟動(dòng)ElasticSearch
docker run -d -p 9200:9200 --name elasticsearch elasticsearch
啟動(dòng)Logstash
# 1. 新建配置文件logstash.confinput { beats { port => 5044 } } output { stdout { codec => rubydebug } elasticsearch {#填寫實(shí)際情況elasticsearch的訪問IP,因?yàn)槭强缛萜鏖g的訪問,使用內(nèi)網(wǎng)、公網(wǎng)IP,不要填寫127.0.0.1|localhosthosts => ["{$ELASTIC_IP}:9200"] } }# 2.啟動(dòng)容器,暴露并映射端口,掛載配置文件docker run -d --expose 5044 -p 5044:5044 --name logstash -v "$PWD":/config-dir logstash -f /config-dir/logstash.conf
啟動(dòng)Filebeat
下載地址:https://www.elastic.co/downloads/beats/filebeat
# 1.下載Filebeat壓縮包wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.2.2-linux-x86_64.tar.gz# 2.解壓文件tar -xvf filebeat-5.2.2-linux-x86_64.tar.gz# 3.新建配置文件filebeat.ymlfilebeat: prospectors: - paths: - /tmp/test.log #日志文件地址input_type: log #從文件中讀取tail_files: true #以文件末尾開始讀取數(shù)據(jù)output: logstash: hosts: ["{$LOGSTASH_IP}:5044"] #填寫logstash的訪問IP# 4.運(yùn)行filebeat./filebeat-5.2.2-linux-x86_64/filebeat -e -c filebeat.yml
啟動(dòng)Kibana
docker run -d --name kibana -e ELASTICSEARCH_URL=http://{$ELASTIC_IP}:9200 -p 5601:5601 kibana
模擬日志數(shù)據(jù)
# 1.創(chuàng)建日志文件touch /tmp/test.log# 2.向日志文件中寫入一條nginx訪問日志echo '127.0.0.1 - - [13/Mar/2017:22:57:14 +0800] "GET / HTTP/1.1" 200 3700 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36" "-"' >> /tmp/test.log
訪問 http://{$KIBANA_IP}:5601
讀到這里,這篇“Docker中怎么部署ELK和Filebeat日志中心”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。