E elasticsearch 生成 近乎实时查询的全文搜索引擎 L logstash 收集 读取原始日志并对其进行分析和过滤再把结果转给其他组件 K kibana 可视化 一个基于java脚本的web图形界面 注:至少需要4G内存
先将sysctl vm.max_map_count 需要修改为262144
sysctl -w vm.max_map_count=262144进行下载镜像并且进行创建容器
docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -itd -e ES_HEAP_SIZE="2g" -e LS_HEAP_SIZE="1g" --name elk sebp/elk访问网址
本机ip:5601下载filebeat的源码包
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.0.0-x86_64.rpm解压源码包
rpm -ivh filebeat-7.0.0-x86_64.rpm修改filebeat的配置文件 修改filebeat配置文件enabled true 反斜杠搜索filebeat input 修改 paths /var/lib/docker/containers/*/*-json.log 反斜杠搜索Elasticsearch output修改下面的hosts为本机IP 反斜杠搜索Kibana 修改下面的hosts 为本机的ip filebeat modules enable elasticsearchilebeat setup 开启filebeat
Fluentd 万能数据采集器(需要filebeat) 先进行安装
docker search fluentd开启并运行采集器
docker run -d -p 24224:24224 -p 24224:24224/udp -v /data:/fluentd/log fluent/fluentd修改配置文件
vi /etc/filebeat/filebeat.yml 添加路径/var/*.log重启filebeat
如果要使用fluentd则添加容器要添加这些参数
--log-driver fluentd --log-opt fluentd-address=localhost:24224 --log-opt tag="起的一个别名易于搜索"