ELK的幫助手冊
Docker Hub官網:https://hub.docker.com/r/sebp/elk/
Docker ELK使用文檔:http://elk-docker.readthedocs.io/
1.基礎知識介紹
首先我們必須明白什么是elk,E --> elasticsearch L --> logstash k --> kibana
(1)elasticsearch 是一個開源分布式搜索引擎 ,其特點為分布式,零配置,索引自動分片等
(2)logstash 是一個完全開源的工具,可以對你的日志進行收集,分析,儲存
(3)kibana 是一個開源免費的工具,為我們提供web界面
2.開始安裝
(1)安裝條件
(1)Docker至少得分配3GB的內存;
(2)Elasticsearch至少需要單獨2G的內存;
(3)vm.max_map_count至少需要262144,sysctl -p 查看
在/etc/sysctl.conf下可修改
(2)開始安裝
docker pull sebp/elk
下載鏡像
docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -e ES_MIN_MEM=128m -e ES_MAX_MEM=1024m -it --name elk sebp/elk
運行鏡像,打開5601端口查看是否安裝完成
(3)配置
1、使用命令:docker exec -it <container-name> /bin/bash 進入容器內
2、執行命令:
/opt/logstash/bin/logstash -e 'input { stdin { } } output { elasticsearch { hosts => ["localhost"] } }'
注意:如果看到這樣的報錯信息 Logstash could not be started because there is already another instance using the configured data directory. If you wish to run multiple instances, you must change the "path.data" setting. 請執行命令:service logstash stop 然后在執行就可以了。
3、當命令成功被執行后,看到:Successfully started Logstash API endpoint {:port=>9600} 信息后,輸入:this is a dummy entry
然后回車,模擬一條日志進行測試。
4、打開瀏覽器,輸入:http://<your-host>:9200/_search?pretty 如圖,就會看到我們剛剛輸入的日志內容
3.安裝cerebro
docker search cerebro docker pull yannart/cerebro docker run -d --name cerebro -p 9000:9000 yannart/cerebro
4. 網頁進入 ip:9000 連接es 注意 連接時是 http://ip:9200