docker搭建ELK日志平台

ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。

  • Elasticsearch 是一个搜索和分析引擎
  • Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等存储库中。
  • Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化

由于Logstash占用的资源比较大,我们选择filebeat这个轻量级的日志收集工具来代替Logstash

一、安装ELK

首先,我们通过docker-compose来安装单机版elasticsearch和kibana。

创建docker-compose.yml

version: '2.4'
services:
# ElasticSearch容器相关定义内容,做收集流的数据库
  elasticsearch:
    # 镜像名称
    image: elastic/elasticsearch:7.8.1
    privileged: true
    environment:  # ES设置,这里并没有做集群
      - discovery.type=single-node
      - node.name=netdevops_es
      - cluster.name=netdevops_es_cluster
      - network.host=0.0.0.0
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms4g -Xmx4g"   # 资源控制,这里给了4g内存,可以根据自己的设备性能进行调整
    volumes:
      - /your_data_dir/data:/usr/share/elasticsearch/data  # 数据持久化
      - /etc/timezone:/etc/timezone:ro   # 调整容器内的时间
      - /etc/localtime:/etc/localtime:ro
    network_mode: "host"   # 设置连接的网络
    ports:   # 端口映射
      - "9200:9200"
      - "9300:9300"
    ulimits:
      memlock:
        soft: -1
        hard: -1
      nofile:
        soft: 65536
        hard: 65536
    restart: unless-stopped
# 定义kibana容器,做最终的图形化界面呈现
  kibana:
    image: elastic/kibana:7.8.1
    privileged: true
    environment:
      - SERVER_NAME=netdevops_kibana
      - ELASTICSEARCH_HOSTS="http://localhost:9200"
      - PATH_DATA=/usr/share/kibana/data
      - NODE_OPTIONS="--max_old_space_size=4096"
      - I18N_LOCALE="zh-CN"
    volumes:
      - /your_data_dir/data:/usr/share/kibana/data  # 数据持久化
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    network_mode: "host"
    ports:
      - "5601:5601"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    depends_on:
      - "elasticsearch"
    restart: unless-stopped

使用docker-compose up -d 自动拉取镜像并创建容器。

创建完成后,可以使用http:\\your_ip_addr:5601访问kibana

二、安装filebeat

进入kibana后。

docker搭建ELK日志平台
docker搭建ELK日志平台

根据不同的系统版本,选择合适filebeat

docker搭建ELK日志平台

根据流程安装完成后,测试是否接收到数据

docker搭建ELK日志平台

三、查看dashboards

docker搭建ELK日志平台

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/6626

(0)
李逍遥的头像李逍遥
上一篇 2023年1月12日 下午5:28
下一篇 2023年1月16日 下午4:16

相关推荐

  • rsync+sersync实现实时监控备份同步

    rsync+sersync简介 sersync是基于inotify开发的,类似于inotify-tools的工具。所以同样内核需先支持inotify,才能搭建。 sersync可以记录下被监听目录中发生变化的(包括增加、删除、修改)具体某一个文件或者某一个目录的名字,然后使用rsync同步的时候,只同步发生变化的文件或者目录。 搭建环境:2台Linux(ce…

    2023年3月29日
    1.1K00
  • nmcli命令详解

    以下是nmcli命令的一些常用选项和用法: 1)修改网卡名称 2)添加网卡 3)启动或停止网卡 4)设置网卡获取IP模式 使用 nmcli 来设置网卡为静态IP ,可以使用以下命令: 使用nmcli命令将网卡eth0模式设置为dhcp

    2023年10月10日
    1.4K00
  • Centos系统下RabbitMQ安装教程

    一、前言 RabbitMQ是一个开源的遵循 AMQP协议实现的基于 Erlang语言编写,即需要先安装部署Erlang环境再安装RabbitMQ环境。需加注意的是,读者若不想跟着我的版本号下载安装,可根据两者版本号的对应表(下面图示只展示了部分),安装相应版本的Erlang和RabbitMQ,只需在下文修改命令里面的版本号即可。 二、Erlang下载安装 在…

    2022年6月16日
    1.5K00
  • hyper-v 压缩/检索磁盘 、vhd与vhdx 转换、删除快照

    1 hyper-v 压缩/检索磁盘 一.缩与收缩的区别 压缩:(针对动态磁盘),压缩虚拟磁盘本身。动态磁盘不会自动回收已删除的文件的空间 收缩:缩小虚拟磁盘里的最大可用空间,但前提要做【压缩卷】操作.收缩操作只支持VHDX 注:如果操作的虚拟磁盘所属的虚拟机是在Hyper-V群集,请使用故障转移群集工具 二.虚拟磁盘压缩操作: ===压缩目标 ===打开计算…

    2022年7月28日
    2.6K00
  • Asciinema:你的所有操作都将被录制

    asciinema 是一款开源免费的终端录制工具,它可以将命令行输入输出的任何内容加上时间保存在文件中,同时还提供方法在终端或者web浏览器中进行回放 asciinema的录制和播放都是基于文本的,相比传统的video有很多好处,例如录制文件体积小,在播放的过程中可以暂停复制其中的文本内容等等 同时asciinema还提供了一个网站,你如果愿意还可…

    2023年5月23日
    1.1K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信