Spring Boot连接ES,spring-boot-starter-data-elasticsearch。 必须为集群方式!否则报错!

报错:

None of the configured nodes are available

安装步骤: 进入 cd  /home

1.mkdir -p es/config

2.cd es

3.mkdir data1

4.mkdir data2

5.mkdir data3

6.firewall-cmd --add-port=9300/tcp

7.firewall-cmd --add-port=9301/tcp

8.mkdir  plugins1
9.mkdir plugins2

步骤解析:

1. 目录文件: 是用来挂载用的,同步配置文件。容器的和外部的同步。

3. 4. 5. 表示两个es外部挂载目录

6. 7. 防火墙设置

8. 9 存放分词插件

es1.yml

cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 192.168.91.66
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.91.66:9300","192.168.91.66:9301"]
discovery.zen.minimum_master_nodes: 1

es2.yml:

cluster.name: elasticsearch-cluster
node.name: es-node2
network.bind_host: 0.0.0.0
network.publish_host: 192.168.91.66
http.port: 9201
transport.tcp.port: 9301
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.91.66:9300","192.168.91.66:9301"]
discovery.zen.minimum_master_nodes: 1

步骤解析:

node.name: es-node1  集群中保证唯一
discovery.zen.minimum_master_nodes: 1  master节点有1个

伪集群的方式,两个配置文件这里是不一样的: 通过端口号区别不同的ES
http.port: 9200
transport.tcp.port: 9300 将上述两个配置文件放入到:es/config

启动:

容器1:

便于看:

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d  -p 9200:9200 -p 9300:9300 -p 5601:5601

-v  /home/es/config/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml

-v /home/es/plugins1:/usr/share/elasticsearch/plugins

-v /home/es/data1:/usr/share/elasticsearch/data --name ES01 elasticsearch

应该这样运行: 格式化

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d  -p 9200:9200 -p 9300:9300 -p 5601:5601 -v  /home/es/config/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml  -v /home/es/plugins1:/usr/share/elasticsearch/plugins   -v /home/es/data1:/usr/share/elasticsearch/data --name ES01 elasticsearch

解析: 设置jvm内存  端口号  挂载

容器2:

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9201:9201 -p 9301:9301

-v /home/es/config/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml

-v /home/es/plugins2:/usr/share/elasticsearch/plugins

-v /home/es/data2:/usr/share/elasticsearch/data --name ES02 elasticsearch

格式化指令:

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9201:9201 -p 9301:9301 -v /home/es/config/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml  -v /home/es/plugins2:/usr/share/elasticsearch/plugins  -v /home/es/data2:/usr/share/elasticsearch/data --name ES02 elasticsearch

注:如果ELK选的6.X版本的,那么需将data1 data2 data3 开启777权限=> chmod 777 data1 data2 data3

设置:

3.调高JVM线程数限制数量

在centos窗口中,修改配置sysctl.conf

vim /etc/sysctl.conf
加入如下内容:
vm.max_map_count=262144

启用配置:

sysctl -p

如果没有启动成功:

访问:

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

可以参考:https://blog.csdn.net/belonghuang157405/article/details/83301937

Docker搭建ES集群的更多相关文章

  1. 通过docker搭建ELK集群

    单机ELK,另外两台服务器分别有一个elasticsearch节点,这样形成一个3节点的ES集群. 可以先尝试单独搭建es集群或单机ELK https://www.cnblogs.com/lz0925 ...

  2. Elasticsearch使用系列-Docker搭建Elasticsearch集群

    Elasticsearch使用系列-ES简介和环境搭建 Elasticsearch使用系列-ES增删查改基本操作+ik分词 Elasticsearch使用系列-基本查询和聚合查询+sql插件 Elas ...

  3. Docker 搭建 etcd 集群

    阅读目录: 主机安装 集群搭建 API 操作 API 说明和 etcdctl 命令说明 etcd 是 CoreOS 团队发起的一个开源项目(Go 语言,其实很多这类项目都是 Go 语言实现的,只能说很 ...

  4. Docker搭建PXC集群

    如何创建MySQL的PXC集群 下载PXC集群镜像文件 下载 docker pull percona/percona-xtradb-cluster 重命名 [root@hongshaorou ~]# ...

  5. Docker搭建RabbitMQ集群

    Docker搭建RabbitMQ集群 Docker安装 见官网 RabbitMQ镜像下载及配置 见此博文 集群搭建 首先,我们需要启动运行RabbitMQ docker run -d --hostna ...

  6. docker搭建etcd集群环境

    其实关于集群网上说的方案已经很多了,尤其是官网,只是这里我个人只有一个虚拟机,在开发环境下建议用docker-compose来搭建etcd集群. 1.拉取etcd镜像 docker pull quay ...

  7. docker 搭建zookeeper集群和kafka集群

    docker 搭建zookeeper集群 安装docker-compose容器编排工具 Compose介绍 Docker Compose 是 Docker 官方编排(Orchestration)项目之 ...

  8. 使用Docker搭建Spark集群(用于实现网站流量实时分析模块)

    上一篇使用Docker搭建了Hadoop的完全分布式:使用Docker搭建Hadoop集群(伪分布式与完全分布式),本次记录搭建spark集群,使用两者同时来实现之前一直未完成的项目:网站日志流量分析 ...

  9. 使用Docker搭建Hadoop集群(伪分布式与完全分布式)

    之前用虚拟机搭建Hadoop集群(包括伪分布式和完全分布式:Hadoop之伪分布式安装),但是这样太消耗资源了,自学了Docker也来操练一把,用Docker来构建Hadoop集群,这里搭建的Hado ...

随机推荐

  1. 存储型XSS靶场作业

    首先进入靶场:http://59.63.200.79:8082/index.php xss平台使用:xss8c 发现CMS版本号,搜索是否此版本号存在可利用漏洞: 找到存储型xss漏洞,在xss平台生 ...

  2. X509IncludeOption 枚举

    X509IncludeOption 枚举 指定 X.509 数据应包括 X.509 证书链的哪些内容. EndCertOnly 2 X.509 链信息中仅包括最终证书. ExcludeRoot 1 包 ...

  3. maven mvn跳过生成javadoc 打包报错

    遇到javadoc用maven打包报错的问题,起初没发现javadoc,后发现并在pom看到了javadoc的配置. [ERROR] Failed to execute goal org.apache ...

  4. Go - IDE的选择与GoLand的安装

    目录 常用编辑器的选择 IDE的选择 GoLand的下载与安装 下载 安装 常用编辑器的选择 编写go程序,可以选择的编辑软件有很多,其中包括: notepad++ sublime visual st ...

  5. 《exception》第九次团队作业:Beta冲刺与验收准备(第一天)

    一.项目基本介绍 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 Exception 作业学习目标 1.掌握软件黑盒测试技术:2.学会编制软件项目 ...

  6. MyBatis框架的基本要素-核心接口和类的作用范围

    通过上面运行案例-查询用户表中的记录数. 非集成环境下的最佳作用域范围: SqlSessionFactoryBuilder 用过即丢,推荐作用域在方法体内. SqlSessionFactory 最佳作 ...

  7. Dubbo源码分析:ChannelHandler

    背景 一个请求经过序列化二进制数据转化成对象之后.请求进入netty框架,netty框架经过业务处理把主动权转交给NettyHandler对象.NettyHandler进入ChannelHandler ...

  8. springboot 打成的jar包在ClassLoader().getResource方法读取文件为null

    1.属性文件如下: 10001=错误 2.文件读取主要代码 // getResource方式 URL resourceURI = getClass().getClassLoader().getReso ...

  9. javaWeb开发中entityBean的习惯用法

    entity bean的作用是将与数据库交互的过程封装成对象,在servelet编写的过程中,只需要会写java,不必考虑与数据库交互细节. 实体类: 基本与数据库的表相对应,表示一个实在的对象. 例 ...

  10. 2019-2020-1 20199302《Linux内核原理与分析》第八周作业

    一.上课学习笔记 1.shell作用:①运行程序 ②重定向(输入/输出重定向) ③可编程(写脚本) 执行一个c程序时,如果切进另一个进程,会进入该进程而切不回原进程,所以需要为调用的进程创一个子进程. ...