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

相关推荐

  • smokeping修改Ping间隔和Ping包数量

    1、复制 所有带*.dist 2、修改httpd.conf 配置文件 3、修改 /usr/local/smokeping/etc/config

    2022年11月26日
    1.5K00
  • VMware 虚拟机里连不上网的五种解决方案

    大家好,又见面了,我是你们的朋友全栈君。 在VMware虚拟机里的虚拟机系统连接不上网络 首先,注意查看适配器选项里的网络连接这两个网络连接是否存在,如果不存在可以重新装一下VM 如果存在,连不上网 解决办法一: 虚拟机设置里,找到“网络适配器”,右边的网络连接选择“NAT 模式”,如果不行的话再 linux系统。还是不行的话接着看第二种解决方案。 解决方法…

    2024年6月28日
    3.6K00
  • 解决Composer Installing dependencies from lock file

    1、问题描述 2、原因 这是因为不匹配composer.json要求的版本。提示我的PHP 7版本太高,不符合composer.json需要的版本,但是在PHP 7下应该也是可以运行的,composer可以设置忽略版本匹配。 3、解决方案 composer install –ignore-platform-reqs 或者 composer update -…

    2023年2月14日
    1.5K00
  • 糟了,域帐户不小心误删除了,怎么办?莫慌,教你快速恢复域帐户

    大清早就接到求救电话,干我们这行真是没谁了,都快跟消防队救火差不多了。某网管急吼吼地在电话那头喘着粗气,估计有点慌:“早上特地早点到公司维护一下服务器,谁知道手一抖,删错一个域账户,那是我们财务总监的,要是恢复不了,等他来了,我就要回家待业了。” 笔者:“慌什么?没听说过么?遇到事情不要慌,先发一个朋友圈。要淡定。以后没事不要删除域账户,离职的员工就停用域账…

    2024年5月20日
    85100
  • 使用Ansible的user模块批量修改用户密码

    介绍使用ansible批量修改用户密码的方法,因为在使用ansible修改用户密码的时候不能使用明文的方式,需要先加密,所以就需要使用一个方法对输入的明文的密码进行加密,下面就直接上干货。 方法一:1、这个方法适用于更改多个固定的用户;playbook写法如下: # cat play.yml — – hosts: test gather_facts: f…

    2023年3月27日
    1.7K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信