前言
"ELK"是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。Elasticsearch 是一个搜索和分析引擎。Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等"存储库"中。Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化,Elastic Stack 是 ELK Stack 的更新换代产品。
Docker镜像站
| Docker@Elastic
Elasticsearch-7.6
| elasticsearch-7.6
Kibana-7.6
| kibana-7.6
Logstash-7.6
| logstash-7.6
搭建
我们使用Docker镜像来快速搭建,前提依然是要部署好Docker环境哦~
拉取镜像
代码语言:javascript复制docker pull docker.elastic.co/kibana/kibana:7.6.2
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.6.2
docker pull docker.elastic.co/kibana/kibana:7.6.2
创建配置文件
代码语言:javascript复制#创建目录
mkdir -p /elk/pipelins
#### elasticsearch ####
# vi elasticsearch.yml
http.port: 9200
network.host: 0
discovery.type: "single-node"
xpack.monitoring.enabled: false
#### kibana ####
# vi kibana.yml
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: "http://192.168.1.103:9200"
xpack.monitoring.enabled: false
i18n.locale: "zh-CN"
#### logstash ####
# vi logstash.yml
http.host: "0.0.0.0"
http.port: 9600
xpack.monitoring.enabled: false
#### logstash-test ####
# vi pipelins/logstash-test.conf
input {
beats {
host => "0.0.0.0"
port => "5044"
}
}
output {
elasticsearch { hosts => ["192.168.1.103:9200"] }
stdout { codec => rubydebug }
}
运行服务
代码语言:javascript复制docker run -d -p 9200:9200 -p 9300:9300 -v /elk/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml docker.elastic.co/elasticsearch/elasticsearch:7.6.2
# e698bb545b02为elasticsearch的启动成功后的容器ID
docker run -d --link e698bb545b02:elasticsearch -p 5601:5601 -v /elk/kibana.yml:/usr/share/kibana/config/kibana.yml docker.elastic.co/kibana/kibana:7.6.2
docker run -d --rm -it -p 5044:5044 -p 9600:9600 -v /elk/logstash.yml:/usr/share/logstash/config/logstash.yml -v /elk/pipelins/:/usr/share/logstash/pipeline/ docker.elastic.co/logstash/logstash:7.6.2
查看服务
代码语言:javascript复制# docker ps -a
访问后台
公网IP:5601