对于熟悉ELK的技术人员来说,ELK的搭建过程是相对比较繁琐。容器化搭建ELK 可以让复杂的事情简单化.
架构简图如下:
安装docker
[root@docker ~]# wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker- ce.repo
[root@docker ~]# yum install docker-ce -y
[root@docker ~]# systemctl start docker
[root@docker ~]# systemctl enable docker
[root@docker ~]# docker search elk |head -2
NAME DESCRIPTION
STARS OFFICIAL AUTOMATED
sebp/elk Collect, search and visualise log data with …
934 [OK]
[root@docker ~]# docker pull sebp/elk
[root@docker ~]# vim /etc/sysctl.conf
vm.max_map_count=262144
[root@docker ~]# sysctl -p
如果不修改,运行容器时会报下图错误,所以需要提前修改
运行容器的docker-host内存需要比较大(我这里测试时为3G)
[root@docker ~]# docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -it --name elk sebp/elk
重启容器
[root@docker ~]# docker restart elk
下载并安装filebeat
[root@filebeat ~]# wget https://artifacts.elastic.co/downloads/beats/filebeat/filebea t-7.4.2-x86_64.rpm [root@filebeat ~]# rpm -ivh filebeat-7.4.2-x86_64.rpm
修改filebeat配置文件
启动filebeat服务
[root@filebeat ~]# systemctl restart filebeat
[root@filebeat ~]# systemctl enable filebeat
测试
在应用服务器上操作产生日志
[root@filebeat ~]# yum install vsftpd -y
或
[root@filebeat ~]# echo 111111 >> /var/log/yum.log
然后通过浏览器访问kibana