• Docker中搭建Elasticsearch+Kibana


    1 概述

    Elasticsearch
    Elasticsearch是一个基于Apache Lucene™的开源搜索引擎,无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。

    Kibana
    Kibana 是一个为 Logstash 和 ElasticSearch 提供的日志分析的 Web 接口。可使用它对日志进行高效的搜索、可视化、分析等各种操作。

    2 Elasticsearch搭建

    考虑到elasticsearch的兼容性,这里elasticsearch、kibana统一下载8.4.3版本。

    2.1 拉取镜像

    docker pull elasticsearch:8.4.3
    
    • 1

    稍等片刻,查看镜像。

    docker images
    
    • 1

    在这里插入图片描述

    2.2 创建网络

    因为我们还需要部署kibana容器,因此需要让elasticsearch和kibana容器互联。这里先创建一个网络。

    docker network create es-net
    
    • 1

    2.3 准备映射重要目录

    切换到/home目录中,创建elasticsearch目录,切换到elasticsearch目录中。

    cd /home/
    mkdir elasticsearch
    cd elasticsearch
    
    • 1
    • 2
    • 3

    2.4 临时启动elasticsearch

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

    在这里插入图片描述

    复制容器中重要配置目录到磁盘目录

    cd /home/elasticsearch
    docker cp elasticsearch:/usr/share/elasticsearch/config .
    docker cp elasticsearch:/usr/share/elasticsearch/data .
    docker cp elasticsearch:/usr/share/elasticsearch/plugins .
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述

    授予elasticsearch目录及子目录改文件及子文件所有权限

    chmod -R 777 elasticsearch
    
    • 1

    在这里插入图片描述

    移除临时启动elasticsearch容器

    docker stop elasticsearch
    docker rm elasticsearch
    
    • 1
    • 2

    在这里插入图片描述

    2.5 正式运行elasticsearch

    docker run --name=elasticsearch -p 9200:9200 -p 9300:9300 \
    -e "discovery.type=single-node" \
    -e ES_JAVA_OPTS="-Xms64m -Xmx128m" \
    -v /home/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
    -v /home/elasticsearch/data:/usr/share/elasticsearch/data \
    -v /home/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
    --network es-net \
    --restart=always \
    -d elasticsearch:8.4.3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    查看正在运行的elasticsearch容器。

    docker ps
    
    • 1

    在这里插入图片描述

    此时通过ip:port在浏览器上访问elasticsearch,弹出登录框,需要输入用户名和密码才能看见相关信息。
    在这里插入图片描述

    2.6 重置elasticsearch默认用户密码

    以root用户进入容器

    docker exec -ti -u root elasticsearch bash
    
    • 1

    在这里插入图片描述

    切换到bin目录,执行指令来重置密码。

    ./elasticsearch-setup-passwords* interactive
    
    • 1

    在这里插入图片描述
    在这里插入图片描述
    elasticsearch默认用户为elastic,重置之后密码为123456。

    2.7 访问elasticsearch

    通过ip:port在浏览器上访问elasticsearch,在登录框中输入用户名和密码,即可查看elasticsearch的配置信息。
    在这里插入图片描述
    至此,在docker中安装elasticsearch就成功了。

    3 Kibana搭建

    3.1 拉取镜像

    docker pull kibana:8.4.3
    
    • 1

    稍等片刻,通过查看镜像。

    docker images
    
    • 1

    在这里插入图片描述

    3.2 临时启动kibana

    docker run --name kibana -d -p 5601:5601 kibana:8.4.3
    
    • 1

    在这里插入图片描述

    复制kibana容器配置文件到磁盘目录

    docker cp kibana:/usr/share/kibana/config/ /home/kibana/
    
    • 1

    在这里插入图片描述

    授予kibana目录及子目录改文件及子文件所有权限
    在这里插入图片描述

    移除临时的kibana容器

    docker stop kibana
    docker rm kibana
    
    • 1
    • 2

    在这里插入图片描述

    3.3 修改kibana配置

    切换到/home/kibana目录,编辑kibana.yml。修改kibana的配置中的elasticsearch的ip地址,以及账号密码信息。
    在这里插入图片描述

    elasticsearch.hosts: [ "http://es ip:9200" ]
    elasticsearch.username: "kibana_system"
    elasticsearch.password: "123456"
    
    • 1
    • 2
    • 3

    3.4 正式启动kibana

    docker run -d \
    --name kibana \
    -v /home/kibana/kibana.yml:/usr/share/kibana/config/kibana.yml  \
    --network=es-net \
    --restart=always \
    -p 5601:5601  \
    kibana:8.4.3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述

    查看容器运行日志。

    docker logs kibana
    
    • 1

    在这里插入图片描述

    3.4 访问kibana

    在浏览器上输入ip:port访问kibana界面,登录账号为elasticsearch的账户信息,用户名elastic,密码123456。
    在这里插入图片描述
    在这里插入图片描述
    至此,elasticsearch + kibana的搭建就完成了。

  • 相关阅读:
    中国1,2-戊二醇行业研究与投资战略报告(2022版)
    js3day(数组操作,js冒泡排序,函数,调试窗口,作用域及作用域链,匿名函数,对象,Math对象)
    深入解析Python执行定时任务:从基础到高级
    MYSQL高可用架构之MHA实战(真实可用)
    java 对mybatis拦截Interceptor进行权限控制(条件修改),入参修改,返回修改
    运放:运放输入电压
    项目交互-选择器交互
    C++ -- 类型转换
    Catheon Gaming任命Activision Blizzard前亚太区负责人Mark Aubrey担任首席执行官
    经纬高坐标转东北天坐标
  • 原文地址:https://blog.csdn.net/weixin_44917045/article/details/127829633