在linux中使用docker安装ELK日志监控分析系统
网上的教程非常零散或者很多都已经过时了,我这里总结了相比于其他更新的日志系统搭建。并且使用docker镜像,更加简化了安装。在这开始之前先附上我的成功配置截图:
linux的安装
linux的安装很简单,但是要使用docker必须安装centos7及以上,不然出现的各种兼容性问题自行百度解决。这里有两种方法:
- 如果是学生可以购买阿里或者腾讯的linux服务器,简单方便,每个月只要10元钱,其实挺划算的。这是阿里linux的购买地址:https://homenew.console.aliyun.com/
- 如果在本机上通过虚拟机来安装linux,步骤更复杂,但如果不想花钱电脑内存充足那么就在本机上面通过虚拟机弄也不错。安装教程移步:https://www.cnblogs.com/ljq2622/p/12003104.html
docker+docker compose 安装配置
安装docker
- --更新yum
yum -y update
- --安装Docker
yum install docker -y
- --检查安装结果
docker --version
- --启动Docker
systemctl start docker.service
/**Docker生命周期管理常用命令
systemctl stop docker.service
systemctl start docker.service
systemctl restart docker.service
systemctl status docker.service
*/
- --(可选)安装常用工具
yum install iproute ftp bind-utils net-tools wget -y
/**
其中:
iproute 用来执行 ip address 查看本机地址
ftp 用来测试ftp 服务器
bind_utils 用来运行 nslookup
net-tools 用来执行 netstate
wget 既是执行 wget的
*/
- --(可选)配置DNS
nslookup www.baidu.com
vi /etc/resolv.conf
/** 修改为如下:
# Generated by NetworkManagersearch
www.tendawifi.comname
server 119.29.29.29
nameserver 182.254.116.116
*/
nslookup www.baidu.com
- --配置镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-\'EOF\'
{
"registry-mirrors": ["https://e9dkmn9m.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
- --查看镜像加速是否生效
tail /etc/docker/daemon.json
安装docker-compose
- --下载
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
温馨提示(不要傻等):因为是在GitHub上面拉取,所以可以容易拉取失败,可以搭个梯子容易成功些,一般都下载几次才会成功,如果下载卡死可以使用linux的Ctrl+C撤销重新下载。如果始终下载不成功可以现在Windows上下载下来再传到linux上面去,参考教程:http://m.zhizuobiao.com/linux/linux-18083000104/
- --权限控制
sudo chmod +x /usr/local/bin/docker-compose
- --(可选)建立直接执行链接
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
- --检查安装结果
docker-compose --version
注意:如果这里看不到docker-compose版本,有可能是在GitHub上面拉取的docker-compose包有损坏,到目录下面删除docker-compose文件夹重新下载。
ELK安装配置
准备docker-compose启动文件及配置
- 防火墙开放5044端口:
firewall-cmd --zone=public --add-port=5044/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports
-
拷贝ELK目录到root根目录下并解压
ELK配置文件提供大家百度云下载:https://pan.baidu.com/s/1sNdTyDmdUY-WqT74YDT8Lw
拷贝解压等基本操作大家自行百度
-
给elasticsearch数据目录赋权
chmod 777 /root/ELK/elasticsearch/data
- 启动docker服务
systemctl start docker
- 进入ELK目录
cd ELK
- 启动 ELK
docker-compose up
当每隔几十秒钟弹出kibana日志就表示启动成功了
- 访问kibana(由于启动时间需要几分钟,刚开始访问时可能会提示服务未准备好,过几分钟后试试)
访问 http://192.168.252.131:5601/ ip地址是你的linux外网地址
如果还是不能访问有可能是你防火墙或者kibana端口的问题。