记录 Docker 的学习过程 (日志篇)
日志收集
elk
在node3上操作
docker pull sebp/elk:5610
node3# sysctl vm.max_map_count=262144
node3# docker run -p 5601:5601 -p 9200:9200 -p5044:5044 -it --rm --name elk sebp/elk:5610 #开放相应端口
然后打开 http://192.168.56.13:9200/_search?pretty
下面切换到node1
node1# wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.1.1-x86_64.rpm #下载安装filebeat
# rpm -ivh filebeat-6.1.1-x86_64.rpm
# docker run -it -p 80:80 --name ngxin_v2 nginx #运行一台nginx容器
再打开一个会话
node1# vi /etc/filebeat/filebeat.yml #编辑配置文件
修改 24 行为 enabled: true
注释 28 # - /var/log/*.log
在28下新增一行为 - /data/docker/containers/*/*.log
修改 146 行为 hosts: ["192.168.56.13:9200"]
保存退出
node1 # /etc/init.d/filebeat start #启动 filebeat
Starting filebeat (via systemctl): [ OK ]
node1 # /etc/init.d/filebeat status
filebeat.service - filebeat
Loaded: loaded (/usr/lib/systemd/system/filebeat.service; disabled; vendor preset: disabled)
Active: active (running) since Tue 2020-02-25 18:05:39 CST; 6s ago
Docs: https://www.elastic.co/guide/en/beats/filebeat/current/index.html
Main PID: 1765 (filebeat)
Tasks: 7
Memory: 3.9M
CGroup: /system.slice/filebeat.service
└─1765 /usr/share/filebeat/bin/filebeat -c /etc/filebeat/filebeat...
node1# for i in {1..10};do curl 127.0.0.1;done #此时刷新几次127.0.0.1
然后打开 http://192.168.56.13:9200/_search?pretty 刷新几次 直到took的数字有过大于0的状态
然后打开http://192.168.56.13:5601 在kibana中的discover中新增index 值为 filebeat-6.1.1-*,新增貌似刷新不出数据,接下来我们再安装fluentd尝试
切换回node3
node3# mkdir /fluentd_log #新建一个给容器挂在用的目录
node3# docker run -d -p 24224:24224 -p 24224:24224/udp -v /fluentd_log:/fluentd/log fluent/fluentd #-v 挂在本地目录到容器
node3 # netstat -tnlpu #检查24224端口是否已经启动了
下面切换回node1,修改node1的driver
node1# vi /etc/docker/daemon.json #编辑配置文件,在文件最后面增加以下段落
"cluster-advertise": "192.168.56.11:2375",
"log-driver": "fluentd",
"log-opts": {
"fluentd-address":"192.168.56.13:24224",
"tag":"linux-node1.example.com"
}
}
node1# systemctl daemon-reload
node1# systemctl restart docker
重载服务
node1# /etc/init.d/filebeat stop #停掉filebeat
Stopping filebeat (via systemctl): [ OK ]
下面切换到node3上
node3# rpm -ivh filebeat-6.1.1-x86_64.rpm #node3上安装filebeat
node3# vi /etc/filebeat/filebeat.yml
修改 24 行为 enabled: true
修改 28 行为 - /fluentd_log/*.log
保存退出
node3# /etc/init.d/filebeat start #启动进程
Starting filebeat (via systemctl): [ OK ]
node3# /etc/init.d/filebeat status
node3# for i in {1..10};do curl 192.168.56.11;done #此时刷新几次node1
如果步骤提示错误,可以先删除node1上的容器,然后重新建一个就可以了
此时再打开http://192.168.56.13:5601 在kibana中的discover 就可以看到日志了,如果看不到日志
先检查宿主机的时间是否正确
时间间隔选择今天 或者 本周试一下
将 index 之修改为 filebeat-6.1.1-当天或者第二天
如果容器内时间不正确,可以通过下面的方法同步时间
docker cp /usr/share/zoneinfo/Asia rongqiid:/usr/share/zoneinfo/Asia
docker exec rongqiid mkdir /usr/share/zoneinfo -p
docker cp /usr/share/zoneinfo/Asia rongqiid:/usr/share/zoneinfo/Asia
journalctl -u docker.service 查看docker引擎日志
Docker ELK+Filebeat安装与配置
https://www.jianshu.com/p/5df9db5cda8f
Docker ELK+Filebeat安装与配置
https://blog.csdn.net/qq_39284787/article/details/78809538
使用Docker快速部署ELK环境 5.5.1版本
https://blog.csdn.net/gongxsh00/article/details/77001603
yum install lrzsz -y
记录 Docker 的学习过程 (日志篇)的更多相关文章
- 记录 Docker 的学习过程 (网络篇之跨主机互通)
下面从node3上操作node3# docker run -d -p 8500:8500 --name consul progrium/consul -server -bootstrap node3# ...
- 记录 Docker 的学习过程 (网络篇)
打开2个会话,分别运行以下命令 # docker run -it -P --name nginx2 nginx #-P 端口随机映射 再打开一个会话查看 运行中的容器 # docker ps -aCO ...
- 记录 Docker 的学习过程 (安装基础篇)
docker 通过内核来实现 特点是效率高 1. centos7 三台(推荐2c 4g 最低 1c1g)2. 关闭防火墙 selinux3. 做好主机名解析,三台能互相ping通主机名host参考文件 ...
- 记录 Docker 的学习过程 (数据挂载)
docker 存储篇 容器中的存储是分层的, 在容器中,如果我们要创建一个文件,会在文件的最上层(可写层)创建 容器中内置的文件,默认来讲是只读的,只有自己创建的文件才是可写状态 比如说 /etc/p ...
- 记录 Docker 的学习过程 (单机编排)
容器的编排 什么是容器的编排?就是让容器有序的启动并在启动的过程加以控制 docker-compose -f bainpaiwenjian.yul up 如果编排文件为默认名称docker-compo ...
- 记录 Docker 的学习过程 (自建私有仓库)
私有仓库的创建 node1#wget http://harbor.orientsoft.cn/harbor-v1.4.0/harbor-offline-installer-v1.4.0.tgz nod ...
- 记录 Docker 的学习过程 (dockerfile自动制作镜像)
自动制作镜像 通过编写dockerfile来自动创建镜像 #vi Dockerfile #编辑dockerfile文件,一定要以这个名字命名 #cat Dockerfile #导入哪个基础镜像FROM ...
- .NET日志记录之——log4net划重点篇
.NET日志记录之--log4net划重点篇 1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记录日志的功能非常强大.它可以将日志分不同的等级,以不同的格式,输出到不 ...
- docker之容器日志存储位置及把运行日志记录至文件
参考:https://www.cnblogs.com/YatHo/p/7866029.html docker启动后日志会在以下位置 /var/lib/docker/containers/容器ID/容器 ...
随机推荐
- Codeforces Round447 D树上前缀和
已知完全二叉树和每条边的权值,q次询问,每次给出sta起点和H. w=(H-点到sta的权值),求w>0的所有w的加和. 这题用树上前缀和来写,e[i]记录子树上的点到点i的距离,sum[i][ ...
- 浅析 .NET 中 AsyncLocal 的实现原理
目录 前言 1.线程本地存储 2.AsyncLocal 实现 2.1.主体 AsyncLocal<T> 2.2.AsyncLocal<T> 在 ExecutionContext ...
- redis集群&elasticSearch的认识
elasticSearch_day01 1. Redis集群 1.1 什么叫集群 多台服务器集中在一起,实现同一业务 1.2 为什么集群 一台服务器不够,需要多台服务器支持,解决高并发,集群往往伴随分 ...
- PostgreSQL内核学习笔记十一(索引)
Index Scan涉及到两部分的内容Heap Only Tuple和index-only-scan. 什么是Heap Only Tuple(HOT)? 例如:Update a Row Without ...
- pytest文档32-allure描述用例详细讲解
前言 pytest+allure是最完美的结合了,关于allure的使用,本篇做一个总结. allure报告可以很多详细的信息描述测试用例,包括epic.feature.story.title.iss ...
- Go并发模式代码示例
演讲稿:Go Concurrency Patterns Youtube视频 作者:Rob Pike 练习题目:谷歌搜索:一个虚拟框架 谷歌搜索1.0 PPT从43页开始:https://talks.g ...
- day 8 函数编程_byets
定义 bytes类型是指一堆字节的集合,在python中以b开头的字符串都是bytes类型 b'\xe5\xb0\x8f\xe7\x8c\xbf\xe5\x9c\x88' #b开头的都代表是bytes ...
- qt creator源码全方面分析(2-2)
目录 Common Extension Tasks Common Extension Tasks 本节总结了可用于将UI组件添加到Qt Creator的API函数. 任务 详细 API 添加菜单或菜单 ...
- 剑指offer-面试题43-1~n整数中1出现的次数-归纳法
/* 题目: 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数? 为此他特别数了一下1~13中包含1的数字有1.10.11.12.13因此共出现6次,但是对于后面问题他就没 ...
- MariaDB(MySQL)创建、删除、选择及数据类型使用详解
一.MariaDB简介(MySQL简介略过) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行 ...