docker 搭建 ELK (elasticsearch,logstash,kibana)
推荐日志分析架构
datasource->filebeat->kafka->logstash->elasticsearch->kibana
1、ELK的帮助手册
Docker Hub官网:https://hub.docker.com/r/sebp/elk/
Docker ELK使用文档:http://elk-docker.readthedocs.io/
2、安装前提条件:
Docker至少得分配3GB的内存;
Elasticsearch至少需要单独2G的内存;
防火墙开放相关端口;
vm.max_map_count至少需要262144.否则启动时会报错。
设置方式:
vi /etc/sysctl.conf
#增加 :
vm.max_map_count = 262144
fs.file-max = 65536
#加载生效
sysctl -p
显示以下说明修改成功
vm.max_map_count = 262144
3、拉取镜像
执行docker命令
docker pull sebp/elk
#下载需要一定时间
docker images
#若能看到 sebp/elk 存在 则说明拉取成功。
4、启动
执行命令:
#前台模式运行, 可以看具体输出信息
docker run -it -p 5601:5601 -p 9200:9200 -p 5044:5044 --name elk sebp/elk
#后台模式运行。
docker run -d -p 5601:5601 -p 9200:9200 -p 5044:5044 -name elk sebp/elk
端口解释:
5601:kibana web界面端口。
5044:logstash 端口。
9200:elasticsearch 端口。
9300:elasticsearch 端口
9200作为Http协议,主要用于外部通讯
9300作为Tcp协议,jar之间就是通过tcp协议通讯
ss -ant
#如果有5601,9200,5044 端口说明启动正常。
打开浏览器,输入:http:// YOUR IP :5601
能正常访问kibana。说明部署完成。
至于用法。之后还会有文章。