更新时间:2024-10-25 GMT+08:00

创建Elasticsearch集群

本文介绍如何创建Elasticsearch集群。

场景描述

当创建的集群类型不同时,需要关注如表1所示的关键参数的配置。

表1 集群创建差异

集群类型

“安全模式”

“HTTPS访问”

“公网访问”

“Kibana公网访问”

非安全模式的集群

关闭

不涉及

不支持启用

不支持启用

安全模式+HTTP协议的集群

开启

关闭

不支持启用

支持启用

安全模式+HTTPS协议的集群

开启

开启

支持启用

支持启用

前提条件

已经参考Elasticsearch集群规划建议完成待创建的Elasticsearch集群规划。

创建集群

  1. 登录云搜索服务管理控制台。
  2. 在总览页面单击右上角的创建集群,进入“创建集群”页面。

    或者左侧导航栏单击“集群管理 > Elasticsearch”,单击右上角的创建集群,进入“创建集群”页面。

  3. “基础配置”页面,完成Elasticsearch集群的基本信息和资源配置。
    表2 Elasticsearch集群的基础配置

    参数

    说明

    计费模式

    集群支持包年/包月和按需计费两种模式。

    • 包年/包月:根据集群购买时长,一次性支付集群费用。最短时长为1个月,最长时长为3年。如果购买时长超过9个月,建议包年购买,价格更优惠。
    • 按需计费:按实际使用时长计费,计费周期为一小时,不足一小时按一小时计费。

    订购周期

    选择包年/包月模式后,需要选择购买时长。

    您可以根据需求,选择是否需要“自动续费”

    当前区域

    选择集群的所在区域。

    不同区域的云服务产品之间内网互不相通。请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。

    可用区

    选择集群工作区域下关联的可用区。

    最多支持配置3个“可用区”,多可用区的使用建议请参见规划集群可用区

    集群类型

    选择“Elasticsearch”

    集群版本

    选择所需的集群版本,支持的版本以界面可选项为准。

    集群名称

    自定义集群名称,可输入的字符范围为4~32个字符,只能包含数字、字母、中划线和下划线,且必须以字母开头。

    节点数量

    集群中的数据节点个数。可选节点数为1~32,建议节点数为3或3以上,以提升集群可用性。

    • 当集群未启用Master节点和Client节点时,数据节点将同时承担集群管理、存储数据、提供接入集群和分析数据的职责。此时,为保证集群中数据的稳定性,建议设置节点数量大于等于3个。
    • 当集群启用了Master节点但未启用Client节点时,数据节点将用于存储数据并提供接入集群和分析数据的功能。
    • 当集群未启用Master节点但启用了Client节点时,数据节点将用于存储数据并提供集群管理功能。
    • 当集群同时启用了Master节点和Client节点时,数据节点将仅用于存储数据。
    说明:

    当集群中数据节点的数量和可用区的数量不是整数倍关系时,集群的数据会分布可能会不均匀,从而影响数据查询或写入业务。

    CPU架构

    支持“X86计算”“鲲鹏计算”两种类型。具体支持的类型由实际区域环境决定。

    节点规格

    集群中数据节点的规格。您可以根据需求,选择对应的规格。每个集群只能选择一个规格,规格的详细说明可参考弹性云服务器的实例类型与规格

    节点存储

    当“节点规格”选择的是云硬盘时,需要选择集群数据节点的云硬盘类型。节点存储支持普通I/O、高I/O、超高I/O、极速型SSD。

    说明:

    如果当前局点的存储类型不支持,则界面不显示。

    节点存储容量

    设置数据节点的存储空间大小,其取值范围与“节点规格”关联,不同的规格允许的取值范围不同。

    节点存储容量只支持配置为20的倍数。

    集群创建完成后,不支持缩容节点存储容量,请基于业务量合理选择容量。

    启用Master节点

    Master节点负责管理集群中所有节点任务,如元数据管理、索引创建与删除、分片分配等。在大规模集群的元数据管理、节点管理、稳定性保障和集群操作控制中发挥着至关重要的作用。

    启用Master节点后,在下方选择对应的“节点规格”“节点数量”“节点存储”“节点数量”必须是不小于3的奇数,最多设置9个节点。“节点存储”的存储容量为固定值,存储类型可以根据实际情况选择。

    启用Client节点

    Client节点负责接收并协调外部请求,如search和write请求,在处理高负载查询、复杂聚合、大量分片管理以及优化集群扩展性方面发挥着重要作用。

    启用Client节点后,在下方选择对应的“节点规格”“节点数量”“节点存储”“节点数量”可设置为1~32任意数值。“节点存储”的存储容量为固定值,存储类型可以根据实际情况选择。

    启用冷数据节点

    冷数据节点用于存储对查询时延要求不高,但数据量较大的历史数据,是管理大规模数据集和优化存储成本的有效方式。

    启用冷数据节点后,在下方选择对应的“节点规格”“节点数量”“节点存储”“节点数量”可设置为1~32任意数值。“节点存储”的存储类型和存储容量可以根据实际情况选择。

    开启冷数据节点之后,支持切换集群的冷热数据,详情请参见切换Elasticsearch集群冷热数据

    说明:

    当集群中冷数据节点的数量和可用区的数量不是整数倍关系时,集群的数据会分布可能会不均匀,从而影响数据查询或写入业务。

    企业项目

    如果开通了“企业项目”,在创建集群时可以给集群绑定一个企业项目。

    在下拉框中选择企业项目,单击“查看项目管理”跳转到“企业项目管理”管理控制台,查看已有的企业项目。

  4. 单击“下一步:网络配置”
  5. “网络配置”页面,完成Elasticsearch集群的网络和安全模式配置。
    表3 Elasticsearch集群的网络配置

    参数

    说明

    虚拟私有云

    指定集群节点使用的虚拟专用网络,实现不同业务的网络隔离。

    单击“查看虚拟私有云”跳转到虚拟私有云列表,查看已创建或共享至当前账号下的VPC名称和ID。

    如果没有合适的VPC,建议联系CSS服务管理员新建VPC,具体请参见创建虚拟私有云和子网

    说明:

    此处选择的VPC必须包含网段(CIDR),否则集群将无法创建成功。新建的VPC默认包含网段(CIDR)。

    子网

    集群使用子网实现与其他网络的隔离,并独享所有网络资源,以提高网络安全。

    选择当前虚拟私有云下集群需要的子网。支持选择共享VPC下的子网。

    当选择的虚拟私有云支持IPv6,则在下拉框中选择是否分配IPv6地址。其中,7.6.2和7.10.2版本的Elasticsearch集群支持自动分配IPv6地址。

    安全组

    安全组起着虚拟防火墙的作用,为集群提供安全的网络访问控制策略。

    选择集群需要的安全组,单击“查看安全组”跳转到安全组列表,可以了解安全组详情。

    说明:
    • 为了确保您能够正常访问集群,需要放通安全组9200规则。
    • 如果创建的集群为7.6.2及以上版本,则需要确保同安全组内节点之间的端口全放通。如果无法放通同安全组内节点之间的全部端口,请至少确保9300端口的通信。
    • 放开9300端口通信后,如果集群磁盘使用率较高,可清理过期数据,释放磁盘存储空间,请参考如何使用Elasticsearch清理过期数据,释放磁盘存储空间?

    安全模式

    选择是否开启集群安全模式。

    • 默认开启,则创建的是安全模式的集群。安全模式的集群会对集群进行通讯加密和安全认证。因此必须配置集群的“管理员账户名”“管理员密码”
      • 管理员账户名默认为admin。
      • 设置并确认管理员密码。要记住设置的密码,后续访问集群需要输入密码。
    • 不开启,则创建的是非安全模式的集群。非安全模式的集群无需安全认证即可访问,并且采用HTTP明文传输数据。建议确认访问环境的安全性,勿将访问接口暴露到公网环境上。

    HTTPS访问

    只有开启集群的安全模式才可以启用HTTPS访问,开启HTTPS访问后,访问集群将进行通讯加密。

    说明:

    安全集群使用HTTPS通信,相比非安全集群使用HTTP通信在读取性能上会降低,预期相对HTTP集群在大并发压力下有20%的性能劣化。如果想要读取性能快,又想要使用安全集群所提供的用户权限隔离资源(索引、文档、字段等)的功能,则可以关闭HTTPS访问。关闭HTTPS访问后,会使用HTTP协议与集群通信,无法保证数据安全性,并且无法开启公网访问功能。

    公网访问

    仅当集群开启了“安全模式”“HTTPS访问”时,才可以选择是否配置“公网访问”。配置公网访问后,用户可以获得一个公网访问的IP地址,通过这个IP地址可以在公网访问该安全集群,详细配置请参考配置Elasticsearch集群公网访问

  6. 单击“下一步:高级配置”
  7. “高级配置”页面,完成Elasticsearch集群的快照和其他高级配置。
    1. 设置集群快照。

      系统默认打开集群快照开关,如果您不需要启用自动快照,可以在“集群快照开关”右侧关闭。自动快照会创建委托访问对象存储服务OBS,快照存储在OBS标准存储中需额外计费。

      表4 集群快照基础配置

      参数

      说明

      OBS桶

      在下拉框中选择存储快照的OBS桶。也可以单击右侧的“创建桶”新建OBS。详细操作步骤请参见创建桶

      创建或者已存在的OBS桶需满足如下条件:

      • “存储类别”“标准存储”
      • “区域”须与创建的集群所在区域相同。

      备份路径

      快照在OBS桶中的存放路径。

      备份路径配置规则:
      • 备份路径不能使用符号“\:*?"<>|”
      • 备份路径不能以“/”开头。
      • 备份路径不能以“.”开头或结尾。
      • 备份路径的总长度不能超过1023个字符。

      IAM委托

      快照数据存储到OBS桶中,需要OBS的操作权限。选择IAM委托,授权当前账号访问和使用OBS的权限。
      • 当首次配置委托时,可以单击“自动创建委托”新建委托“css-obs-agency”直接使用。
      • 当已有自动创建的委托时,可以单击“委托一键授权”,删除委托中OBS Administrator系统策略的权限,新增如下自定义策略授权委托到最小化权限。
        "obs:bucket:GetBucketLocation",
        "obs:object:GetObjectVersion",
        "obs:object:GetObject",
        "obs:object:DeleteObject",
        "obs:bucket:HeadBucket",
        "obs:bucket:GetBucketStoragePolicy",
        "obs:object:DeleteObjectVersion",
        "obs:bucket:ListBucketVersions",
        "obs:bucket:ListBucket",
        "obs:object:PutObject"
      • “自动创建委托”“委托一键授权”需要如下最小权限。
        "iam:agencies:listAgencies",
        "iam:roles:listRoles",
        "iam:agencies:getAgency",
        "iam:agencies:createAgency",
        "iam:permissions:listRolesForAgency",
        "iam:permissions:grantRoleToAgency",
        "iam:permissions:listRolesForAgencyOnProject",
        "iam:permissions:revokeRoleFromAgency",
        "iam:roles:createRole"
      • 使用委托需要如下最小权限。
        "iam:agencies:listAgencies",
        "iam:agencies:getAgency",
        "iam:permissions:listRolesForAgencyOnProject",
        "iam:permissions:listRolesForAgency"
      表5 设置自动创建快照

      参数

      说明

      快照名称前缀

      快照名称前缀的长度为1~32个字符,只能包含小写字母、数字、中划线和下划线,且必须以小写字母开头。快照名称由快照名称前缀加上时间戳组成,例如自动生成的快照名称为“snapshot-1566921603720”。

      时区

      指备份时间对应的时区,不支持修改。基于此时区选择备份开始时间。

      备份开始时间

      指每天自动开始备份的时间,只能指定整点时间,如00:00、01:00,取值范围为00:00~23:00。请在下拉框中选择时间。

      保留快照个数

      自定义设置自动快照保留的个数,范围是1~90。系统在半点时刻会自动删除超过保留个数的快照(过期删除策略只针对与当前自动创建快照策略相同执行频次的自动快照)。
      说明:

      保存快照个数与自动创建快照策略中设置的执行频次和索引有关,当执行频次间隔时间短或索引数据量大,保留自动快照可能会达不到设置的个数,请谨慎选择。

    2. 配置集群高级功能。根据需要选择“默认配置”“自定义”
      • “默认配置”:默认关闭“终端节点服务”“Kibana公网访问”“标签”功能,在集群创建完成后,如果有需要也可以人工启用这些功能。
      • “自定义”:根据需要选择开启“终端节点服务”“Kibana公网访问”“标签”功能。

      终端节点服务

      终端节点服务(VPC Endpoint Service)通过专属网关,可以将VPC中的服务方便的提供给其他VPC中的资源使用,实现跨VPC的访问,而不必暴露服务端相关的网络信息,使您的访问更加安全、可靠。在开启终端节点服务时,系统会默认给用户创建一个终端节点,内网域名由用户自己选择是否创建,通过节点IP或者是内网域名,用户可以跨VPC访问该集群。
      • 当集群的网络配置中,“虚拟私有云”选择的是共享VPC,“子网”选择的是共享VPC下的子网,则该集群不支持配置终端节点服务。
      • 集群开启终端节点服务之后,终端节点将按需进行收费,终端节点的费用将由用户进行支付,详细的计费方式请参考终端节点计费说明
      表6 配置终端节点服务

      参数

      说明

      创建内网域名

      勾选“创建内网域名”,系统除了生成一个“节点IP”还会自动创建一个“内网域名”,通过这个域名可以在同一个VPC内访问该集群。不勾选的话只会生成一个“节点IP”

      创建专业型终端节点

      选择是否创建专业型终端节点。

      • 不勾选,则创建基础型终端节点。
      • 勾选,则创建专业型终端节点。
      说明:

      当集群所在区域不支持创建专业型终端节点时,该选项将置灰不可选。默认创建的是基础型终端节点。

      IPv4/IPv6双栈网络

      选择是否开启IPv4/IPv6双栈网络。仅当集群的VPC“子网”已开启IPv6,且已勾选“创建专业型终端节点”时,才支持选择开启IPv4/IPv6双栈网络。

      终端节点服务白名单

      “终端节点服务白名单”中添加允许通过节点IP或内网域名访问集群的账号。

      • 单击“添加”输入授权账号ID。授权账号ID配置成“*”,则表示允许全部用户访问该集群。
      • 单击操作列的“删除”,可以删除不允许访问的账号ID。
      说明:

      “授权账号ID”可以在“我的凭证”中进行查看“账号ID”获取。

      Kibana公网访问

      只有开启“安全模式”的集群,才能配置Kibana公网访问。开启Kibana公网访问后,用户可以获得一个Kibana公网访问地址,通过这个地址可以在公网访问Kibana。
      表7 配置Kibana公网访问

      参数

      说明

      带宽

      设置公网访问的带宽。

      取值范围:1-100。

      单位:Mbit/s。

      访问控制开关

      如果关闭访问控制开关,则允许任何IP通过公网IP访问集群Kibana。如果开启访问控制开关,则只允许白名单列表中的IP通过公网IP访问集群Kibana。

      白名单

      设置允许访问的IP地址或网段,中间用英文逗号隔开。仅当打开“访问控制开关”时才需要配置。

      建议开启白名单。

      说明:

      Kibana公网访问配置的白名单依赖ELB的白名单能力。更新白名单后,白名单对新建的连接是实时生效的,但对于已存在的长连接,可能会出现去掉的白名单IP地址还能访问Kibana的场景,这是因为要等长连接断开后才生效,预计1分钟左右。

      标签

      为集群添加标签,方便用户识别和管理拥有的集群资源。此处您可以选择“标签管理服务”中已定义好的“预定义标签”,也可以自己定义标签。

      如您的组织已经设定云搜索服务的相关标签策略,则需按照标签策略规则为集群添加标签。标签如果不符合标签策略的规则,则可能会导致集群创建失败,请联系组织管理员了解标签策略详情。

      表8 标签命名规则

      参数

      说明

      标签键

      • 对于同一个集群,标签键值唯一。
      • 长度不超过64个字符。
      • 只能包含数字、英文字母、下划线、中划线、中文以及特殊字符“_ . : = + - @”。不能以空格开头和结尾。
      • 不能为空。

      标签值

      • 长度不超过64个字符。
      • 只能包含数字、英文字母、下划线、中划线、中文以及特殊字符“_ . : = + - @/”。不能以空格开头和结尾。
      • 不能为空。
  8. 单击“下一步:确认配置”,确认完成后单击“立即创建”开始创建集群。
  9. 单击“返回集群列表”,系统将跳转到“集群管理”页面。您创建的集群将展现在集群列表中,且集群状态为“创建中”,创建成功后集群状态会变为可用

    如果集群创建失败,请根据界面提示重新创建集群。

后续操作

Elasticsearch集群创建完成后,建议参考优化集群性能进行集群的性能优化,便于提高集群的写入和查询性能,提升使用效率。