搭建ELK容器化,so easy

对于熟悉ELK的技术人员来说,ELK的搭建过程是相对比较繁琐。容器化搭建ELK 可以让复杂的事情简单化.

架构简图如下:

搭建ELK容器化,so easy

docker宿主机操作

安装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

下载elk整合版镜像

[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
如果不修改,运行容器时会报下图错误,所以需要提前修改

搭建ELK容器化,so easy

运行容器

运行容器的docker-host内存需要比较大(我这里测试时为3G)
[root@docker ~]# docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -it --name elk sebp/elk

修改容器内的logstash配置文件

搭建ELK容器化,so easy

搭建ELK容器化,so easy

重启容器

[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配置文件

搭建ELK容器化,so easy

搭建ELK容器化,so easy

启动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

搭建ELK容器化,so easy

相关推荐