本文向您介绍如何通过curl命令行连接阿里云Elasticsearch(ES)集群。
准备工作
获取集群连接地址
您可以通过VPC私网或公网地址连接到ES集群。
VPC私网连接地址:通过VPC私网地址访问ES集群,延迟低,稳定性高。该地址在集群创建成功后默认开启。
公网连接地址:通过公网访问ES集群,需手动开启。
如何开启公网访问:
登录ES控制台,进入实例基本信息页面。
单击左侧导航栏 配置与管理>安全配置,开启公网访问。待集群状态由生效中变更为生效时,表示公网访问已成功开启。
重要公网地址会降低ES集群的安全性,如果使用公网地址,请务必配置IP白名单,并在使用完毕后及时关闭公网访问。
设置IP白名单
为保障集群安全,您需要将待访问设备的IP地址加入ES集群的VPC私网或者公网白名单,该IP地址所属的设备才能访问ES集群。
获取待访问设备IP。
您可以参照以下场景,获取待访问设备的IP地址。
场景
需获取的IP地址
获取方式
在本地设备中连接ES集群
本地设备公网IP。
如果本地设备位于局域网(如家庭或公司网络)内,需将该局域网的公网出口IP地址添加到ES集群的公网白名单中。
通过
curl ipinfo.io/ip查询本地设备公网IP。在不同VPC的ECS实例中连接ES集群
ECS实例的公网IP
登录ECS控制台,在实例列表查看。
在相同VPC的ECS实例中连接ES集群
ECS实例的私网IP
登录ECS控制台,在实例列表查看。
将获取到的IP地址添加到白名单分组中。
登录ES控制台,进入实例基本信息,单击左侧导航栏 配置与管理>安全配置,单击修改在弹窗中设置VPC私网或者公网访问白名单。

单击default分组右侧的配置 ,在弹出的对话框中添加VPC私网或者公网白名单。单个集群最多可配置300个IP或者IP网段,多个IP或者IP网段之间用英文逗号隔开,且逗号前后不能有空格。
也可单击新增IP白名单分组,自定义分组名称。
白名单分组仅用于IP地址管理,不影响访问权限。所有分组内的IP地址权限相同。

配置类别
格式和示例值
重要注意事项
IPv4地址格式
单个IP:
192.168.0.1网段:
192.168.0.0/24
禁止访问:
127.0.0.1允许所有访问:
0.0.0.0/0重要存在高危风险,强烈建议不要配置
0.0.0.0/0。部分集群版本(如7.16/8.5)和地域不支持
0.0.0.0/0,请以控制台界面或者报错提示为准。
IPv6地址格式
(仅v2部署架构且所属地域为杭州的集群支持)
单个IP:
2401:XXXX:1000:24::5网段:
2401:XXXX:1000::/48
禁止所有访问:
::1允许所有访问
::/0重要存在高危风险,强烈建议不要配置
::/0。部分集群版本不支持
::/0,请以控制台界面或者配置提示信息为准。
配置完成后,单击确认。

连接集群
命令格式
curl -u '<UserName>:<YourPassword>' 'https://<YourEsHost>:<port>'参数 | 说明 |
UserName | 默认访问用户名为elastic,该用户具有集群最高权限(可理解为管理员账户)。 出于安全考虑,不建议在生产环境中直接使用此默认管理员账户,您可以通过Elasticsearch X-Pack的RBAC(Role-based Access Control)机制,自定义角色并分配权限,然后将角色分配给用户,实现权限精细化管控,具体操作请参见通过Elasticsearch X-Pack角色管理实现用户权限管控。 |
YourPassword | UserName对应的密码。 |
https | 访问协议,http协议默认开启。 建议开启并使用https协议,确保数据传输过程中的机密性、安全性和完整性。登录ES控制台进入实例基本信息,单击左侧导航栏 配置与管理>安全配置,开启https协议。 重要 启用HTTPS协议前,请务必更新应用程序代码以支持HTTPS连接方式。否则,现有使用HTTP协议的代码将无法建立安全连接,导致连接失败。 |
YourEsHost | 准备工作中已获取的集群连接地址:
|
port | 集群的访问端口,VPC私网和公网默认端口号均为9200。 |
连接示例
# 公网访问示例
curl -u 'user123:Passw0rd!' 'https://es-xx-xxxxxxxxxxxxxxxxx.public.elasticsearch.aliyuncs.com:9200'
# 私网访问示例
curl -u 'user123:Passw0rd!' 'https://es-cn-0pp1****.vpc.elasticsearch.aliyuncs.com:9200'连接成功返回以下集群信息,您可以参考Elasticsearch REST APIs进行集群管理或者索引操作。
{
"name" : "es-cn-aic**************-master-i-2",
"cluster_name" : "es-cn-aic**************",
"cluster_uuid" : "InmpfI1oQB2ijtdZ******",
"version" : {
"number" : "8.17.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "0bdf7********************************50279ae7c",
"build_date" : "2025-03-05T02:31:55.853663566Z",
"build_snapshot" : false,
"lucene_version" : "10.0.0",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "You Know, for Search"
}