成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

利用ELK搭建Docker容器化應(yīng)用日志中心

周?chē)?guó)輝 / 984人閱讀

摘要:概述應(yīng)用一旦容器化以后,需要考慮的就是如何采集位于容器中的應(yīng)用程序的打印日志供運(yùn)維分析。


概述

應(yīng)用一旦容器化以后,需要考慮的就是如何采集位于Docker容器中的應(yīng)用程序的打印日志供運(yùn)維分析。典型的比如 SpringBoot應(yīng)用的日志 收集。本文即將闡述如何利用ELK日志中心來(lái)收集容器化應(yīng)用程序所產(chǎn)生的日志,并且可以用可視化的方式對(duì)日志進(jìn)行查詢與分析,其架構(gòu)如下圖所示:

注: 本文首發(fā)于 My 公眾號(hào) CodeSheep ,可 長(zhǎng)按掃描 下面的 小心心 來(lái)訂閱 ↓ ↓ ↓


鏡像準(zhǔn)備

ElasticSearch鏡像

Logstash鏡像

Kibana鏡像

Nginx鏡像(作為容器化應(yīng)用來(lái)生產(chǎn)日志)


開(kāi)啟Linux系統(tǒng)Rsyslog服務(wù)

修改Rsyslog服務(wù)配置文件:

vim /etc/rsyslog.conf

開(kāi)啟下面三個(gè)參數(shù):

$ModLoad imtcp
$InputTCPServerRun 514

*.* @@localhost:4560

意圖很簡(jiǎn)單:讓Rsyslog加載imtcp模塊并監(jiān)聽(tīng)514端口,然后將Rsyslog中收集的數(shù)據(jù)轉(zhuǎn)發(fā)到本地4560端口!

然后重啟Rsyslog服務(wù):

systemctl restart rsyslog

查看rsyslog啟動(dòng)狀態(tài):

netstat -tnl


部署ElasticSearch服務(wù)
docker run -d  -p 9200:9200 
 -v ~/elasticsearch/data:/usr/share/elasticsearch/data 
 --name elasticsearch elasticsearch


部署Logstash服務(wù)

添加 ~/logstash/logstash.conf 配置文件如下:

input {
  syslog {
    type => "rsyslog"
    port => 4560
  }
}

output {
  elasticsearch {
    hosts => [ "elasticsearch:9200" ]
  }
}

配置中我們讓Logstash從本地的Rsyslog服務(wù)中取出應(yīng)用日志數(shù)據(jù),然后轉(zhuǎn)發(fā)到ElasticSearch數(shù)據(jù)庫(kù)中!

配置完成以后,可以通過(guò)如下命令來(lái)啟動(dòng)Logstash容器:

docker run -d -p 4560:4560 
-v ~/logstash/logstash.conf:/etc/logstash.conf 
--link elasticsearch:elasticsearch 
--name logstash logstash 
logstash -f /etc/logstash.conf


部署Kibana服務(wù)
docker run -d -p 5601:5601 
--link elasticsearch:elasticsearch 
-e ELASTICSEARCH_URL=http://elasticsearch:9200 
--name kibana kibana


啟動(dòng)nginx容器來(lái)生產(chǎn)日志
docker run -d -p 90:80 --log-driver syslog --log-opt 
syslog-address=tcp://localhost:514 
--log-opt tag="nginx" --name nginx nginx

很明顯Docker容器中的Nginx應(yīng)用日志轉(zhuǎn)發(fā)到本地syslog服務(wù)中,然后由syslog服務(wù)將數(shù)據(jù)轉(zhuǎn)給Logstash進(jìn)行收集。

至此,日志中心搭建完畢,目前一共四個(gè)容器在工作:

實(shí)驗(yàn)驗(yàn)證

瀏覽器打開(kāi)localhost:90來(lái)打開(kāi)Nginx界面,并刷新幾次,讓后臺(tái)產(chǎn)生GET請(qǐng)求的日志

打開(kāi)Kibana可視化界面:localhost:5601

收集Nginx應(yīng)用日志

查詢應(yīng)用日志

在查詢框中輸入program=nginx可查詢出特定日志


后記

作者更多的原創(chuàng)文章在此,歡迎觀賞

My Personal Blog

作者更多的SpringBt實(shí)踐文章在此:

Spring Boot應(yīng)用監(jiān)控實(shí)戰(zhàn)

SpringBoot應(yīng)用部署于外置Tomcat容器

ElasticSearch搜索引擎在SpringBt中的實(shí)踐

初探Kotlin+SpringBoot聯(lián)合編程

Spring Boot日志框架實(shí)踐

SpringBoot優(yōu)雅編碼之:Lombok加持


如果有興趣,也可以抽點(diǎn)時(shí)間看看作者一些關(guān)于容器化、微服務(wù)化方面的文章:

利用K8S技術(shù)棧打造個(gè)人私有云 連載文章

從一份配置清單詳解Nginx服務(wù)器配置

Docker容器可視化監(jiān)控中心搭建

利用ELK搭建Docker容器化應(yīng)用日志中心

RPC框架實(shí)踐之:Apache Thrift

RPC框架實(shí)踐之:Google gRPC

微服務(wù)調(diào)用鏈追蹤中心搭建

Docker容器跨主機(jī)通信

Docker Swarm集群初探

高效編寫(xiě)Dockerfile的幾條準(zhǔn)則



文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/27246.html

相關(guān)文章

  • 利用TICK搭建Docker容器可視監(jiān)控中心

    摘要:在我的前文容器可視化監(jiān)控中心搭建之中我們就實(shí)踐過(guò)容器的可視化監(jiān)控,在那篇文章中我們是使用了技術(shù)棧來(lái)完成的。 showImg(https://segmentfault.com/img/remote/1460000015484084); 概述 性能監(jiān)控是容器服務(wù)必不可少的基礎(chǔ)設(shè)施,容器化應(yīng)用運(yùn)行于宿主機(jī)上,我們需要知道該容器的運(yùn)行情況,包括 CPU使用率、內(nèi)存占用、網(wǎng)絡(luò)狀況以及磁盤(pán)空間等...

    LiuZh 評(píng)論0 收藏0
  • Docker容器可視監(jiān)控中心搭建

    showImg(https://segmentfault.com/img/remote/1460000014421849); 概述 一個(gè)宿主機(jī)上可以運(yùn)行多個(gè)容器化應(yīng)用,容器化應(yīng)用運(yùn)行于宿主機(jī)上,我們需要知道該容器的運(yùn)行情況,包括 CPU使用率、內(nèi)存占用、網(wǎng)絡(luò)狀況以及磁盤(pán)空間等等一系列信息,而且這些信息隨時(shí)間變化,我們稱(chēng)其為時(shí)序數(shù)據(jù),本文將實(shí)操 如何搭建一個(gè)可視化的監(jiān)控中心 來(lái)收集這些承載著具體應(yīng)...

    yunhao 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

周?chē)?guó)輝

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<