小工具知识网

当前位置: 首页 > 行业知识 > 【elk-day01】es和kibana搭建及验证---Mac-Docker

行业知识

【elk-day01】es和kibana搭建及验证---Mac-Docker

2026-11-08 18:34:43 来源:互联网转载

Mac系统使用Docker下载搭建和验证es+kibana

  • Docker下载安装
  • es安装
  • es验证
  • kibana安装
  • kibana验证

    Docker下载安装

    Docker Desktop官网安装下载地址

    说明一下为什么要安装desktop版本的docker,因为docker作为工具使用,我们需要的是开箱即用,没有必要非得整那种dockerserver什么的手动进行安装,一大堆配置很麻烦,这个desktop很适合新手使用,查看管理镜像和容器非常方便

    • 下载完之后打开docker.dmg文件,将docker的图标拖动至application
    • 打开application中的docker程序,不知道怎么打开的,快捷键command+空格出现搜索框,搜索docker,然后选择刚刚安装的docker图标按回车,等一会,会打开dockerdesktop的界面,第一次用docker的话就按照默认选择直接安装即可,建一最好创建登陆自己的账号,这样以后换电脑还能同步一些数据

      es安装

      • 按照如下方式搜索选择镜像进行下载,新手建议选择官方镜像,我这里选择的是最新8.11.3版本
      • 这里不要着急在desktop中直接点击运行按钮,最好是通过命令行进行一些配置,例如最基本的端口映射,文件挂载等,这样方便后期找文件和访问方便不受限制
      • 创建es的挂载文件,这里根据个人喜好进行创建

        创建挂载文件夹

        $ mkdir -p ~/es/data$ mkdir -p ~/es/plugins$ mkdir -p ~/es/logs$ cd ~$ pwd

        创建docker专属网络

        $ docker network create elastic90c5589fffadaaa93e0e66c917458607e81b79d837647ee80eb38c4922d2162f
        • 执行如下命令来启动es注意这里-v的路径换成 自己~文件夹路径

          端口说明

          9200:外部访问使用

          9300:集群间相互通信使用

          $ docker run -d \  --name es \  --net elastic \    -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \    -e "discovery.type=single-node" \    -v es-data:/Users/mrhan/es/data \    -v es-plugins:/Users/mrhan/es/plugins \    -v es-logs:/Users/mrhan/es/logs \    --privileged \    -p 9200:9200 \    -p 9300:9300 \elasticsearch:8.11.383048519c39945c30c2bf34465a20500e73fc559ba4f5f5178a366ea2786def5

          启动成功后会在desktop中看到已经启动的容器

          也可以通过命令行查看正在运行中的容器

          $ docker psCONTAINER ID   IMAGE                  COMMAND                   CREATED         STATUS         PORTS                                            NAMES83048519c399   elasticsearch:8.11.3   "/bin/tini -- /usr/l…"   3 minutes ago   Up 3 minutes   0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp   es

          es验证

          • 注意es8.0默认开启了ssl认证,因此验证的时候http是验证不通过的,需要在浏览器中输入https的地址:https://127.0.0.1:9200/

            这里需要输入默认的账号密码,但是由于我们是通过docker启动,好像没有看到他的日志,不要慌,我们有两种办法可以解决这个问题,一个就是重置密码,一个就是关闭登录校验

            建议重置密码不要关闭登录校验

            • 重置密码
              #执行以下命令进入容器$ docker exec -it es /bin/bash#进入容器之后执行以下命令:bin/elasticsearch-reset-password -u elasticelasticsearch@83048519c399:~$ bin/elasticsearch-reset-password -u elasticWARNING: Owner of file [/usr/share/elasticsearch/config/users] used to be [root], but now is [elasticsearch]WARNING: Owner of file [/usr/share/elasticsearch/config/users_roles] used to be [root], but now is [elasticsearch]This tool will reset the password of the [elastic] user to an autogenerated value.The password will be printed in the console.Please confirm that you would like to continue [y/N]yPassword for the [elastic] user successfully reset.New value: O+PLWc9U=UUFDIOc1P6K

              接下来正常登录就会看到如下结果

              账号:elastic

              密码:O+PLWc9U=UUFDIOc1P6K

              • 关闭认证
                elasticsearch@db7a23c3ac34:~$ lsLICENSE.txt  README.asciidoc  config  jdk  logs     pluginsNOTICE.txt   bin              data    lib  moduleselasticsearch@db7a23c3ac34:~$ cd configelasticsearch@db7a23c3ac34:~/config$ lscerts                              jvm.options             role_mapping.ymlelasticsearch-plugins.example.yml  jvm.options.d           roles.ymlelasticsearch.keystore             log4j2.file.properties  userselasticsearch.yml                  log4j2.properties       users_roleselasticsearch@db7a23c3ac34:~/config$ vi elasticsearch.yml

                打开文件如下:

                cluster.name: "docker-cluster"network.host: 0.0.0.0#----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------## The following settings, TLS certificates, and keys have been automatically# generated to configure Elasticsearch security features on 27-12-2023 06:53:43## --------------------------------------------------------------------------------# Enable security features#是否需要账号密码xpack.security.enabled: true#注册时是否需要账号密码xpack.security.enrollment.enabled: true# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agentsxpack.security.http.ssl:  enabled: true  keystore.path: certs/http.p12# Enable encryption and mutual authentication between cluster nodesxpack.security.transport.ssl:  enabled: true  verification_mode: certificate  keystore.path: certs/transport.p12  truststore.path: certs/transport.p12#----------------------- END SECURITY AUTO CONFIGURATION -------------------------

                修改上述文件中的以下配置为false就可以了,然后重启服务

                xpack.security.enabled: falsexpack.security.enrollment.enabled: false

                访问地址不需要账号密码:https://127.0.0.1:9200/

                至此es安装成功!!!

                kibana安装

                • 在这里找到跟es同版本的kibana点击pull
                • 执行以下命令启动kibana:
                  $ docker run -d \  --name kibana \  --net elastic \    -p 5601:5601 \kibana:8.11.3261b2a93006751bb2aba76482676d85c9e69617a9b467977891ca455582388e6

                  kibana验证

                  • 访问kibana页面:http://localhost:5601/

                  • 这里发现需要填写一个token

                  • 这里发现需要填写一个token,这个token生成命令如下

                    $ docker exec -it es /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibanaeyJ2ZXIiOiI4LjExLjMiLCJhZHIiOlsiMTcyLjE4LjAuMjo5MjAwIl0sImZnciI6IjQzNDJiYTg0MGM1NmFmYjRmMTIxYTk1NDc4NDA0NmQ0M2JjMmEzZjAzNGMwMWNlMmI0NGM2NmEzMzBkZGQyMTIiLCJrZXkiOiJZdWVJcW93QlJFTnpLN3ZxdFR1XzpWTDFEZXlMM1FFMnowbUZMTXVpUmR3In0=
                    • 将令牌填入上图的Enrollment token中,会来到以下页面需要您填写一个验证码:
                    • 获取验证码过程如下:
                      docker psCONTAINER ID   IMAGE                  COMMAND                   CREATED          STATUS          PORTS                                            NAMES261b2a930067   kibana:8.11.3          "/bin/tini -- /usr/l…"   8 minutes ago    Up 8 minutes    0.0.0.0:5601->5601/tcp                           kibana83048519c399   elasticsearch:8.11.3   "/bin/tini -- /usr/l…"   24 minutes ago   Up 24 minutes   0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp   es#这里要将261b2a930067替换成自己电脑上的kibana的container Id ~/es  docker exec -it 261b2a930067 bashkibana@261b2a930067:~$ bin/kibana-verification-codeKibana is currently running with legacy OpenSSL providers enabled! For details and instructions on how to disable see https://www.elastic.co/guide/en/kibana/8.11/production.html#openssl-legacy-providerYour verification code is:  350 931

                      接下来会看到登录页面登录前文es的账号密码即可

                      账号:elastic

                      密码:O+PLWc9U=UUFDIOc1P6K

                      登录成功之后会看到欢迎界面,至此es和kibana已经全部安装链接成功,后续使用一般点击explore on my own 自行使用就可以了

上一篇:坦克世界服务器怎么更换

下一篇:刀片服务器怎么切换?