【Docker】:docker安裝ELK(logstash,elasticsearch,kibana)
阿新 • • 發佈:2018-11-16
一:安裝logstash
1.拉取映象
docker pull logstash:5.6.11
2.建立目錄
mkdir /docker/logstash
cd /docker/logstash
3.建立配置檔案
touch logstash.config 檔案內容: input { udp { port => 8888 codec => json } } output { elasticsearch{ hosts => "192.168.186.129:9200" index => "indextest" } stdout{ codec => rubydebug } }
4.建立,啟動logstash容器
docker run -p 8888:8888/udp -d -v /docker/logstash:/config-dir logstash:5.6.11 -f /config-dir/logstash.conf
二:安裝elasticsearch
1.拉取映象
docker pull elasticsearch:5.6.11
2.建立資料目錄
mkdir /docker/es && mkdir /docker/es/data
3.建立ES容器並啟動
docker run -d -p 9200:9200 -p 9300:9300 \ -v /docker/es/data:/usr/share/elasticsearch/data \ elasticsearch:5.6.11
4.測試
5.啟動問題排查
預設啟動ES分配2G記憶體,如提示記憶體不足,可進行修改
find /var/lib/docker/overlay/ -name jvm.options
查到如下結果:
/var/lib/docker/overlay2/1fb59070a037d02dccfc33e15d6e24cf9127882cc19521a1654192d3d3b1c7ec/diff/etc/logstash/jvm.options /var/lib/docker/overlay2/d2b9e8e913dff7c015cbb27b34ca4b9921bdd43869a1bfb1413af468cb14465e/diff/etc/elasticsearch/jvm.options /var/lib/docker/overlay2/dd2634a4b14f8ef455ae969466af25d147f508c0e9785bb3e7703eb933675ecf/merged/etc/logstash/jvm.options
修改elasticsearch/jvm.options
把
-Xms2g 改為 -Xms512m
-Xmx2g 改為 -Xmx512m
6.安裝IK分詞器
a.docker exec -it 容器ID
b.elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.6.11/elasticsearch-analysis-ik-5.6.11.zip
重啟容器載入IK分詞器時候會儲存,IK分詞器下缺少配置檔案,沒搞明白為什麼5.6.11安裝的IK外掛缺少了,宿主機下載瞭解壓後Copy到容器中
docker cp ik/config 容器ID:/usr/share/elasticsearch/plugins/analysis-ik
重啟容器
測試安裝的分詞器:
GET _analyze?pretty
{
"analyzer": "ik_smart",
"text": "中華人民共和國國歌"
}
三:安裝kibana
1.拉取kibana映象
docker pull kibana:5.6.11
2.建立kibana容器並啟動
docker run -p 5601:5601 -e ELASTICSEARCH_URL=http://192.168.186.129:9200 -d kibana:5.6.11
3.測試