ELK(ElasticSearch+Logstash+Kibana)配置中的一些坑基于7.6版本

时间:2023-03-08 18:39:27

三个组件都是采用Docker镜像安装,过程简单不做赘述,直接使用Docker官方镜像运行容器即可,注意三个组件版本必须一致。

运行容器时最好将三个组件的核心配置文件与主机做映射,方便直接在主机修改不用每次进入容器修改。

ES配置文件elasticsearch.yml:(配置了ES用户名和密码,也可以不开启认证)

cluster.name: "docker-cluster"
network.host: 0.0.0.0
# 访问ID限定,0.0.0.0为不限制,生产环境请设置为固定IP
transport.host: 0.0.0.0
# elasticsearch节点名称
node.name: node-1
# elasticsearch节点信息
cluster.initial_master_nodes: ["node-1"]
# 下面的配置是关闭跨域验证(可以不开启)
http.cors.enabled: true
http.cors.allow-origin: "*"
# 开启用户名密码认证
xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true
# 配置head插件认证
http.cors.allow-headers: Authorization

Kibana配置文件kibana.yml:(配置了Kibana用户名和密码,注意不是ES用户)

server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://ip:9200"]
# 操作界面语言设置为中文
i18n.locale: "zh-CN"
# 这里的用户名kibana我们会在ES设置
elasticsearch.username: "kibana"
elasticsearch.password: "kibana的密码"

Logstash配置文件:(Logstash新增了pipeline流水线运行方式,所以需要配置三个文件)

logstash.conf(此处需要填写ES用户的用户名密码,监听日志的端口5044,输出目标ES信息和索引)

input {
tcp {
port => 5044
codec => json_lines
}
}
filter { }
output {
stdout {
codec => rubydebug
}
elasticsearch {
hosts => ["ip:9200"]
index => "logstash-%{[server_name]}-%{+YYYY.MM.dd}"
user => elastic
password => es密码
}
}
pipeline.yml(这里我的logstash环境只有一个指向一个路径就可以了)
# This file is where you define your pipelines. You can define multiple.
# For more information on multiple pipelines, see the documentation:
# https://www.elastic.co/guide/en/logstash/current/multiple-pipelines.html - pipeline.id: main
path.config: "/usr/share/logstash/pipeline/logstash.conf"

logstash.yml(此处需要填logstash_system用户的用户名密码)

http.host: "0.0.0.0"
xpack.monitoring.enabled: true
xpack.monitoring.elasticsearch.username: logstash_system
xpack.monitoring.elasticsearch.password: logstash密码
xpack.monitoring.elasticsearch.hosts: [ "http://47.103.159.79:9200" ]

至此我们已经有三个用户了,ES用户,Kibana用户,logstash_system用户。

通俗来讲,ES用户超级管理员,Kibana和Logstash用户只能各司其职。

成功启用后你的Kibana会多出一些用户选项,以后可以直接在Kibana中修改密码了

ELK(ElasticSearch+Logstash+Kibana)配置中的一些坑基于7.6版本

ELK(ElasticSearch+Logstash+Kibana)配置中的一些坑基于7.6版本

其他的用户用到的时候再设置就行。

在设置logstash的时候有个坑

ELK(ElasticSearch+Logstash+Kibana)配置中的一些坑基于7.6版本

大体意思是执行logstash.conf时错误,一般是格式问题导致编译失败,但是这里是输入ES密码时出现了“=”等号,不在规定字符集中,所以设置ES密码时建议不要有符号加入。