Docker部署ELK日志系统
Docker部署ELK日志系统
一、Docker安装Elasticsearch
官网镜像地址:https://hub.docker.com/_/elasticsearch
1.1 下载镜像 查看镜像
sudo docker pull elasticsearch:7.6.1
sudo docker images
1.2 运行 elasticsearch
sudo docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.1
1.3 查看容器状态
sudo docker ps
1.4 检测 elasticsearch 是否启动成功
curl 127.0.0.1:9200
二、Docker安装Kibana
2.1 下载镜像 查看镜像
sudo docker pull kibana:7.6.1
sudo docker images
2.1 运行 Kibana
sudo docker run -d --name kibana -p 5601:5601 kibana:7.6.1
2.3 查看容器启动状态
sudo docker ps
2.4查看es运行ip
sudo docker inspect --format '{{ .NetworkSettings.IPAddress }}' 容器id
2.5 进入容器,修改配置文件
sudo docker exec -it 0d3d95663d9a(容器id) /bin/bash
cd config/
vi kibana.yml
2.6修改es地址,默认localhost
# Default Kibana configuration for docker target
server.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://{ip}:{port}" ]
xpack.monitoring.ui.container.elasticsearch.enabled: true
2.7重启kibana容器
sudo docker restart 69989a6efe8a(容器id)
三、Docker安装Logstash
3.1 下载镜像 查看镜像
sudo docker pull logstash:7.6.1
sudo docker images
3.2创建logstash 目录,用来存放所有配置
mkdir /home/newline/logstash
3.3创建logstash.yml配置文件,内容如下:
path.config: /usr/share/logstash/conf.d/*.conf
path.logs: /var/log/logstash
3.4创建conf.d目录并创建logstash.conf配置文件
mkdir /home/newline/logstash/conf.d
cd /home/newline/logstash/conf.d
touch logstash.conf
3.5启动 Logstash,替换配置文件
docker run -it -d -p 5044:5044 --name logstash -v /home/newline/logstash/logstash.yml:/usr/share/logstash/config/logstash.yml -v /home/newline/logstash/conf.d/:/usr/share/logstash/conf.d/ logstash:7.6.1
3.6查看容器运行状态
sudo docker ps
3.7查看日志
sudo docker logs -f logstash
四、Docker安装Filebeat
4.1 下载镜像,查看镜像
sudo docker pull elastic/filebeat:7.6.1
sudo docker images
4.2临时启动
sudo docker run -d --name=filebeat elastic/filebeat:7.6.1
4.3拷贝数据文件
sudo docker cp filebeat:/usr/share/filebeat /home/newline/filebeat
chmod 777 -R /home/newline/filebeat
chmod go-w /home/newline/filebeat/filebeat.yml
4.4以新的方式启动
#先删除临时启动的
sudo docker rm -f filebeat
#启动filebeat
sudo docker run -d \
--name=filebeat \
--restart=always \
-v /home/newline/filebeat:/usr/share/filebeat \
-v /home/ucspace/run/:/home/ucspace/run/ \
elastic/filebeat:7.6.1
4.5查看日志是否有错误
sudo docker logs -f filebeat