docker搭建elk

 

docker run -d -p 5601:5601 -p 9200:9200  -p 5044:5044 -v /opt/data/elk-data:/var/lib/elasticsearch --name elk sebp/elk

1.運行完後報錯:

 max virtual memory areas vm.max_map_count [26214] is too low, increase to at least [262144]

這是因爲elasticsearch用戶擁有的內存權限太小,至少需要262144。

執行

 sysctl -a|grep vm.max_map_count

顯示:

vm.max_map_count = 26214 

使用命令修改:

sysctl -w vm.max_map_count=262144

然後在   /etc/sysctl.conf文件最後添加一行

vm.max_map_count=262144。

使用docker ps 查看是否在運行,使用docker images找到本地鏡像,使用 docker start [imageId] 運行已存在的鏡像。(docker run 生成鏡像)

2. 訪問elk。(我的虛擬機ip是192.168.1.90)

2.1 5601端口查看Kibana: 

http://192.168.1.90:5601/

 

 2.2 es 訪問9200端口  (http://192.168.1.90:9200/)

2.3  進入容器內 docker exec -it <container-name> /bin/bash 

docker exec -it 2103a6c2dccb1a6e937d8292bae2fb0ae745749310d84a5fc30d6952125f7239  /bin/bash

進入容器後執行 /opt/logstash/bin/logstash -e 'input { stdin { } } output { elasticsearch { hosts => ["localhost"] } }'

如果報錯

就執行service logstash stop 

出現 Successfully started Logstash API endpoint {:port=>9600} 就是說明配置成功。

this is a dummy entry 然後回車

瀏覽器中打開: http://192.168.1.90:9200/_search?pretty  (192.168.1.90換成docker宿主機地址)

 

訪問5601端口查看 (http://192.168.1.90:5601/)

查看日誌:

 

參考資料:

Docker ELK使用文檔 https://elk-docker.readthedocs.io/

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章