使用docker安装elastic search[ES]和kibana

这篇具有很好参考价值的文章主要介绍了使用docker安装elastic search[ES]和kibana。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

安装目标

使用docker安装elastic search和kibana,版本均为7.17.1

安装es

  1. docker pull#
    去dockerhub看具体版本,这里用7.17.1
docker pull elasticsearch:7.17.1 
docker pull kibana:7.17.1
  1. 临时安装生成文件#
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms256m -Xmx256m" elasticsearch:7.17.1

参数说明

-d 后台启动
–name 起别名即:NAMES
-p 9200:9200 将端口映射出来
elasticsearch的9200端口是供外部访问使用;9300端口是供内部访问使用集群间通讯
-e “discovery.type=single-node"单节点启动
-e ES_JAVA_OPTS=”-Xms256m -Xmx256m" 限制内存大小
确保成功启动

docker ps
  1. 设置外部数据卷#
mkdir -p /data/elasticsearch/{config,data,logs,plugins} yml

将容器内文件拷贝出来


docker cp elasticsearch:/usr/share/elasticsearch/config /data/elasticsearch 
docker cp elasticsearch:/usr/share/elasticsearch/logs /data/elasticsearch 
docker cp elasticsearch:/usr/share/elasticsearch/data /data/elasticsearch 
docker cp elasticsearch:/usr/share/elasticsearch/plugins /data/elasticsearch

设置elasticsearch.yml的内容

vi /data/elasticsearch/config/elasticsearch.yml

确保有以下几个配置,原有的配置可以不改动

cluster.name: "docker-cluster"
network.hosts:0.0.0.0
# 跨域
http.cors.allow-origin: "*"
http.cors.enabled: true
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
  1. 停止并删除临时容器#
docker stop elasticsearch 
docker rm elasticsearch
  1. 重新起容器并挂载外部文件夹#
docker run -d --name elasticsearch \
-p 9200:9200 \
-p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms256m -Xmx256m" \
-v /data/elasticsearch/logs:/usr/share/elasticsearch/logs \
-v /data/elasticsearch/data:/usr/share/elasticsearch/data \
-v /data/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-v /data/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
elasticsearch:7.17.1

等docker容器起来一分钟左右,再访问9200 端口,会返回

[root@iZuf6ai62xce7wexx4wwi9Z config]# curl "http://localhost:9200"
{
  "name" : "6a1036c69d59",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "0zgLiGhESGKQYTYy9gH4iA",
  "version" : {
    "number" : "7.17.1",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "e5acb99f822233d62d6444ce45a4543dc1c8059a",
    "build_date" : "2022-02-23T22:20:54.153567231Z",
    "build_snapshot" : false,
    "lucene_version" : "8.11.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}
[root@iZuf6ai62xce7wexx4wwi9Z config]#

安装kibana

  1. 运行临时容器#
docker run -d --name kibana -p 5601:5601 kibana:7.17.1
  1. 创建本地挂载文件#
mkdir -p /data/kibana/config docker cp kibana:/usr/share/kibana/config /data/kibana/

在本地就能看到拷贝出来的kibana.yml文件,


vim /data/kibana/config/kibana.yml

修改配置为

#
# ** THIS IS AN AUTO-GENERATED FILE **
#

# Default Kibana configuration for docker target
server.host: "0"
server.shutdownTimeout: "5s"
elasticsearch.hosts: [ "http://localhost:9200" ] # 记得修改ip
monitoring.ui.container.elasticsearch.enabled: true
i18n.locale: "zh-CN"
  1. 停掉临时容器并重新启动#
    停掉旧的
docker stop kibana docker rm kibana

重新启动挂载了地址的新的容器


docker run -d --name kibana -p 5601:5601 -v /data/kibana/config:/usr/share/kibana/config kibana:7.17.1
  1. 进入elasticsearch容器获取token#

docker exec -it {elastic_search_container_id} /bin/bash bin/elasticsearch-create-enrollment-token --scope kibana

拷贝token到kibana的ui上输入
5. 进入kibana容器获取验证码#
进入kibana容器获取token


docker exec -it kibana /bin/bash # 执行生成验证码命令 bin/kibana-verification-code
  1. 重置elastic密码#
    进入es容器

docker exec -it {elastic_search_container_id} /bin/bash bin/elasticsearch-reset-password --username elastic -i

后面就使用elastic账户和密码登录kibana

为es和kibana设置密码
es开启x-pack


vim /data/elasticsearch/config/elasticsearch.yml

增加以下xpack.security.enabled

cluster.name: "docker-cluster-01"
network.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type

# 此处开启xpack
xpack.security.enabled: true

重启es容器


docker restart elasticsearch

进入es容器修改密码


docker exec -ti elasticsearch /bin/bash /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive

然后会分别让重置以下的密码,这里重置成123456

Initiating the setup of passwords for reserved users elastic,apm_system,kibana,kibana_system,logstash_system,beats_system,remote_monitoring_user.
You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]y


Enter password for [elastic]:
passwords must be at least [6] characters long
Try again.
Enter password for [elastic]:
Reenter password for [elastic]:
Enter password for [apm_system]:
Reenter password for [apm_system]:
Enter password for [kibana_system]:
Reenter password for [kibana_system]:
Enter password for [logstash_system]:
Reenter password for [logstash_system]:
Enter password for [beats_system]:
Reenter password for [beats_system]:
Enter password for [remote_monitoring_user]:
Reenter password for [remote_monitoring_user]:
Changed password for user [apm_system]
Changed password for user [kibana_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]

重置完毕之后带上用户就可以访问了

[root@k8s-master ~]# curl localhost:9200 -u elastic
Enter host password for user 'elastic':
{
  "name" : "cd52e7fbacd1",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "0S-V9zElSie_zXtcDRssAQ",
  "version" : {
    "number" : "8.1.2",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "31df9689e80bad366ac20176aa7f2371ea5eb4c1",
    "build_date" : "2022-03-29T21:18:59.991429448Z",
    "build_snapshot" : false,
    "lucene_version" : "9.0.0",
    "minimum_wire_compatibility_version" : "7.17.0",
    "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "You Know, for Search"
}
[root@k8s-master ~]#

修改kibana的密码#
修改配置文件


vi /data/kibana/config/kibana.yml
#
# ** THIS IS AN AUTO-GENERATED FILE **
#

# Default Kibana configuration for docker target
server.host: "0"
server.shutdownTimeout: "5s"
elasticsearch.hosts: [ "http://172.17.0.3:9200" ]
monitoring.ui.container.elasticsearch.enabled: true
i18n.locale: "zh-CN"
# 此处设置elastic的用户名和密码
elasticsearch.username: elastic
elasticsearch.password: "123456"

重启容器


docker restart kibana

安装elastic-head
docker run -d \
--name=elasticsearch-head \
-p 9100:9100 \
mobz/elasticsearch-head:5-alpine

连接集群 不能连localhost:9200,而是


http://{ip}:9200/

后续带x-pack的认证信息的访问
url上带上用户名密码

http://{ip}:9100/?auth_user=elastic&auth_password=123456

转自:https://www.cnblogs.com/baoshu/p/16128127.html#1-%E8%BF%90%E8%A1%8C%E4%B8%B4%E6%97%B6%E5%AE%B9%E5%99%A8文章来源地址https://www.toymoban.com/news/detail-626008.html

到了这里,关于使用docker安装elastic search[ES]和kibana的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker安装部署ElasticSearch(ES)

    用于在宿主机挂载日志,数据等内容 创建/opt/es/data目录 创建/opt/es/logs目录 创建/opt/es/plugins目录 创建/opt/es/conf目录 内容 运行成功 URL:IP:9200 出现以下画面即可

    2024年02月09日
    浏览(33)
  • ES 安装、search、index、doc

    https://www.elastic.co/cn/ 下载 https://www.elastic.co/cn/downloads/past-releases/elasticsearch-8-5-3 https://www.elastic.co/cn/downloads/past-releases/kibana-8-5-3 解压,点击 D:elasticsearch-8.5.3binelasticsearch.bat 启动后会报错 修改配置 \\\"D:elasticsearch-8.5.3configelasticsearch.yml\\\" 配置文件会多出来一些配置 学习环境下

    2024年02月06日
    浏览(20)
  • ES(Elasticsearch)的docker安装部署教程

    Red Hat 4.8.5-44 CentOS Linux release 7.9.2009 (Core) java version \\\"1.8.0_281\\\" Docker version 20.10.6, build 370c289 1.1  拉取docker镜像 拉取成功的镜像,可以使用如下命令查看: 注:上图2年之前表示该elasticsearch的7.10.1镜像版本是2年前制作的。 1.2 创建es挂载目录 mkdir data cd /data         mkdir elast

    2024年02月10日
    浏览(30)
  • docker安装部署Elasticsearch(ES)以及相关配置

    mysql用作持久化存储,ES用作检索 基本概念:index库type表document文档 index索引(相当于MySQL的数据库) 动词:相当于mysql的insert 名词:相当于mysql的db Type类型(相当于MySQL的数据表) 在index中,可以定义一个或多个类型 类似于mysql的table,每一种类型的数据放在一起 Document文档

    2024年01月16日
    浏览(30)
  • Docker上安装部署Elasticsearch(ES)详细教程

     前言  ElasticSearch(简称ES) 是一个支持海量搜索引擎服务,当一个分布式系统需要支持海量搜索服务时都会优先上ES。因此掌握ES技术也是一门进入大厂拿高薪的必修课,笔者一直在追求深入掌握ES技术,一方面希望自己有机会还能进大厂并站稳脚跟。退一步讲就算进不了大

    2024年02月04日
    浏览(39)
  • DEB方式安装elastic search7以及使用

    参考:https://www.cnblogs.com/anech/p/15957607.html 1、安装elastic search7 #手动下载安装 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.1-amd64.deb wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.1-amd64.deb.sha512 shasum -a 512 -c elasticsearch-7.17.1-amd64.deb.sha512  sudo dpkg -i elas

    2024年01月23日
    浏览(38)
  • 使用Docker快速部署ES单机

    所有的操作都是基于Docker来的,没有装Docker的话请参照官方文档安装 初始化相关目录 准备配置文件 将下面的内容粘贴到elasticsearch.yml 修改系统设置 修改该配置是为了防止es在启动时出现下面的错误 添加ik分词器 ik分词器为常用的中文分词器,如果你不需要用到中文搜索,这

    2024年02月11日
    浏览(33)
  • Docker 安装 nginx 和 tomcat 并部署 es + kibana 和可视化

             Portainer 是 Docker 的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、 Swarm 集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分

    2024年02月17日
    浏览(34)
  • 使用docker安装es集群

    配置es并且启动(主要是配置数据卷和配置文件) es1.yml的配置如下: 这里并没有安装xpack插件,因为我们这里仅仅是先学习es的常用功能,所以暂时是没有配置xpack。 同样的es2.yml,es3.yml如下 es2.yml es3.yml 调整jvm限制 开启端口 验证 结果如图所示: 访问页面 http://ip:9100/ 如图所示:

    2024年02月07日
    浏览(26)
  • Docker 安装 nginx 和 tomcat 并部署 es + kibana 和可视化(四)

             Portainer 是 Docker 的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、 Swarm 集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分

    2024年02月16日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包