如何基于Docker快速搭建ELK

這篇文章給大家分享的是有關(guān)如何基于Docker快速搭建ELK的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)擁有一支富有激情的企業(yè)網(wǎng)站制作團(tuán)隊(duì),在互聯(lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)深耕10余年,專業(yè)且經(jīng)驗(yàn)豐富。10余年網(wǎng)站優(yōu)化營銷經(jīng)驗(yàn),我們已為上千家中小企業(yè)提供了網(wǎng)站建設(shè)、成都網(wǎng)站制作解決方案,按需制作網(wǎng)站,設(shè)計(jì)滿意,售后服務(wù)無憂。所有客戶皆提供一年免費(fèi)網(wǎng)站維護(hù)!

基于自建的Docker平臺速搭建一套完整的ELK系統(tǒng),相關(guān)的鏡像直接從Docker Hub上獲取,可以快速實(shí)現(xiàn)日志的采集和分析檢索。

準(zhǔn)備鏡像

  • 獲取ES鏡像:docker pull elasticsearch:latest

  • 獲取kibana鏡像:docker pull kibana:latest

  • 獲取logstash鏡像:docker pull logstash:latest

啟動Elasticsearch

官方鏡像里面ES的配置文件保存在/usr/share/elasticsearch/config,如果有需要可以將該目錄映射到宿主機(jī)上;數(shù)據(jù)文件目錄/usr/share/elasticsearch/data,這里我們把數(shù)據(jù)目錄映射出來;容器默認(rèn)對外提供9200端口,用作API交互。

docker run --name elasticsearch \
-v "$PWD/esdata":/usr/share/elasticsearch/data \
-p 9200:9200 \
-d elasticsearch

容器啟動以后可以調(diào)用一把驗(yàn)證一下:

如何基于Docker快速搭建ELK

啟動Kibana

Kibana作為ES操作的UI,需要跟ES容器通信,所以這里要將ES的容器link一下,對外提供5601端口做頁面交互。

docker run --name kibana \
--link elasticsearch:elasticsearch \
-p 5601:5601 \
-d kibana

容器啟動后用瀏覽器訪問5601端口,可以看到kibana頁面,首次訪問的時候可能會提示沒有建立默認(rèn)索引,這里需要在管理頁面上創(chuàng)建一個默認(rèn)索引。默認(rèn)索引通常叫做logstash-*,如下圖所示創(chuàng)建一個默認(rèn)索引。

如何基于Docker快速搭建ELK

啟動Logstash

Logstash主要作用是收集日志,這個組件有很多插件,可以支持大部分日志集成方式,如tcp、udp、jdbc、文件、隊(duì)列等,他的配置非常簡單,啟動方式也很簡單,這里以nginx的訪問日志為例,我們配置logstash讀取nginx的access.log,然后把日志轉(zhuǎn)發(fā)到Elasticsearch

首先編譯一個logstash配置文件logstash.conf,內(nèi)容如下:

input{
 
   file{
 
      path=>"/tmp/nginx/logs/access.log"
 
   }
 
}output{
 
   stdout{   } #日志輸出到控制臺
 
   
 
   #輸出到es
 
   elasticsearch{
 
      hosts=>"100.100.x.231"
 
   }
 
}

啟動容器,這里我們把nginx的日志放在/tmp/nginx/logs/access.log,為了讓容器能讀到這個日志,需要把日志目錄映射到容器里面。

docker run –it –rm -v /tmp/nginx/logs/access.log:/tmp/nginx/logs/access.log -f /config-dir/logstash.conf

接下來我們可以全流程測試一下日志收集展示的過程。首先在nginx里面造點(diǎn)訪問日志,比如直接curl調(diào)nginx服務(wù)端口,或者直接往access.log里面寫數(shù)據(jù)也行。這時候再logstash容器我們可以看到如下日志輸出:

如何基于Docker快速搭建ELK

再往后,打開Kibana頁面就可以看到實(shí)時寫入的日志數(shù)據(jù)了:

如何基于Docker快速搭建ELK

總結(jié)

Docker容器使ELK搭建變得非常便捷,通過ELK可以快速分析檢索日志,發(fā)現(xiàn)問題,ELK的幾個核心貢獻(xiàn)者成立了一家公司叫Elastic,目前跟我司也有一些合作,在開源的基礎(chǔ)上該公司也發(fā)布了一些商業(yè)產(chǎn)品,名為X-Pack,提供了機(jī)器學(xué)習(xí)、圖算法以及安全技術(shù)上的諸多加強(qiáng),有興趣的同學(xué)可以自行了解。

如何基于Docker快速搭建ELK

感謝各位的閱讀!關(guān)于“如何基于Docker快速搭建ELK”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

網(wǎng)站欄目:如何基于Docker快速搭建ELK
文章出自:http://muchs.cn/article28/ijoijp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器面包屑導(dǎo)航、企業(yè)網(wǎng)站制作、手機(jī)網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司