在我们启动ElasticSearch实例时,都在启动一个Node(节点), Node的集合就是集群。Node分为三类:主Node,数据Node,Ingest节点和 machine learn节点

Master-eligible node  主节点

主要功能是索引的添加和删除,集群节点的管理和节点分片的分配。

官方建议:

Indexing and searching your data is CPU-, memory-, and I/O-intensive work which can put pressure on a node’s resources. To ensure that your master node is stable and not under pressure, it is a good idea in a bigger cluster to split the roles between dedicated master-eligible nodes and dedicated data nodes.

While master nodes can also behave as coordinating nodes and route search and indexing requests from clients to data nodes, it is better not to use dedicated master nodes for this purpose. It is important for the stability of the cluster that master-eligible nodes do as little work as possible.

1. 单独的设置仅主节点的角色

2.不要让主节点充当协调节点的角色。

避免脑裂:

脑裂:集群中最小的主节点数目设置为1,因为网络问题,主节点和其他节点联系不上,等网络恢复之后,可能出现了多个主节点,此时一个集群变为了多个集群。

ES避免脑裂的方法为:设置最小主节点数目  minimum_master_nodes  计算公式为:(master_eligible_nodes / 2) + 1

node.master: true
node.data: false
node.ingest: false
node.ml: false
xpack.ml.enabled: true
cluster.remote.connect: false 

Data nodes 数据节点

数据节点包含建立的文档的分片,他主要做数据节点处理和数据相关操作,比如CRUD,搜索和聚合。

node.master: false
node.data: true
node.ingest: false
node.ml: false
cluster.remote.connect: false 

Ingest node

数据前置转换节点,它的处理时机为:数据被索引之前,通过ES预定义好的处理管道对数据进行预处理。

通过它的功能以及处理时机看,它的使用场景举例:比如修改文档的字段名。

PUT _ingest/pipeline/rename_hostname
{
  "processors": [
    {
        "field": "hostname",
        "target_field": "host",
        "ignore_missing": true
      }
    }
  ]
}

PUT server

POST server/values/?pipeline=rename_hostname
{
  "hostname": "myserver"
}

ElasticSearch学习-Node篇相关推荐

  1. Elasticsearch学习第二篇--常用的几种搜索方式

    Elasticsearch学习第二篇--常用的几种搜索方式 一.Query String Search 查询全部 条件查询 二.Query DSL 查询全部 条件查询 三.Query Filter 四 ...

  2. ElasticSearch学习之Kibana(一)

    文章目录 前言 安装elasticsearch elasticsearch基础 定义 基础 安装Kibana 安装 查看服务状态 Kibana索引管理 增加索引(数据库) 获取索引(数据库) 删除索引 ...

  3. ElasticSearch学习笔记(一)

    ElasticSearch学习 环境准备 JDK 1.8 Node.js 相关文件 (Windows 练习的话,使用 6.2.2 版本较为稳定, 否则 Kibana 可能会遇到一些启动报错问题) 资源 ...

  4. 学习node js 之微信公众帐号接口开发 准备工作

    绪:因工作须要,近期開始学习Node js,之前隐隐约约听到过node js 但没有实际见到过,仅仅好google了:至于什么是node js,能做些什么,有多么好.或者有哪些弊端我这里就不多说了,由 ...

  5. elasticsearch - java - 高级篇 - 封装类 - 2

    世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程. -侯氏工坊 文章目录 说明 参考 核心封装类 新增类 说明 高级篇是自我封装的一个进化过程 封装类并不是固定不变 ...

  6. 【Nodejs】448- 深入学习 Node.js Buffer

    预备知识 ArrayBuffer ArrayBuffer 对象用来表示通用的.固定长度的原始二进制数据缓冲区.ArrayBuffer 不能直接操作,而是要通过类型数组对象 或 DataView 对象来 ...

  7. 【全文】狼叔:如何正确的学习Node.js

    说明 2017-12-14 我发了一篇文章<没用过Node.js,就别瞎逼逼>是因为有人在知乎上黑Node.js.那篇文章的反响还是相当不错的,甚至连著名的hax贺老都很认同,下班时读那篇 ...

  8. STL学习——RB-tree篇

    STL学习--RB-tree篇 简介 RB-tree(红黑树)是一棵平衡二叉搜索树,它需要满足以下规则: 1)每个节点不是红色就是黑色: 2)根节点为黑色: 3)如果节点为红,其子节点必须为黑: 4) ...

  9. elasticSearch学习笔记04-同义词,停用词,拼音,高亮,拼写纠错

    由于elasticSearch版本更新频繁,此笔记适用ES版本为 7.10.2 此笔记摘录自<Elasticsearch搜索引擎构建入门与实战>第一版 文中涉及代码适用于kibana开发工 ...

最新文章

  1. MediaCoder转移动设备MP4(高清)
  2. 对称加密----AES和DES加密、解密
  3. 谷歌官方TensorFlow开发者认证来了,吴恩达:学我的课,报名费五折
  4. Linux下fdisk命令操作磁盘详解--添加、删除、转换分区
  5. uni-app之新建项目无模板选择以及点击创建后一直卡住不动
  6. openssl https证书
  7. c语言http协议头字符串,c语言http请求解析表单内容
  8. pandas处理mysql 展现wpf_Pandas DataFrame使用多列聚合函数
  9. java 降低jdk版本_jdk1.7降级到1.6 | 学步园
  10. PL/SQL Developer使用笔记
  11. 用xslt 把xml转换成html的几个实例(1)
  12. 实对称矩阵的特征值求法_实对称矩阵、相似、标准型、合同的逻辑网
  13. 11种基于ARM的嵌入式操作系统
  14. Exp5 CAL_MSF基础运用 20154328 常城
  15. bugku 旋转跳跃
  16. python计算贷款购房月供、利息
  17. 公众号后台管理系统php开发,微信公众平台开发管理后台开发
  18. java中运行dos命令_JAVA中如何执行DOS命令
  19. iOS和Android和H5交互WebViewJavascriptBridge
  20. 洛阳理工学院计算机类分数线,2017洛阳理工学院录取分数线

热门文章

  1. AutoCAD C# 自动加载自定义RibbonUI界面
  2. 【云原生】什么是 CI/CD ?| 软件交付中常见的问题
  3. VSCode换行快捷方式及键盘快捷键重置
  4. 20201110提莫攻击
  5. 第三十九期:1024特别版:向“程序媛们”致敬!
  6. .net使用Microsoft.Office给word添加自定义水印
  7. android 黄金颜色,金光闪闪-六款经典款黄金首饰推荐
  8. BigDecimal舍入模式(Rounding Modes)
  9. 你需要立即停止的9个习惯! 2012-03-11 10:01:41
  10. 疫情下的职场生存记:从写简历到面试谈薪的那些技巧和防坑指南