使用docker部署ELK日志框架

前言:elk是由Elasticsearch、Logstash、Kibana三个开源组件组合形成的框架。
Elasticsearch是个开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

Logstash 主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。

Kibana 可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。

1、环境

(1) 操作系统版本:

(2) docker版本:

(3) 本次ELK三个组件选择官网最新8.7.1版本

2、安装前准备
(1) docker安装

docker安装参考官网
Install docker on CentOS

(2) 创建一个ELK容器通信专用网络

docker network create elastic

(3) 创建ELK目录,方便容器启动后目录挂载

mkdir -p /etc/{elasticsearch,kibana,logstash}
2、安装elasticsearch
# 拉取elasticsearch 8.7.1镜像
docker pull elasticsearch:8.7.1

# 查看镜像
docker images

3、拉取配置文件
# 启动elasticsearch
docker run -d --name es --net elastic -P -e "discovery.type=single-node" elasticsearch:8.7.1

# 进入容器内
docker exec -it es /bin/bash

# 进入配置文件目录
cd /usr/share/elasticsearch/config
# 容器内工作目录为/usr/share/elasticsearch/config
# 退出容器

# 复制文件
docker cp es:/usr/share/elasticsearch/config/elasticsearch.yml /etc/elasticsearch/config

# 修改权限
chmod -R 777 /etc/elasticsearch
4、重新启动容器并挂载目录
# 删除临时启动容器
docker rm -f es

# 启动容器挂载目录
docker run -d --name es \
--net elastic \
-p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \ 
-v /etc/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /etc/elasticsearch/data/:/usr/share/elasticsearch/data \ 
-v /etc/elasticsearch/plugins/:/usr/share/elasticsearch/plugins \
--privileged=true elasticsearch:8.7.1

# 查看容器状态
docker ps

# 查看容器日志状态
docker logs -f es

5、验证elasticsearch是否正常启动
curl localhost:9200

有如下打印表示正常启动

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值