环境
CentOS7
开始搭建
一、构建镜像
构建镜像的Dockerfile以及docker-compose都已经整理好
地址: https://github.com/Curtain-Wang/docker-elk
下载完以后上传到服务器,进入项目目录。
#构建elasticsearch镜像
cd elasticsearch
docker build -t elasticsearch .
cd ..
#构建filebeat镜像
cd filebeat
docker build -t filebeat .
cd ..
#构建logstash镜像
cd logstash
docker build -t logstash .
cd ..
输入docker images查看刚才的构建的三个镜像
ps: kibana的镜像写的了docker-compose里,待会儿启动的时候会自动拉取
二、设置elasticsearch虚拟内存空间
如果不设置的话,默认的虚拟内存空间是65530会报一个错误:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
vim /etc/sysctl.conf
在文件的最后一行添加以下内容
vm.max_map_count=262144
保存退出后,再执行
/sbin/sysctl -p
三、启动镜像
运行下面命令
docker-compose up -d
浏览器访问es和kibana的地址查看是否启动成功。
四、Kibana创建索引
按图中的顺序操作即可。
最后点击kibana左侧的Discover,选择合适的筛选时间就能看到日志啦~
五、注意事项
1.docker-compose.yml中有关于elasticsearch运行占用内存的设置(“ES_JAVA_OPTS=-Xms1g -Xmx1g”),请根据实际情况来设置,一般是服务器内存的一半左右。太大了服务器会卡,太小的话会报这样的错误:java.lang.OutOfMemoryError: Java heap space
2.ES_JAVA_OPTS的Xms和Xmx的值要一致,不然会报错:initial heap size [536870912] not equal to maximum heap size [1073741824]。