一、安裝elasticsearch
1:下載elk安裝包 到linux服務器上 進行解壓 tar -xvzf xxxxxx.tar.gz
2: elasticsearch 不允許root啟動 需要創建用戶
1)useradd elk
2)修改elk密碼
3)給予 elk用戶 文件夾權限
4)首先編輯elasticsearch目錄下,conf目錄中的YML 文件
5)切換用戶 並進入 elasticsearch/bin 目錄下
6)啟動命令:./elasticsearch
啟動成功之后 訪問路徑 192.168.1.222:9200
Elasticsearch API
- 集群狀態:http://192.168.1.222:9200/_cluster/health?pretty
- 節點狀態:http://192.168.1.222:9200/_nodes/process?pretty
- 分片狀態:http://192.168.1.222:9200/_cat/shards
- 索引分片存儲信息:http://192.168.1.222:9200/index/_shard_stores?pretty
- 索引狀態:http://192.168.1.222:9200/index/_stats?pretty
- 索引元數據:http://192.168.1.222:9200/index?prett
出現上面的內容表示啟動成功 (如果要后台啟動則需要在啟動命令后面加上 -d ./elasticsearch -d)
- 本機環境是 JDK 8 ,它會提醒后面版本需要 JDK 11 支持。但它是向下兼容的
二、安裝kinaba
1.下載安裝包 要跟elasticsearch版本相同 然后解壓
2.修改kinaba yml配置文件
server.port: 5601
server.host: "192.168.1.222"
elasticsearch.hosts: ["http://127.0.0.1:9200"]
#kibana.index: ".kibana"
logging.dest: /elk/log/kibana/kibana.log
3.創建log日志文件
mkdir log
cd log
mkdir kibana
touch kibana.log
4.啟動 因為kinaba是node.js寫的 所以可以直接啟動
1)遇到問題 [config validation of [elasticsearch].url]: definition for this key is missing
把yml文件中 elasticsearch.url 改為 elasticsearch.hosts即可
啟動成功之后訪問ip+5601端口
三、安裝 logstash
1)下載解壓 編輯logstash.yml文件
node.name: 192.168.1.222
path.data: /elk/data/logstash
config.reload.automatic: true
config.reload.interval: 10s
http.host: "192.168.1.222"
2)編輯logstash-sample.conf文件
input {
#beats {
# port => 5044
#}
file {
path => "/usr/local/nginx/logs/access.log"
start_position => beginning
}
}
output {
elasticsearch {
hosts => ["http://localhost:9200"]
index => "%{[@metadata][logstash]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
#user => "elastic"
#password => "changeme"
}
}
運行 ./logstash -f ../config/logstash-sample.conf
3)在kibana可視化界面中建立索引就可以看到收集的日志