docker搭建简单elk日志系统3(kibana)

1.创建kibana容器并启动

docker run -it \
-p 5601:5601 \
--name kibana  \
--restart=always \
--log-driver \
json-file \
--log-opt max-size=100m \
--log-opt max-file=2 \
kibana:8.3.3

在这里插入图片描述
2.另开一个窗口登录服务器
执行

docker cp kibana:/usr/share/kibana/config /home/mfw/elk/kibana/        
docker cp kibana:/usr/share/kibana/data /home/mfw/elk/kibana/        
docker cp kibana:/usr/share/kibana/plugins /home/mfw/elk/kibana/        
docker cp kibana:/usr/share/kibana/logs /home/mfw/elk/kibana/

在这里插入图片描述
3.给挂载目录设置权限,使容器内外权限一致,kibana内部用户gid:1000,uid:1000
停掉kibana容器;
在这里插入图片描述
设置权限

chown -R 1000:1000 ~/elk/kibana

在这里插入图片描述
4.创建kibana运行脚本

mkdir ~/elk/kibana/shell/
vim ~/elk/kibana/shell/kibana.sh

在这里插入图片描述

docker run -itd \
  -p 5601:5601 \
  --name kibana \
  --restart=always \
  -v /home/mfw/elk/kibana/config:/usr/share/kibana/config \
  -v /home/mfw/elk/kibana/data:/usr/share/kibana/data \
  -v /home/mfw/elk/kibana/plugins:/usr/share/kibana/plugins \
  -v /home/mfw/elk/kibana/logs:/usr/share/kibana/logs \
  --log-driver json-file \
  --log-opt max-size=100m \
  --log-opt max-file=2 \
  kibana:8.3.3

5.kibana运行脚本赋予执行权限

chmod +x ~/elk/kibana/shell/kibana.sh

在这里插入图片描述

6.启动kibana配置elasticsearch

#删除kibana容器
docker rm -f kibana
#创建kibana容器并启动(非后台模式)
docker run -it \
-p 5601:5601 \
--name kibana \
--restart=always \
-v /home/mfw/elk/kibana/config:/usr/share/kibana/config \
-v /home/mfw/elk/kibana/data:/usr/share/kibana/data \
-v /home/mfw/elk/kibana/plugins:/usr/share/kibana/plugins \
-v /home/mfw/elk/kibana/logs:/usr/share/kibana/logs \
--log-driver json-file \
--log-opt max-size=100m \
--log-opt max-file=2 \
kibana:8.3.3

7.浏览器访问http://kibana所在服务器ip:5601
在这里插入图片描述
8.在浏览器里面配置连接elasticsearch
配置前kibana.yml内容
在这里插入图片描述
在浏览器里面输入token(elasticsearch启动日志里面找)

ℹ️  Configure Kibana to use this cluster:
• Run Kibana and click the configuration link in the terminal when Kibana starts.
• Copy the following enrollment token and paste it into Kibana in your browser (valid for the next 30 minutes):
  eyJ2ZXIiOiI4LjMuMyIsImFkciI6WyIxOTIuMTY4LjE4Mi4xMjg6OTIwMCJdLCJmZ3IiOiI5ZmVmY2ZjYjZmYzllODBmNGVjYjc4NzNiMGU0ZDRmNTI0ZjU5N2EyMjgyNjViYzJkZDE1ZDY5MzZhNjUxZGE4Iiwia2V5IjoiUEp5OTM0WUJWX1drWExuREc2Z1c6OGFJVEhwMzJRZDJfWWl5MVRPcmdpQSJ9

在这里插入图片描述
此时在kibana服务日志里面会出现验证码
在这里插入图片描述
在浏览器输入验证即可
在这里插入图片描述
如果出现错误

Couldn't configure Elastic
Generate a new enrollment token or configure manually.

在这里插入图片描述
说明token过期了,需要重新生成一个(elasticsearch生成的token只有半个小时有效期)
进入elasticsearch容器

docker exec -it elasticsearch /bin/bash

在这里插入图片描述
进入elasticsearch的bin目录

cd /usr/share/elasticsearch/bin

在这里插入图片描述

./elasticsearch-create-enrollment-token  -s kibana --url "https://192.168.182.128:9200"

这里提示命令权限是root而当前账户是elasticsearch
在这里插入图片描述
解决办法,使用root登录容器

docker exec -u root -it elasticsearch /bin/bash

在这里插入图片描述

./elasticsearch-create-enrollment-token  -s kibana --url "https://192.168.182.128:9200"

在这里插入图片描述
将生成的token再次复制到浏览器上
在这里插入图片描述
在这里插入图片描述
9.解决报错
在这里插入图片描述
查看kibana配置文件

vim ~/elk/kibana/config/kibana.yml

经过浏览器配置后,kibana的配置文件已经被修改了
在这里插入图片描述
添加两行配置

i18n.locale: "zh-CN"
server.publicBaseUrl: "http://kibana服务所在ip:5601"

在这里插入图片描述
10.删除之前创建的kibana容器并运行启动脚本

docker rm -f kibana
~/elk/kibana/shell/kibana.sh

在这里插入图片描述
11.浏览器登录kibana验证
在这里插入图片描述

登录用户名密码来自于elasticsearch日志
ℹ️ Password for the elastic user (reset with bin/elasticsearch-reset-password -u elastic):
+4TMJBgOpjdgH+1MJ0nC
登录成功表示kiban部署成功
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44835704/article/details/129547222