使用Docker镜像部署ELK日志系统

https://www.cnblogs.com/xbblogs/p/10775908.html

https://www.liuyixiang.com/post/69592.html

使用Docker部署elasticsearch、logstash、kibana

指定版本:6.7.1 (建议使用同一的版本、屏蔽三个软件间的不兼容性)

下载镜像:

docker pull elasticsearch:6.7.1 docker pull logstash:6.7.1 docker pull kibana:6.7.1  

修改vm.max_map_count

vim /etc/sysctl.conf 添加配置:vm.max_map_count=262144 执行命令,确保生效配置生效: sysctl -p 依据服务器配置而定  

es集群

这里es集群用了3个节点,配置文件放在 /root/es/config/ 目录下,

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

注意:es是不允许使用root用户启动的,/root/es/config/  目录最好改成 777权限,

es1.yml配置文件内容:

使用Docker镜像部署ELK日志系统 随笔 第1张 使用Docker镜像部署ELK日志系统 随笔 第2张

cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 10.90.101.48
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true 
node.data: true 
discovery.zen.ping.unicast.hosts: ["10.90.101.48:9300","10.90.101.48:9301","10.90.101.48:9302"]
discovery.zen.minimum_master_nodes: 2
xpack.ml.enabled: false
xpack.monitoring.enabled: false
xpack.security.enabled: false
xpack.watcher.enabled: false

View Code

启动当前配置文件的es命令:

  docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d -p 9200:9200 -p 9300:9300 -v /root/es/config/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /root/es/data1:/usr/share/elasticsearch/data --name ES01 elasticsearch:6.7.1

 

es2.yml配置文件内容: 使用Docker镜像部署ELK日志系统 随笔 第3张 使用Docker镜像部署ELK日志系统 随笔 第4张

cluster.name: elasticsearch-cluster
node.name: es-node2
network.bind_host: 0.0.0.0
network.publish_host: 10.90.101.48
http.port: 9201
transport.tcp.port: 9301
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true 
node.data: true 
discovery.zen.ping.unicast.hosts: ["10.90.101.48:9300","10.90.101.48:9301","10.90.101.48:9302"]
discovery.zen.minimum_master_nodes: 2
xpack.ml.enabled: false
xpack.monitoring.enabled: false
xpack.security.enabled: false
xpack.watcher.enabled: false

View Code

启动当前配置文件的es命令:

  docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d -p 9201:9201 -p 9301:9301 -v /root/es/config/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /root/es/data2:/usr/share/elasticsearch/data --name ES02 elasticsearch:6.7.1     es3.yml配置文件内容: 使用Docker镜像部署ELK日志系统 随笔 第5张 使用Docker镜像部署ELK日志系统 随笔 第6张

cluster.name: elasticsearch-cluster
node.name: es-node3
network.bind_host: 0.0.0.0
network.publish_host: 10.90.101.48
http.port: 9202
transport.tcp.port: 9302
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true 
node.data: true 
discovery.zen.ping.unicast.hosts: ["10.90.101.48:9300","10.90.101.48:9301","10.90.101.48:9302"]
discovery.zen.minimum_master_nodes: 2
xpack.ml.enabled: false
xpack.monitoring.enabled: false
xpack.security.enabled: false
xpack.watcher.enabled: false

View Code

启动当前配置文件的es命令:

  docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d -p 9202:9202 -p 9302:9302 -v /root/es/config/es3.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /root/es/data3:/usr/share/elasticsearch/data --name ES03 elasticsearch:6.7.1     1、-e JAVA_OPTS="-Xms512m -Xmx512m" 是配置当前es使用jvm的最大内存,内存配置过低会导致CPU非常高,如果服务器内存很大可配置2~4g 2、-p 9200:9200 -p 9300:9300  9200是es提供给外部的通讯端口,9300是es节点之间的通讯端口 3、 -v /root/es/config/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml  指定启动的配置文件 4、-v /root/es/data1:/usr/share/elasticsearch/data 指定es的数据挂载到当前服务器的目录 5、--name ES01  当前镜像的名字  

kibana

kibana.yml配置文件内容: 使用Docker镜像部署ELK日志系统 随笔 第7张 使用Docker镜像部署ELK日志系统 随笔 第8张

server.name: kibana
server.host: "0"
elasticsearch.url: http://10.90.101.48:9300
xpack.monitoring.ui.container.elasticsearch.enabled: false
xpack.security.enabled: false
xpack.ml.enabled: false
xpack.monitoring.enabled: false

View Code

启动kibana

  docker run --name kibana -v /root/kibana/config:/usr/share/kibana/config -p 5601:5601 -d kibana:6.7.1  

logstash

把images中的配置文件拷贝出来: 1. 先运行一个logstash实例 2. docker cp 容器id:/usr/share/logstash/config /root/logstash/config      docker cp 容器id:/usr/share/logstash/pipeline /root/logstash/pipeline

pipeline/logstash.conf

使用Docker镜像部署ELK日志系统 随笔 第9张 使用Docker镜像部署ELK日志系统 随笔 第10张

input{
    http{
        host => "0.0.0.0"
        port => 5050
        additional_codecs => {"application/json"=>"json"}
        codec => "plain"
        threads => 4
        ssl => false
    }
}
output {
    elasticsearch {
        hosts => ["http://10.90.101.48:9200","http://10.90.101.51:9201","http://10.90.101.51:9202"]
        index => "log_%{logtype}_%{+YYYY.MM.dd}"
    }
}

View Code

设置日志输入输出方式

 

config/logstash.yml

使用Docker镜像部署ELK日志系统 随笔 第11张 使用Docker镜像部署ELK日志系统 随笔 第12张

http.host: "0.0.0.0"
xpack.monitoring.enabled: false

View Code

启动logstash

  docker run -d --name logstash -p 5050:5050 -v /root/logstash/config:/usr/share/logstash/config -v /root/logstash/pipeline:/usr/share/logstash/pipeline logstash:6.7.1    

cerebro 一个管理es的工具

docker pull lmenezes/cerebro

启动cerebro

  docker run --name es-head -p 9000:9000 -d lmenezes/cerebro   浏览器中打开  ip:9000 链接 http://ip:9200 即可看到es 集群的状态   

推荐这些文章:

Docker 安装 ELK

一 安装 ElasticSearch 
1 拉取镜像

docker pull elasticsearch:7.8.0

查看一下

docker images

2 创建数据卷映射目录

 3 启动容器

docker run --restart=always --name elas...

Docker部署ELK 设置es和kibana密码

elk版本为7.9.2 (书接上回 docker部署elk)
进入容器

docker exec -ti elk /bin/sh

新增xpack配置,补充到最后

vim /etc/elasticsearch/elasticsearch.yml

 

 
 

xpack.security.tr...

Docker 部署 3 节点 ES 集群

资源清单

主机
IP

es-master
10.0.0.1

es-node1
10.0.0.2

es-node2
10.0.0.3

软件
版本

docker
20.10.12

docker-compose
1.23.1

elasticsearch
7.16.3

kibana
7.16...

Docker安装部署ELK教程 (Elasticsearch+Kibana+Logstash+spring boot 集成logstash) 基于7.16.3版本

Docker安装部署ELK教程 (Elasticsearch+Kibana+Logstash+spring boot 集成logstash) 基于7.16.3版本

环境说明:

容器版本 Docker version 20.10.2, build 2291f61
操作系统版本 Linux debian 4.19.0-18-amd64 ...

ELK快速搭建日志平台

2.  前言

2.1.  现状
以前,查看日志都是通过SSH客户端登服务器去看,使用较多的命令就是 less 或者 tail。如果服务部署了好几台,就要分别登录到这几台机器上看,还要注意日志打印的时间(比如,有可能一个操作过来产生好的日志,这些日志还不是在同一台机器上,此时就需要根据时间的先后顺序推断用户的操作行为...

Docker下的Elastic search

一、安装
(一)Elastic search
1. 拉取镜像:docker pull elasticsearch:7.4.2
2. 创建容器:docker run -d --name es -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e...

ELK收集日志之logstash使用

一、logstash使用
1.logstah收集文件日志
不难理解,我们的日志通常都是在日志文件中存储的,所以,当我们在使用INPUT插件时,收集日志,需要使用file模块,从文件中读取日志的内容,那么接下来讲解的是,将日志内容输出到另一个文件中,如此一来,我们可以将日志文件统一目录,方便查找。

注意:Logstash与其他服务不同,...

Docker安装部署ELK教程 (Elasticsearch+Kibana+Logstash+Filebeat)

一、Docker 安装 Elasticsearch
1拉取镜像
docker pull elasticsearch:7.1.1
2创建自定义的网络(用于连接到连接到同一网络的其他服务(例如Kibana))
docker network create somenetwork
3运行elasticsearch
docker run -d -...

Docker下安装ElasticSearch和Kibana

ElasticSearch安装

docker安装es

docker pull elasticsearch:7.2.0

启动es

docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -d elastic...

ELK部署文档--logstash

1 背景

ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。新增了一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash。

这是一个最简单的架构图:
fileb...

文章标题:使用Docker镜像部署ELK日志系统
文章链接:https://www.dianjilingqu.com/51208.html
本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:saisai#email.cn,感谢支持理解。
THE END
< <上一篇
下一篇>>