docker搭建Elasticsearch集群

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

1.拉取es镜像

 docker pull docker.elastic.co/elasticsearch/elasticsearch:7.17.0

版本根据自己需求进行拉取,我这边选择的是7.17.0,不同版本配置可能稍有差别!

2.配置配置文件

采用文件挂载的方式,采用宿主机配置文件,本文采用的三台主机搭建集群,每一台主机的配置稍有区别!
主机一:

# es1
# 主master配置样例子
# 集群的名称
cluster.name: "docker-cluster"
# 节点的名称
node.name: node-1
# 此节点是否可以用作master节点
node.master: true
# 此节点是否是存储节点
node.data: false
# 此节点是否是预处理节点 如果是master节点的话 建议这里是true
node.ingest: true
# 
network.host: 0.0.0.0
# 配置端口
http.port: 9200
# 集群通信端口
transport.port: 9300
# 集群内节点信息 每个节点会共享自己的此参数
# 这里我配置自己的dockerIP
discovery.seed_hosts: ["172.17.0.2:9300","172.17.0.3:9300","172.17.0.4:9300"]
# 集群的master候选节点目录。只有在初始化的时候才生效。
# 这里只写node-1 并且配置这个参数 是用于快速搭建集群。集群已启动自动node-1   是master
cluster.initial_master_nodes: ["node-1"]
# cross 跨域访问 配置这个之后 head就可以用了
http.cors.enabled:  true
http.cors.allow-origin:  "*"

主机二:

# es2
# 从节点配置样例子
# 集群的名称
cluster.name: "docker-cluster"
# 节点的名称
node.name: node-2
# 此节点是否可以用作master节点
node.master: true
# 此节点是否是存储节点
node.data: true
# 此节点是否是预处理节点 如果是master节点的话 建议这里是true
node.ingest: true
# 
network.host: 0.0.0.0
# 配置端口
http.port: 9200
# 集群通信端口
transport.port: 9300
# 集群内节点信息 每个节点会共享自己的此参数
# 这里我配置自己的dockerIP
discovery.seed_hosts: ["172.17.0.2:9300","172.17.0.3:9300","172.17.0.4:9300"]
# 集群的master候选节点目录。只有在初始化的时候才生效。
# 这里只写node-1 并且配置这个参数 是用于快速搭建集群。集群已启动自动node-1   是master
cluster.initial_master_nodes: ["node-1"]
# cross 跨域访问 配置这个之后 head就可以用了
http.cors.enabled:  true
http.cors.allow-origin:  "*"

主机三:

# es3
# 从节点配置样例子
# 集群的名称
cluster.name: "docker-cluster"
# 节点的名称
node.name: node-3
# 此节点是否可以用作master节点
node.master: true
# 此节点是否是存储节点
node.data: true
# 此节点是否是预处理节点 如果是master节点的话 建议这里是true
node.ingest: true
# 
network.host: 0.0.0.0
# 配置端口
http.port: 9200
# 集群通信端口
transport.port: 9300
# 集群内节点信息 每个节点会共享自己的此参数
# 这里我配置自己的dockerIP
discovery.seed_hosts: ["172.17.0.2:9300","172.17.0.3:9300","172.17.0.4:9300"]
# 集群的master候选节点目录。只有在初始化的时候才生效。
# 这里只写node-1 并且配置这个参数 是用于快速搭建集群。集群已启动自动node-1   是master
cluster.initial_master_nodes: ["node-1"]
# cross 跨域访问 配置这个之后 head就可以用了
http.cors.enabled:  true
http.cors.allow-origin:  "*"

3.启动容器

# 我自己的镜像版本是7.17.0
# 必须限制es内存的大小 es默认内存是4g 单机docker模拟的话 不限制内存 资源是不够的
docker run -d  --name es1 -e ES_JAVA_OPTS="-Xms156m -Xmx156m" -p 9200:9200 -p 9300:9300 -v /Users/es/es1/e1.yml:/usr/share/elasticsearch/config/elasticsearch.yml   elasticsearch:7.17.0

docker run -d  --name es2 -e ES_JAVA_OPTS="-Xms156m -Xmx156m" -p 9201:9200 -p 9301:9300 -v /Users/es/es2/e2.yml:/usr/share/elasticsearch/config/elasticsearch.yml   elasticsearch:7.17.0

docker run -d  --name es3 -e ES_JAVA_OPTS="-Xms156m -Xmx156m" -p 9201:9200 -p 9301:9300 -v /Users/es/es2/e3.yml:/usr/share/elasticsearch/config/elasticsearch.yml   elasticsearch:7.17.0

-v /Users/es/es1/e1.yml:/usr/share/elasticsearch/config/elasticsearch.yml
-v是挂载,将宿主机 /Users/es/es1/e1.yml挂载到/usr/share/elasticsearch/config/elasticsearch.yml,根据自己的实际目录自行设置,-p是端口映射,切记端口不可已被占用!

使用ss -nlt 查看端口是否已启动
elasticsearch集群 docker的安装部署,ELK,elasticsearch,docker,大数据,云计算,运维

4.启动过程中遇到的问题

运行elasticsearch时连接时显示已拒绝连接,容器自动关闭的问题
通过docker logs -f CONTAINER ID 查看容器日志信息,看最后面发现一个error:

ERROR: [1] bootstrap checks failed
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least

显示max_map_count的值太小了,需要设大到262144,此时查看max_map_count :

cat /proc/sys/vm/max_map_count
65530

设置max_map_count:

sysctl -w vm.max_map_count=262144
vm.max_map_count = 262144

重启容器:

docker start  容器id或名字

如果重新构建需要删除或者更改容器名称,否则会报错,可以执行docker rm -f $(docker ps -a -q) ,删除所有已退出的容器

5.查看容器启动情况

访问的ip地址需要更改为集群所在宿主机的ip地址

http://127.0.0.1:9200/_cat/nodes?pretty

elasticsearch集群 docker的安装部署,ELK,elasticsearch,docker,大数据,云计算,运维

elasticsearch集群 docker的安装部署,ELK,elasticsearch,docker,大数据,云计算,运维
安装elasticsearch Head 插件!
elasticsearch集群 docker的安装部署,ELK,elasticsearch,docker,大数据,云计算,运维
添加集群ip地址就可以查看详细的集群信息,同时可以对集群进行操作!
elasticsearch集群 docker的安装部署,ELK,elasticsearch,docker,大数据,云计算,运维文章来源地址https://www.toymoban.com/news/detail-782184.html

到了这里,关于docker搭建Elasticsearch集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Elasticsearch 7.10.2 部署集群搭建

    官方网站查看下载地址 Download Elasticsearch | Elastic 修改es配置 修改jvm相关配置 修改elasticsearch.yml #节点名字 node.name: node-2 #端口 http.port: 19202 #节点名字 node.name: node-3 #端口 http.port: 19203

    2024年02月14日
    浏览(41)
  • linux安装搭建配置docker,mysql,nacos,redis哨兵集群,kafka,elasticsearch,kibana,IK分词器,安装Rabbitmq,安装并配置maven

    目录 搭建docker 1.2安装yum工具  1.3更新阿里镜像源 1.4下载docker 1.5关闭防火墙 1.6启动docker 1.7查看docker版本 1.8配置阿里云镜像 1.8.1 创建文件夹 1.8.2在文件夹内新建一个daemon.json文件 1.8.3重载文件 1.9重启docker 2安装MySQL 3安装nacos 3.1拉取nacos镜像并启动 3.2启动nacos命令 3.3命令敲完

    2024年02月03日
    浏览(49)
  • docker compose搭建elasticsearch7集群

    一、集群介绍 系统环境:Centos7.5 服务器节点: 主机名 IP hadoop03 192.168.1.153 hadoop04 192.168.1.154 hadoop05 192.168.1.155 二、环境准备 1、安装docker:略过 2、安装docker compose 1)使用官方推荐方式(此方式需服务器翻外网) 2)自行下载         由于服务器连不上Github,因此手动下载

    2024年02月03日
    浏览(47)
  • Docker部署Elasticsearch集群并开启安全设置

    部署了docker的centos 两或者三台服务器部署elasticsearch ip1、ip2 安装ik分词器 将配置文件copy出来,放在到挂在路径 elasticsearch.yml 替换好新的配置文件 安全性处理:基于上述已经在运行的容器之上,在主机上执行此运行方式即可 获取p12文件 打开安全设置 elasticsearch.yml 开启安全配

    2024年02月09日
    浏览(31)
  • 服务搭建篇(七) Elasticsearch单节点部署以及多节点集群部署

    感兴趣的话大家可以关注一下公众号 : 猿人刘先生 , 欢迎大家一起学习 , 一起进步 , 一起来交流吧! Elasticsearch(简称ES) 是一个分布式 , RESTful风格的搜索和数据分析引擎 , 使用java开发并且是当前最流行的开源的企业级搜索引擎,能够达到近实时搜索,稳定,可靠,快速,安装使

    2024年02月03日
    浏览(51)
  • docker部署Elasticsearch7.17集群和kibana

    环境准备: 3台centos7.9的服务器 vim /etc/sysctl.conf添加:vm.max_map_count=262144 sysctl -w vm.max_map_count=262144 即时生效 cat /proc/sys/vm/max_map_count 查看 #创建es配置目录 mkdir /home/es/config -p #创建es数据目录 mkdir /home/es/data #创建es插件目录 mkdir /home/es/plugins #授权目录 chmod -R 777 /home/es 在/home/e

    2024年02月10日
    浏览(39)
  • ElasticSearch8集群的安装部署

    一、搭建集群的环境配置: 本集群使用Centos7.6操作系统,8G 4C 80G Linux 6版本不支持安装ES8版本 ES8版本以上的都自带JDK 二、集群安装规划如下: 机器地址 节点名称 节点角色 节点功能 10.1.80.94 node-1 Master,data 主+数据节点 10.1.80.95 node-2 Master,data 主+数据节点 10.1.80.96 node-3 Master,

    2023年04月09日
    浏览(44)
  • ElasticSearch 8.x 安装及集群搭建

    网上查询了一下Elasticsearch,这里终结一下,仅供参考。         Elasticsearch,简称为ES。 ES是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据。         Elasticsearch是面向文档的一种数据库,这意味着其不再需要行列式的表格字段约束。   

    2024年02月04日
    浏览(34)
  • elasticsearch 8.3版本安装和集群部署

    我跟着一些网页教程提示部署我的集群,发现我集群里面的服务器互相看不到,于是咨询了我的老师,加上自己的实验终于成功了。因为之前网上找的参数和我的版本没对上,导致起不来,我这个集群服务器版本是8.3.1 1 开始安装elasticsearch ,导入gpg-key 2 建elasticsearch 的yum仓库

    2023年04月27日
    浏览(43)
  • docker-compose搭建elasticsearch 8.6.0集群 —— 筑梦之路

    docker-compose.yml es1.yml es2.yml es3.yml kibana.yml 参考资料: docker-compose 搭建elasticsearch 集群及kibana - 简书 更新_Docker安装ElasticSearch8.6.0 Docker安装ElasticSearch8.6.0

    2024年02月13日
    浏览(29)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包