Elasticsearch5.5官方文档翻译-节点

欢迎访问我的博客查看原文:http://wangnan.tech

概述

章节:Moudles>>Node

任何时候你启动Elasticsearch的实例时,你启动一个 节点。连接的节点的集合被称为一个 集群。如果您正在运行Elasticsearch的一个节点,那么你有一个包含一个节点的集群。

集群中的每个节点都默认的可以处理HTTP和 Transport 流量。传输层专门用于节点们和JavaTransportClient的的通信 ; HTTP层仅由外部REST客户端使用。

所有节点都了解所有集群中的其他节点,而且可以转发客户端请求到相应的节点。除此之外,每个节点提供一个或多个目的:

  • 主合格的节点
    具有节点node.master设置为true(默认值),这使得它有资格被选为主节点,主节点可以控制该集群。

  • 数据节点
    具有节点node.data设置为true(默认)。数据节点保存数据并进行数据相关的操作,如CRUD,搜索和聚合。

  • 摄取节点
    具有节点node.ingest设置为true(默认)。摄取节点都能够运用摄取管道,以便建立索引之前转换和丰富文档。如果想拥有一个重摄取负载,可以使用专用摄取节点然后设置主数据和节点的 node.ingest: false

  • 部落节点
    一个部落节点,通过tribe.*设置,是一种特殊类型的协调,可以连接到多个集群并在所有连接的集群执行搜索和其他操作。

默认情况下,一个节点是主合格的节点和数据节点,再加上它可以通过摄取管道预处理文件。这对小集群非常方便,但是,随着集群的增长,考虑从专用数据节点分离出专用主节点资格就变得很重要。

注意:协调节点
如搜索请求或批量索引请求可能涉及到不同的数据节点上保存的数据。例如搜索请求,分两个阶段,这是由接收客户机请求的节点协调执行的,这个节点就叫做协调节点。

在分散阶段,协调节点将请求转发到该保存数据的数据节点。每个数据节点本地执行的请求,其结果返回到协调节点。在收集 阶段,协同节点汇集每个数据节点的结果转换成一个单一的全球结果集。

每个节点是隐含协调节点。这意味着,节点有下面三个设置node.master,node.data,node.ingest设置为false,则只充当一个协调节点,它不能被禁用。其结果是,这样一个节点需要有足够的内存和CPU以处理收集阶段。

主合格节点

主节点负责轻量的集群范围的操作,如创建或删除的索引,跟踪哪些节点是群集的一部分,并且决定哪些分片分配给哪些节点,有一个稳定的主节点对集群的健康是很重要的。

任何主合格的节点(默认情况下所有节点)可能当选成为由主节点通过主选举进程。

重要
主节点必须能够访问该data/目录(就像 data节点),这样集群状态会在节点重新启动后在节点之间被保持。

索引和搜索您的数据是CPU,内存 和I / O密集型的工作,这样会把压榨一个节点的资源。为了确保您的主节点是稳定的,而不是在压力下,在一个大的集群里分出专用主合格节点和专用数据节点是个好主意。

当然主节点也可以表现为协调节点 和路由搜索和索引请求从客户端到数据节点,最好不使用专用的主节点做这个。让主资格的节点做尽可能少的工作,对集群的稳定性很重要。

要创建一个专用的主合格的节点,设置:

node.master: true
node.data: false
node.ingest: false

避免脑裂与minimum_master_nodes设置

为了防止数据丢失,配置 discovery.zen.minimum_master_nodes (缺省为1)是重要的。为了形成一个集群。 使得每个主资格节点都知道 主资格的节点的最小数量 。

为了解释,假设您有由两个主合格节点的集群。网络故障打破了这两个节点之间的通信。每个节点可以看到一个主合格的节点. 也就是他们.本身。随着minimum_master_nodes设置为默认1,这样足以形成一个集群。每个节点选择自己作为新的主(认为其他主合格的节点已经挂掉),结果形成了两个集群,或脑裂。这两个节点永远不会重新加入到一个节点被重新启动。已经写入到重新启动的节点的任何数据都将丢失。

现在,假设你有一个集群有三个主节点的资格,并 minimum_master_nodes设置为2。如果网络故障分开三个节点中的一个,一个节点这边不够的主节点的资格,并意识到它不能选择自己为master。具有两个节点的边将选举新的master(如果需要),并继续正常工作。一旦网络拆分得到解决,单个节点将重新加入集群,并重新开始服务请求。

此设置应遵循一个公式:

(master_eligible_nodes / 2)+ 1

换句话说,如果有三个主资格节点,则最小主节点应设置为(3 / 2) + 1或2:
即:

discovery.zen.minimum_master_nodes:2

此设置还可以动态地改变

PUT _cluster/settings
{
  "transient": {
    "discovery.zen.minimum_master_nodes": 2
  }
}

小提示
分开专用master节点和数据角色的一个优点是,如果你可以有只有三个主节点资格,并设置minimum_master_nodes到2。你不用再更改此设置,无论你有多少个专用的数据节点添加到集群。

数据节点

数据节点保留着包含已索引文档的分片。数据节点处理相关操作,比如CRUD,搜索和汇总数据。这些操作是I / O-,内存 - 和CPU密集型。监视这些资源,以及当他们超载
时添加更多的数据节点是很重要的。

具有专用数据节点的主要优点是master和数据节点角色的分离。
要创建一个专用的数据节点,设置:

node.master: false 
node.data: true 
node.ingest: false 

摄取节点

摄取节点可以执行预处理管道,由一个或多个摄取处理器组成。根据摄取处理器和所需的资源执行的操作的类型决定,有专门的摄取节点是有意义的,只会执行这个特定的任务。
要创建一个专用的采集节点,设置:

node.master: false 
node.data: false 
node.ingest: true 
search.remote.connect: false 

只协调节点

如果你去掉 到能master责任,去掉保持数据的能力,去掉预处理文件,那么你就留下了一个协调节点,它只能路由请求,处理搜索收集阶段,并分发批量索引。从本质上讲,只协调节点表现为智能负载均衡。

只协调节点对大集群有益,他们加入集群,收到完整的群集状态,像其他的节点,它们使用群集状态直接路由请求到适当位置。

警告
加入过多的协调会提高整个集群的负担,因为master节点,必须从每个节点等待集群状态更新!只协调节点的好处不应该被夸大 - 数据节点可以达到同样的目的。
要创建一个专门的协调节点,设置:

node.master: false 
node.data: false 
node.ingest: false 
search.remote.connect: false 

节点的数据路径设置

  • path.data

每个数据和主合格的节点需要访问其中分片和索引和集群的元数据将被存储在这个数据目录。path.data默认是$ES_HOME/data,但可以在被配置elasticsearch.yml的配置文件的绝对路径或相对于一路径$ES_HOME如下:

path.data:  /var/elasticsearch/data

像所有的节点设置,也可以在命令行上指定的:

./bin/elasticsearch -Epath.data=/var/elasticsearch/data

小提示
当使用.zip或.tar.gz分发版,path.data设置应配置为定位Elasticsearch主目录之外的数据目录,从而使主目录可以删除,但不删除您的数据!rpm和Debian发行版为你已经这样做了。

  • node.max_local_storage_nodes

path.data可以由多个节点共享,即使是不同的集群的节点。这对你在开发机器上测试故障转移和不同的配置是非常有用的。在生产环境中,建议每个服务器上运行一个节点Elasticsearch的。

默认情况下,Elasticsearch被构造成防止多于一个的节点共享同一数据路径。要允许多个节点(例如,在开发计算机上),使用设置 node.max_local_storage_nodes和将其设置为一个正整数大于一。

警告
不要运行来自相同数据目录的不同的节点类型(例如master和data节点)。这会导致意外的数据丢失。

其他节点设置与X-包节点设置 略
(本文完)

欢迎关注我的微信订阅号:



欢迎关注我的开发者头条独家号搜索:269166

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容

  • 本文档翻译自 http://redis.io/topics/cluster-tutorial 。 本文档是 Red...
    会跳舞的机器人阅读 66,913评论 2 21
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,594评论 18 139
  • 基本目标与设计基本思想 Redis cluster 目标 高性能,并且能线性扩展到1000个节点。不需要代理,使用...
    tafeng阅读 2,756评论 0 0
  • 人是群居动物,这一生我们会遇到很多人,有的只是擦肩而过,有的相伴一生,有的只是短暂停留 我曾经怀疑过朋友的意义 在...
    四郎2015阅读 207评论 1 1
  • 相爱时,我们总不忘给自己的爱情加料。 清晨,惺忪的双眼看到微信里简单的一声“早安”,暖暖的觉得彼此...
    蜗牛杂货铺阅读 793评论 5 1