對于熟悉ELK的技術(shù)人員來說,ELK的搭建過程是相對比較繁瑣。容器化搭建ELK 可以讓復(fù)雜的事情簡單化.
架構(gòu)簡圖如下:

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
修改內(nèi)核參數(shù)
[root@docker ~]# vim /etc/sysctl.conf
vm.max_map_count=262144
[root@docker ~]# sysctl -p
如果不修改,運行容器時會報下圖錯誤,所以需要提前修改

運行容器
運行容器的docker-host內(nèi)存需要比較大(我這里測試時為3G)
[root@docker ~]# docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -it --name elk sebp/elk
修改容器內(nèi)的logstash配置文件


重啟容器
[root@docker ~]# docker restart elk
應(yīng)用服務(wù)器上操作
下載并安裝?lebeat
[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
修改?lebeat配置文件


啟動?lebeat服務(wù)
[root@filebeat ~]# systemctl restart filebeat
[root@filebeat ~]# systemctl enable filebeat
測試
在應(yīng)用服務(wù)器上操作產(chǎn)生日志
[root@filebeat ~]# yum install vsftpd -y
或
[root@filebeat ~]# echo 111111 >> /var/log/yum.log
然后通過瀏覽器訪問kibana
