1、集群结构

ES 通常以集群方式工作、以提高搜索性能、容错能力、高可用、实现PB级数据搜索。

相关概念:

(1)结点: ES集群由多台ES服务器组成、每个ES 服务端就是个一个NODE结点

(2)分片:由于硬盘限制,为提高ES处理数据量、将索引进行分片、分片后将其放在不同结点、实现多个服务端共同对外提供索引及搜索服务

(3)副本:将分片备份出来存储在其他服务端,实现高可用

(4)主节点:用于管理集群,如增删节点、一个集群中至少有一个主节点,可有多个,主节点挂了ES 会重新选一主节点

(5)节点转发:每一个节点都知道其他节点的信息,我们可以向任何一个节点发请求,当当前节点分片恰好没有数据时会自动转发给其他节点查询数据

(6)节点角色:节点分为三个角色,使其承担不同功能

①主节点(master):用于集群管理、如新增节点、分片分配、索引新增、删除等

②数据节点(data): 保存数据分片、服务索引、搜索

③客户端节点(client):  仅作为请求客户端存在,复制负载均衡、不保存数据、只做请求转发

(7)节点角色的四种组合方式

master=true ,data=true : 主节点、数据节点

master=false,data=ture: 仅做数据节点

master=true,data=false: 仅做主节点

master=false,data=false: 客户端节点

2、搭建集群

实现创建一个2结点的集群,每个节点都是master:true ,data:true ,让其自动选举真正的主节点。

结点1:

elasticsearch.yml

# ======================== Elasticsearch Configuration =========================
# ---------------------------------- Cluster -----------------------------------
#集群名称
cluster.name: xuecheng
# ------------------------------------ Node ------------------------------------
#节点名,通常一台物理机就是一个节点
node.name: xc_node-1
node.master: true
node.data: true #即是主节点又是数据及诶单
node.max_local_storage_nodes: 2
node.ingest: true # ----------------------------------- Paths ------------------------------------
path.data: D:/keil/elasticsearch-6.2.1/data
path.logs: D:/keil/elasticsearch-6.2.1/logs # ----------------------------------- Memory -----------------------------------
#true锁定ES使用的内存,避免内存与swap分区交换数据
bootstrap.memory_lock: false # ---------------------------------- Network -----------------------------------
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
# --------------------------------- Discovery ----------------------------------
discovery.zen.minimum_master_nodes: 1
discovery.zen.ping.unicast.hosts: ["0.0.0.0:9300","0.0.0.0:9301"] # ---------------------------------- Gateway -----------------------------------
http.cors.enabled: true
http.cors.allow-origin: /.*/

节点2:

elasticsearch.yml

# ======================== Elasticsearch Configuration =========================
# ---------------------------------- Cluster -----------------------------------
#集群名称
cluster.name: xuecheng
# ------------------------------------ Node ------------------------------------
#节点名,通常一台物理机就是一个节点
node.name: xc_node-2
node.master: true
node.data: true #即是主节点又是数据节点
node.max_local_storage_nodes: 2
node.ingest: true # ----------------------------------- Paths ------------------------------------
path.data: D:/keil/elasticsearch-6.2.1/data
path.logs: D:/keil/elasticsearch-6.2.1/logs # ----------------------------------- Memory -----------------------------------
#true锁定ES使用的内存,避免内存与swap分区交换数据
bootstrap.memory_lock: false # ---------------------------------- Network -----------------------------------
network.host: 0.0.0.0
http.port: 9201
transport.tcp.port: 9301
# --------------------------------- Discovery ----------------------------------
discovery.zen.minimum_master_nodes: 1
discovery.zen.ping.unicast.hosts: ["0.0.0.0:9300","0.0.0.0:9301"] # ---------------------------------- Gateway -----------------------------------
http.cors.enabled: true
http.cors.allow-origin: /.*/

elasticsearch-集群管理的更多相关文章

  1. elasticsearch集群管理工具head插件(转)

    elasticsearch-head是一个elasticsearch的集群管理工具,它是完全由html5编写的独立网页程序,你可以通过插件把它集成到es 插件安装方法1: 1.elasticsearc ...

  2. Elasticsearch集群管理工具head插件安装

    Elasticsearch-head是一个elasticsearch的集群管理工具,它是完全由html5编写的独立网页程序,你可以通过插件把它集成到es.或直接下载源码,在本地打开index.html ...

  3. Elasticsearch集群 管理

    第7章 深入Elasticsearch集群 启动一个Elasticsearch节点时,该节点会开始寻找具有相同集群名字并且可见的主节点.如 果找到主节点,该节点加入一个已经组成了的集群:如果没有找到, ...

  4. elasticsearch 集群管理(集群规划、集群搭建、集群管理)

    一.集群规划 搭建一个集群我们需要考虑如下几个问题: 1. 我们需要多大规模的集群? 2. 集群中的节点角色如何分配? 3. 如何避免脑裂问题? 4. 索引应该设置多少个分片? 5. 分片应该设置几个 ...

  5. Elasticsearch集群管理

    ES通过设置[节点的名字]和[集群的名字],就能自动的组织相同集群名字的节点加入到集群中,并使很多的技术对用户透明化. 如果用户想要管理查看集群的状态,可以通过一些REST API来实现. 其他的ES ...

  6. 大规模Elasticsearch集群管理心得

    转载:http://elasticsearch.cn/article/110 ElasticSearch目前在互联网公司主要用于两种应用场景,其一是用于构建业务的搜索功能模块且多是垂直领域的搜索,数据 ...

  7. Elasticsearch集群管理之添加、删除节点

    1.问题抛出 1.1 新增节点问题 我的群集具有黄色运行状况,因为它只有一个节点,因此副本保持未分配状态,我想要添加一个节点,该怎么弄? 1.2 删除节点问题 假设集群中有5个节点,我必须在运行时删除 ...

  8. elasticsearch系列八:ES 集群管理(集群规划、集群搭建、集群管理)

    一.集群规划 搭建一个集群我们需要考虑如下几个问题: 1. 我们需要多大规模的集群? 2. 集群中的节点角色如何分配? 3. 如何避免脑裂问题? 4. 索引应该设置多少个分片? 5. 分片应该设置几个 ...

  9. 数据源管理 | 搜索引擎框架,ElasticSearch集群模式

    本文源码:GitHub·点这里 || GitEE·点这里 一.集群环境搭建 1.环境概览 ES版本6.3.2,集群名称esmaster,虚拟机centos7. 服务群 角色划分 说明 en-maste ...

  10. 我的ElasticSearch集群部署总结--大数据搜索引擎你不得不知

    摘要:世上有三类书籍:1.介绍知识,2.阐述理论,3.工具书:世间也存在两类知识:1.技术,2.思想.以下是我在部署ElasticSearch集群时的经验总结,它们大体属于第一类知识“techknow ...

随机推荐

  1. Asp.net禁用site.Mobile.Master

    RT,在asp.net新的项目中遇到的一个问题.项目使用了Boostrap后网页打开是正常的,但是换成移动端打开这个网页的时候就奇怪了.很多样式不见了.原来是自动切换到了site.Mobile.Mas ...

  2. Java中的数学方法

    直接用代码 public class TestNumber { public static void main(String[] args) { float f1 = 5.4f; float f2 = ...

  3. Spring入门之五-------SpringIoC之通过注解实现

    一.准备工作 创建一个Class注解@Configuration,如下例子: @Configuration // 该注解可理解为将当前class等同于一个xml文件 @ComponentScan(&q ...

  4. gerrit 版本下载

    链接:https://gerrit-releases.storage.googleapis.com 如下载gerrit-2.12.2.war https://gerrit-releases.stora ...

  5. 三、jsx简化教程

    1)使用 JSX 的好处 1.提供更加语意化且易懂的标签 与html对比 <!--HTML写法--> <form class="messageBox"> & ...

  6. junit基础学习之-简介(1)

    JUnit介绍 JUnit是一个开源的Java单元测试框架,由 Erich Gamma 和 Kent Beck 开发完成. 1  JUnit简介 JUnit主要用来帮助开发人员进行Java的单元测试, ...

  7. hdu4632 Palindrome subsequence 回文子序列个数 区间dp

    Palindrome subsequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65535 K (Java/ ...

  8. Linux基础学习准备

    Linux 基础学习准备 工欲善其事必先利其器,还是买个服务器折腾比较好. 虚拟机和镜像 推荐吾爱的:吾爱虚拟机2.0 CentOS镜像: Centos国内下载源 http://man.linuxde ...

  9. HDU - 4405 Aeroplane chess(期望dp)

    题意:沿着x轴从0走到大于等于N的某处,每一步的步数由骰子(1,2,3,4,5,6)决定,若恰好走到x轴上某飞行路线的起点,则不计入扔骰子数.问从0走到大于等于N的某处的期望的扔骰子次数. 分析: 1 ...

  10. python 将数组中取某一值的元素全部替换为其他元素的方法

    这里的问题是在做House Price Prediction的时候遇到的,尝试对GarageArea做log转化,但是由于有些房子没有车库,所以GarageArea = 0,再通过log转化变成-in ...