• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >虚拟化 > 详解利用ELK搭建Docker容器化应用日志中心

详解利用ELK搭建Docker容器化应用日志中心

作者:hansonwang99 字体:[增加 减小] 来源:互联网

本文主要包含ELK搭建Docker容器化应用,ELK搭建Docker等服务器相关知识,hansonwang99 希望可以进行参考

概述

应用一旦容器化以后,需要考虑的就是如何采集位于Docker容器中的应用程序的打印日志供运维分析。典型的比如SpringBoot应用的日志 收集。本文即将阐述如何利用ELK日志中心来收集容器化应用程序所产生的日志,并且可以用可视化的方式对日志进行查询与分析,其架构如下图所示:

架构图

镜像准备

镜像准备

  1. ElasticSearch镜像
  2. Logstash镜像
  3. Kibana镜像
  4. Nginx镜像(作为容器化应用来生产日志)

开启Linux系统Rsyslog服务

修改Rsyslog服务配置文件:

vim /etc/rsyslog.conf

开启下面三个参数:

$ModLoad imtcp
$InputTCPServerRun 514

*.* @@localhost:4560

开启3个参数

意图很简单:让Rsyslog加载imtcp模块并监听514端口,然后将Rsyslog中收集的数据转发到本地4560端口!

然后重启Rsyslog服务:

systemctl restart rsyslog

查看rsyslog启动状态:

netstat -tnl

部署ElasticSearch服务

docker run -d -p 9200:9200 \
 -v ~/elasticsearch/data:/usr/share/elasticsearch/data \
 --name elasticsearch elasticsearch

ES启动成功效果

部署Logstash服务

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

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

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

配置中我们让Logstash从本地的Rsyslog服务中取出应用日志数据,然后转发到ElasticSearch数据库中!

配置完成以后,可以通过如下命令来启动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服务

docker run -d -p 5601:5601 \
--link elasticsearch:elasticsearch \
-e ELASTICSEARCH_URL=http://elasticsearch:9200 \
--name kibana kibana

启动nginx容器来生产日志

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应用日志转发到本地syslog服务中,然后由syslog服务将数据转给Logstash进行收集。

至此,日志中心搭建完毕,目前一共四个容器在工作:

实验验证

浏览器打开 localhost:90 来打开Nginx界面,并刷新几次,让后台产生GET请求的日志

打开Kibana可视化界面: localhost:5601

localhost:5601

收集Nginx应用日志

收集Nginx应用日志

查询应用日志

在查询框中输入 program=nginx 可查询出特定日志

查询应用日志

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

您可能感兴趣的文章:

  • Docker容器 日志中文乱码问题解决办法
  • Docker构建ELK Docker集群日志收集系统
  • Docker占满磁盘空间的问题解决办法
  • Docker日志太多导致磁盘占满的处理方法
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 详解利用ELK搭建Docker容器化应用日志中心

相关文章

  • docker容器里安装ssh的具体步骤
  • 深入理解docker的四种网络方式
  • Docker容器与主机间的文件传输方法(复制/上传/下载)
  • Docker教程之Ubuntu 安装 Docker详细介绍
  • 详解OpenStack之服务端口号
  • CentOS 7下YUM 本地仓库的搭建详细步骤
  • Citrix XenServer 6.1 的安装与配置方法
  • virtualbox虚拟机上安装centOS的网络配置详解
  • 如何在Hyper-V虚拟机上安装WSUS服务器技巧
  • docker连接spring boot和mysql容器方法介绍

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • 如何为Go程序创建一个最小的Docker Image详解
    • Docker实践8:Compose,docker实践compose
    • 如何隔离docker容器中的用户的方法
    • docker的高可用配置详解
    • 红帽虚拟化平台帮助农信银高效运营
    • 浅谈Docker 容器数据卷挂载小结
    • 详解在Docker容器内外互相拷贝数据的方法
    • Hyper-V 与 VMware比较哪个好用
    • linux 详解useradd 命令基本用法
    • Linux Docker安装wordpress的方法详解教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有