elk是elasticsearch、logstash、kibana的縮寫,使用elk的原因是因為公司使用spring cloud部署了多個微服務,不同的微服務有不同的日誌檔案,當生產上出現問題是不能及時排查,所以使用logstash手機日誌,elasticsearch實現全文檢索,kibana作為顯示與分析。
當然同樣優秀的還有graylog但是都是基於elasticsearch,所以這裡選用elk
#因為對記憶體有要求所以
vim /etc/sysctl.conf
# 新增下面配置
vm.max_map_count=655360
# 編輯完,使命令生效
sysctl -p
# 編輯檔案
vi /etc/security/limits.conf
# 修改並加入下面配置
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
首先在官網查詢到最新版本
docker pull elasticsearch:7.2.0
啟動es
docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" --name elasticsearch -d elasticsearch
安裝ik分詞器
#進入容器
docker exec -it 容器id /bin/bash
#進入plugins目錄
cd /usr/share/elasticsearch/plugins/
#解壓unzip -d ik-analysis elasticsearch-analysis-ik-7.2.0.zip
#刪除壓縮包(切記刪除或移動到其他目錄否則無法啟動)
rm -rf elasticsearch-analysis-ik-7.2.0.zip
#退出容器
exit
#重啟容器
docker restart 容器id
允許跨域
#進入
/usr/share/elasticsearch/config/elasticsearch.yml
#新增http.cors.enabled: true
http.cors.allow-origin: "*"
docker pull kibana:7.2.0
檢視es內部ip
docker inspect 容器id
#找到networksettings.ipaddress
執行容器
docker run --name kibana --link elasticsearch:elasticsearch -p 5601:5601 -d kibana:7.2.0
#官方推薦以上方式,如果es不是docker容器可以採用以下方式
-e elasticsearch_hosts=http://ip:9200
wget
解壓
tar -xzvf filebeat-7.2.0-linux-x86_64.tar.gz
修改filebeat.yml
filebeat.inputs:
- type: log
enabled: true
paths:
- /tmp/log/*.log
output.logstash:
enabled: true
hosts: ["logstash ip:5044"]
啟動
#前台啟動
./filebeat -e -c filebeat.yml
#後台啟動
nohup ./filebeat -e -c filebeat.yml > filebeat.log &
#結束程序
ps -ef |grep filebeat
kill -9 程序號
docker pull logstash:7.2.0
啟動
docker run -p 5044:5044 -p 9600:9600 -d --name logstash logstash:7.2.0
進入容器
docker exec -it -u 0 logstash /bin/bash
刪除示例
rm -rf logstash-sample.conf
重啟
docker restart logstash
Docker中部署 ELK日誌分析系統
一 docker環境搭建 linux x64下 1 通過yum安裝 可以連線外網 2 手動安裝 不能連線外網,無法yum安裝 二 elk原理圖 logstash forwarder 監控input 日誌檔案 socket.的改變,並發給logstash logstash 通過配置檔案裡的設定過濾 正...
使用Docker部署日誌分析平台 ELK
日誌分析平台elk由3個服務組成,分別是elasticsearch logstash和kibana,其中 elasticsearch是乙個分布式搜尋分析引擎,負責日誌儲存並提供 搜尋功能。logstash能提供資料收集 加工和傳輸管道的服務,負責日誌收 集。kibana是乙個資料視覺化平台,並可以將...
docker方式部署ELK
1.拉取原始映象 docker pull sebp elk 660 2.啟動下映象方便進入,進行自定義配置修改 docker run dit name elk p 5601 5601 p 9200 9200 p 5044 5044 v data elasticsearch var lib elast...