配置Elasticsearch集群终端节点服务
终端节点服务(VPC Endpoint Service)通过专属网关,可以将VPC中的服务方便地提供给其他VPC中的资源使用,实现跨VPC的内网访问而不必暴露服务端相关的网络信息,使您的访问更加安全、可靠。终端节点的访问地址包括IPv4地址和内网域名。IPv4地址是启用终端节点服务就会自动分配的服务IP地址;内网域名是要在启用创建内网域名时,系统才会分配。
终端节点服务通过共享型负载均衡器实现内网访问,共享型负载均衡器资源与其他实例共享资源,如果业务追求更优的负载均衡体验,推荐使用独享型负载均衡器接入集群,配置方案请参见配置Elasticsearch集群独享型负载均衡。
计费影响
如果启用集群的终端节点服务,系统将根据终端节点的实际资源消耗情况,额外按需计费。详细请参见终端节点计费说明。
约束限制
- 当集群的网络配置中,“虚拟私有云”选择的是共享VPC,“子网”选择的是共享VPC下的子网,则该集群不支持配置终端节点服务。
- 创建终端节点需要有相关的权限,请参考VPC终端节点权限管理。
- 公网访问和终端节点服务使用的是同一个负载均衡。当集群开启了公网访问白名单,由于白名单是作用在负载均衡上面,将会同时限制公网访问集群和内网通过VPCEP访问集群的IP地址。此时需要在公网访问白名单中添加一个网络白名单“198.19.128.0/17”,通过该白名单用来放通经过VPCEP的流量。
- 终端节点服务开通后,在内网通过终端节点IP或内网域名访问CSS将不受集群安全组规则限制,需要配合终端节点本身的白名单功能进行访问控制,操作指导请参见设置终端节点的访问控制。
开启终端节点服务
当创建集群时未开启终端节点服务时,可以通过如下步骤开启终端节点服务。
- 登录云搜索服务管理控制台。
- 在左侧导航栏,选择“集群管理 > Elasticsearch”,进入集群列表。
- 在集群列表选择目标集群,单击集群名称,进入基本信息页面。
- 查看集群的当前子网信息。新增终端节点时,系统会在集群的当前子网下自动申请并绑定IP地址。
图1 查看当前子网信息
如果需指定特定子网,可以先切换子网再开启终端节点服务,操作指导请参见Elasticsearch和OpenSearch集群支持扩容子网吗?
- 在左侧导航栏,选择“终端节点服务”。
- 打开“终端节点服务”右侧的开关,在弹窗中确认选项。
图2 开启终端节点服务
表1 开启终端节点服务的选项说明 选项名称
选项说明
创建内网域名
选择是否给终端节点服务创建内网域名。
- 开启:系统会自动为终端节点服务分配一个内网域名。在集群详情页的“终端节点服务”页签,可以查看内网域名。
- 不开启:终端节点服务不配置内网域名。仅支持通过终端节点服务的IP地址访问集群。
- 单击“确定”,开启终端节点服务。开启后,下方会显示终端节点服务的基本信息,当终端节点的“状态”变成“已接受”时,表示可以通过终端节点服务访问当前集群。
图3 查看终端节点状态
管理终端节点服务
当集群开启终端节点服务后,支持设置访问控制、查看服务信息、拒绝访问等管理操作。
- 登录云搜索服务管理控制台。
- 在左侧导航栏,选择“集群管理 > Elasticsearch”,进入集群列表。
- 在集群列表选择目标集群,单击集群名称,进入基本信息页面。
- 在左侧导航栏,选择“终端节点服务”。
- 设置终端节点服务的访问控制。
- 在“终端节点服务白名单”右侧单击“修改”,在弹窗中修改白名单,添加允许通过终端节点服务访问集群的账号。不添加授权账号或授权账号ID配置成“*”,则表示允许全部用户访问该集群。
- 单击“添加”,输入授权账号ID。授权账号ID可以在“我的凭证”中进行查看“账号ID”获取。
- 单击操作列的“删除”,可以删除授权账号。
- 单击“确定”完成配置。
- 在“终端节点服务白名单”右侧单击“修改”,在弹窗中修改白名单,添加允许通过终端节点服务访问集群的账号。不添加授权账号或授权账号ID配置成“*”,则表示允许全部用户访问该集群。
- 查看终端节点服务信息。
- 修改终端节点状态。通过该功能可以控制集群是否对该终端节点提供服务。
- 在终端节点列表,选择目标节点,单击操作列的“拒绝”,当终端节点的“状态”变成“已拒绝”时,表示集群已停止对该终端节点提供服务,用户将无法通过终端节点访问当前集群。
- 在终端节点列表,选择目标节点,单击操作列的“接受”,当终端节点的“状态”变成“已接受”时,表示集群已支持对该终端节点提供服务,用户可以通过终端节点访问当前集群。
关闭终端节点服务
当集群无需使用终端节点服务实现跨VPC的内网访问时,可以关闭终端节点服务,释放资源。

关闭终端节点服务后,将无法通过该服务的IP地址或内网域名访问集群。重新开启服务后,终端节点服务的IP地址或内网域名可能会发生变化,这可能需要更新客户端的连接配置。如果仅需临时关闭终端节点服务(而非永久释放资源),建议通过拒绝访问的方式实现,具体操作请参见7。
- 登录云搜索服务管理控制台。
- 在左侧导航栏,选择“集群管理 > Elasticsearch”,进入集群列表。
- 在集群列表选择目标集群,单击集群名称,进入基本信息页面。
- 在左侧导航栏,选择“终端节点服务”。
- 关闭“终端节点服务”右侧的开关,在弹窗中输入CONFIRM,单击“确定”关闭终端节点服务。
通过终端节点服务访问集群
- 获取终端节点服务的内网域名或节点IP地址。
图5 查看终端节点服务地址或内网域名
- 在客户端,如弹性云服务器ECS,通过Curl命令访问集群。
例如,执行如下命令,可以查看集群中的索引信息:
- 非安全模式的集群
curl "http://<host>:9200/_cat/indices"
- 安全模式+HTTP协议的集群
curl -u <user>:<password> "http://<host>:9200/_cat/indices"
- 安全模式+HTTPS协议的集群
curl -u <user>:<password> -k "https://<host>:9200/_cat/indices"
其中“user”和“password”为访问集群的用户名和密码,“host”为获取的终端节点服务的内网域名或节点IP地址。
- 非安全模式的集群