使用docker搭建elk

文章目录

    • 概念:
    • 安装elk(这里通过docker进行安装)
        • 安装es
        • 安装kikana
        • 安装logstash

概念:

那么,ELK 到底是什么呢? “ELK”是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。Elasticsearch 是一个搜索和分析引擎。Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等“存储库”中。Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化

  • 工作流程
    使用docker搭建elk_第1张图片
  • 在后续elk引入了beats (数据采集器) 后被称为Elastic Stack 或者 ELK

安装elk(这里通过docker进行安装)

安装es

  • 在dockerhub上搜索es使用docker搭建elk_第2张图片

  • 找到需要的es版本
    使用docker搭建elk_第3张图片

  • 拉取es镜像docker pull elasticsearch:tag
    使用docker搭建elk_第4张图片
    在这里插入图片描述

  • 在dockerhub官网上可以看到es的启动命令
    使用docker搭建elk_第5张图片

  • 先创建自定义docker网络docker network create elastic,默认是桥接模式
    在这里插入图片描述

  • 查看创建的网络使用docker搭建elk_第6张图片

  • 启动es镜像,这里我以单机的形式启动docker run -d --name elasticsearch --net elastic -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:tag
    在这里插入图片描述

  • 启动之后访问localhost:9200,有数据返回说明启动成功,如下图
    使用docker搭建elk_第7张图片

  • 修改es配置,进入容器docker exec -it a804 /bin/sh
    在这里插入图片描述

  • config目录下的elasticsearch.yml文件添加

http.cors.enabled: true 
http.cors.allow-origin: "*"
  • 修改完配置之后,退出容器并重启
    使用docker搭建elk_第8张图片

安装kikana

  • 从dockerhub拉取与es对应版本的kibana docker pull kibana:tag
    使用docker搭建elk_第9张图片
  • 启动kibana docker run --name kib-7.6 --net elastic -d -p 5601:5601 kibana:tag
  • 启动之后访问
    使用docker搭建elk_第10张图片
  • 出现上图是由于kibanakibana.yml,默认的地址是http://elasticsearch:9200,需要修改为es服务ip
  • 进入到es容器里面docker -it 容器编号 /bin/sh
    在这里插入图片描述
  • 查看es的容器详情docker inspect a80402dbe9f5
  • 找到网络详情,找到es服务的ip地址
    使用docker搭建elk_第11张图片
  • 也可以通过docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' a804获取ip
    使用docker搭建elk_第12张图片
  • 进入到kibana容器,切换到/usr/share/kibana/config目录
    使用docker搭建elk_第13张图片
  • 修改kibana.yml文件
    使用docker搭建elk_第14张图片
    使用docker搭建elk_第15张图片
  • 修改完kibana.yml之后重启kibana容器
  • 访问kibanalocalhost:5601

    使用docker搭建elk_第16张图片
  • 到这里kibana就安装成功了

安装logstash

  • 从dockerhub拉取logstashdocker pull logstash:7.6.2
    使用docker搭建elk_第17张图片

你可能感兴趣的:(docker,elk)