如何访问开启HTTPS的ES集群

容器与中间件中间件技术服务知识库
问题描述

在创建云搜索服务(ES)时,传输协议选择 HTTPS,该如何访问到 ES 集群?

问题分析

如果在创建实例时未选择 HTTPS,访问方式您可以参考文档[1]。 如果选择 HTTPS 的传输协议,在访问时您需要做一些额外的配置,下文将描述使用 curl 命令和 常用的 postman 来进行演示。

解决方案

您可以参考如下步骤来满足先决条件:

  • 进入到云搜索控制台
  • 在实例信息部分,找到 "服务访问",将证书下载到本地。

使用 curl 命令访问 ES 集群

使用 curl 命令需要加 -k--cert 参数,使用示例如下:

(base) [root@rudonx ~]# curl -k --cert ca.cer https://xx.xx.xx.xx:9200/_cluster/health?pretty=true -u 'admin:xxxxxxxxxx'
{
  "cluster_name" : "n15y80awld8i526m",
  "status" : "yellow",
  "timed_out" : false,
  "number_of_nodes" : 3,
  "number_of_data_nodes" : 3,
  "active_primary_shards" : 37,
  "active_shards" : 81,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 3,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 96.42857142857143
}

关于 curl 命令的参数以及更多用法,您可以参考文档[1]

使用 postman 访问 ES 集群

使用 openssl 工具将证书转化为 .pem 格式

openssl x509 -in ca.cer -out es.pem 

点击 Authorization,选择 "Basic Auth",将用户名和密码进行填写 图片 点击 postman 右上角的小齿轮,进入到设置界面,请按照截图中的步骤进行配置,上传我们在第一步中生成的 pem 文件。 图片 图片 配置完成之后,再次进入到 settings 界面,将 Enable SSL certificate verification 设置为 OFF,请参考如下截图: 图片 经过上面的步骤,我们就可以通过 postman 访问开启 HTTPS 的 ES 集群。 图片

参考文档

[1] https://curl.se/docs/manpage.html 如果您有其他问题,欢迎您联系火山引擎技术支持服务

39
0
0
0
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论