一、安装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可视化界面中建立索引就可以看到收集的日志