ELK recopila múltiples registros de contenedores docker (12)

¡Trabajar juntos para crear y crecer juntos! Este es el día 27 de mi participación en el "Nuevo plan diario de Nuggets · Desafío de actualización de agosto", haga clic para ver los detalles del evento

filebeat recopila registros de contenedores

Muchas empresas ahora usan contenedores acoplables para ejecutar servicios. Habrá muchos acopladores en una máquina. Los registros en los contenedores acoplables también deben recopilarse y analizarse. Filebeat también tiene un esquema de recopilación de registros para contenedores acoplables.

Dirección oficial de configuración www.elastic.co/guide/en/be…

1. Implementar ventana acoplable

1.安装docker
[root@docker ~]# wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo
[root@docker ~]# sed -i 's#download.docker.com#mirrors.tuna.tsinghua.edu.cn/docker-ce#' /etc/yum.repos.d/docker-ce.repo
[root@docker ~]# yum -y install docker-ce
[root@docker ~]#  tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://zggyaen3.mirror.aliyuncs.com"]
}
EOF
{
  "registry-mirrors": ["https://zggyaen3.mirror.aliyuncs.com"]
}


2.启动docker
[root@docker ~]# systemctl start docker

3.运行一个nginx容器
[root@docker ~]# docker run -d -p 888:80 nginx

4.查看容器日志路径,这个日志就是容器里面程序的日志
[root@docker ~]# docker inspect compassionate_mayer | grep log
        "LogPath": "/var/lib/docker/containers/7b345b1107fdd302d6b476403bb61eaca19414d42a3c316283d3f490f7380dfb/7b345b1107fdd302d6b476403bb61eaca19414d42a3c316283d3f490f7380dfb-json.log",

复制代码

2. Configure filebeat para recopilar registros de contenedores de una sola ventana acoplable

2.1 Configurar el ritmo de archivo

1.配置filebeat
[root@docker /etc/filebeat]# vim /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: docker
  containers.ids:
    - '7b345b1107fdd302d6b476403bb61eaca19414d42a3c316283d3f490f7380dfb'			#填写容器的id

output.elasticsearch:
  hosts: ["192.168.81.210:9200"]
  indices:
  index: "docker-nginx-%{+yyyy.MM.dd}"
  
setup.template.name: "docker"
setup.template.pattern: "docker-*"
setup.template.enabled: false
setup.template.overwrite: true

2.重启filebeat
[root@docker /etc/filebeat]# systemctl restart filebeat.service
复制代码

2.2 Comprobar si es ha generado un índice

inserte la descripción de la imagen aquí

2.3 El índice en kibana asociado es

Haga clic en Gestión---Crear índiceinserte la descripción de la imagen aquí

2.4 Ver los registros recopilados

Haga clic en Descubrimiento --- Seleccionar índice

Los registros del contenedor docker recopilados esta vez no están tan subdivididos. Aunque este registro también está en formato json, docker los pone en un valor por defecto.

inserte la descripción de la imagen aquí

registro formateado

inserte la descripción de la imagen aquí

3. Configure filebeat para recopilar varios registros de contenedores

3.1 Ejecución de varias ventanas acoplables

[root@docker ~]# docker run -d -p 999:80 nginx
[root@docker ~]# docker run -d -p 888:80 nginx
复制代码

3.2 Configurar el ritmo de archivo

[root@docker ~]# grep -Ev '#|^$' /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: docker
  containers:
    path: "/var/lib/docker/containers"			#docker容器日志的路径
    ids:
      - "*"							#如果只想收集一个容器的日志,就写一个容器的id号,如果想收集所有容器的日志则写*
      
output.elasticsearch:
  hosts: ["192.168.81.210:9200"]
  indices:
  index: "docker-nginx-%{+yyyy.MM.dd}"
  
setup.template.name: "docker"
setup.template.pattern: "docker-*"
setup.template.enabled: false
setup.template.overwrite: true
复制代码

3.3 Generar registro

ab -c 100 -n 5672 http://www.jiangxl.com:999/
ab -c 100 -n 1000 http://www.jiangxl.com:888/

复制代码

3.4 Comprobar si el índice es tiene datos añadidos

ha aumentado

inserte la descripción de la imagen aquí

3.5.kibana índice es asociado

inserte la descripción de la imagen aquí

3.6 Verifique si los registros recopilados provienen de varios contenedores

Ya es un registro de un contenedor diferente

inserte la descripción de la imagen aquí

Supongo que te gusta

Origin juejin.im/post/7136113825773781029
Recomendado
Clasificación