AWS Elasticsearch可用区感知和副本

柏林

我对AWS Elasticsearch可用区感知和副本有一些疑问:

  1. 据我了解,如果区域/节点发生故障,如果在节点之间复制分片,则群集将能够完全恢复,并且我将在每个区域中拥有数据的完整副本,对吗?

  2. 根据AWS Elasticsearch文档,我必须使用Amazon elasticsearch API在可用区中的节点之间复制Amazon Elasticsearch集群的数据。但是我找不到通过Amazon Elasticsearch API配置副本的方法,所以我想通过Elastic API,对吗?

  3. 在同一区域sa-east1中跨两个可用区分配群集节点的最佳实践是什么,至少在新环境开始时,有多少个专用主实例和数据节点应足以进行故障转移?2个专用主节点和2个数据节点应足以防止发生故障时丢失数据和停机。我猜应该为索引配置1个副本。我还在考虑每个索引2-3个专用主节点和3个数据节点以及2个副本。

  4. AWS elasticsearch中没有设置文件,更改副本数量的唯一方法是通过Elastic API,但是我找不到更改默认设置的方法,当新索引创建的副本碎片数量为1时,默认值,是否可以更改每个新索引的默认设置?

这样的事情只会改变当前的索引。

curl -XPUT 'https://search-aa1-a3qlyghdz2i6wszffnv4iz5cyi.sa-east-1.es.amazonaws.com/_all/_settings' -d '
{
    "index" : {
        "number_of_replicas" : 2
    }
}'

http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html

感谢您提供任何帮助 !

Cstrzadala

以下是您问题的一些答案。

首先是完全披露人,我是Elastic雇员,并且在Found团队中工作。

据我了解,如果区域/节点发生故障,如果在节点之间复制分片,则群集将能够完全恢复,并且我将在每个区域中拥有数据的完整副本,对吗?

从技术上讲是。使用分片副本时,写入分片0的所有数据都将复制到副本0,副本0应该位于不同区域的辅助节点上。

请注意,AWS ES每天仅快照一次数据。您可以根据需要手动拍摄快照。在“发现”中,每30分钟配置一次。

根据AWS Elasticsearch文档,我必须使用Amazon elasticsearch API在可用区中的节点之间复制Amazon Elasticsearch集群的数据。但是我找不到通过Amazon Elasticsearch API配置副本的方法,所以我想通过Elastic API,对吗?

是的,我不确定100%是否适用于AWS ES API的工作原理,但是文档建议必须通过AWS ES API(而不是ES API)配置所有副本。

如果您是手动管理Elasticsearch集群,则可以使用ES API https://www.elastic.co/guide/zh-cn/elasticsearch/guide/current/replica-shards.html进行配置副本,并且有一些区域识别设置https://www.elastic.co/guide/zh-CN/elasticsearch/reference/current/allocation-awareness.html

在创建群集中,通过指示区域以及希望使用的“我的可用区”来为您进行所有配置。Found(发现)可让您直接通过控制台增加或减少可用区的数量。

在同一区域sa-east1中跨两个可用区分配群集节点的最佳实践是什么,至少在新环境开始时,有多少个专用主实例和数据节点应足以进行故障转移?2个专用主节点和2个数据节点应足以防止发生故障时丢失数据和停机。我猜应该为索引配置1个副本。我还在考虑每个索引2-3个专用主节点和3个数据节点以及2个副本。

如果容纳主节点的AZ失败,则在2可用区配置中使用单个主节点仍会使您处于失败的境地。AWS文档(http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomains-configure-cluster)建议使用奇数个主节点来帮助避免分裂大脑,并且您希望具有复制数据节点的负载能力。因此,例如3个主节点(每个AZ 1个,另外1个用于协助选举)和4个数据节点(每个AZ 2个),至少有1个副本。

话虽如此,有了Found,一切都得到了照顾。例如,如果您在SA-East-1中设置一个HA群集,则Found将在每个AZ(带有副本)和主节点中设置2个数据节点,并且选举由Found基础结构处理,该基础结构也在两个区域中进行管理。这样可以防止由于网络延迟/问题和整个DC故障而引起的裂脑。您可以参考https://www.elastic.co/blog/found-elasticsearch-in-production#networking了解更多信息。

AWS elasticsearch中没有设置文件,更改副本数量的唯一方法是通过Elastic API,但是我找不到更改默认设置的方法,当新索引创建的副本碎片数量为1时,默认值,是否可以更改每个新索引的默认设置?

Elastic推荐的默认值为1个副本。要使用多个副本,您需要了解为什么使用https://www.elastic.co/guide/en/elasticsearch/guide/current/replica-shards.html#_balancing_load_with_replicas

索引模板可能会帮助您解决当前的情况,您可以在模板中设置想要的默认值,以将其应用于任何将来的指标https://www.elastic.co/guide/en/elasticsearch/guide/current/index-templates。 html

如果您想了解有关Elastic's Found产品的更多信息,请访问https://www.elastic.co/foundhttps://www.elastic.co/found-elasticsearch-as-a-service-with-alerts

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

AWS可用区和区域名称之间的映射

来自分类Dev

仅两个可用区的AWS区域中的Elasticsearch集群配置

来自分类Dev

仅两个可用区的AWS区域中的Elasticsearch集群配置

来自分类Dev

AWS CloudFormation输出:导出可用区

来自分类Dev

AWS ECS Fargate可用区如何工作?

来自分类Dev

不同可用区中的aws运行实例

来自分类Dev

elasticSearch和AWS插件异常

来自分类Dev

子网为什么不能跨越AWS中的可用区?

来自分类Dev

AWS-ELB可用区+ VPC最佳实践?

来自分类Dev

AWS RDS多可用区“存储已满”故障转移

来自分类Dev

“多可用区部署”和“只读副本Verison多可用区部署”之间的区别

来自分类Dev

Terraform-AWS-创建多个实例-不同的可用区(实例数大于可用区列表长度)

来自分类Dev

AWS Elasticsearch和AWS Redshift有什么区别

来自分类Dev

AWS S3与AWS Global Infrastructure:可用区不匹配

来自分类Dev

在RDS AWS中读取副本

来自分类Dev

静态加密:AWS Elasticsearch

来自分类Dev

AWS 多区域服务可用性和操作

来自分类Dev

熊猫和AWS Lambda

来自分类Dev

NodeJS和AWS SQS

来自分类Dev

Opencv和AWS Lambda

来自分类Dev

和AWS市场

来自分类Dev

AWS认证和EKS

来自分类Dev

和AWS市场

来自分类Dev

CasperJS和AWS Lambda

来自分类Dev

Spark 和 AWS Kinesis

来自分类Dev

AWS工作区的IAM角色

来自分类Dev

AWS ALB-您必须至少从两个可用区中指定子网

来自分类Dev

每个可用区中都没有目标的AWS Network Load Balancer

来自分类Dev

AWS RDS显示多个可用区实例(MySQL)的过时数据