引言 #
上一篇文章里,我们已经完成了 Easysearch 在信创环境下的部署。搜索服务能跑起来只是第一步,要让它真正用于生产,还需要补上“入口治理”这一环。
例如,下面这些问题在生产环境中非常常见:
- 如何防止某个应用或用户发出超大查询请求,把 Easysearch 集群拖垮?
- 如果 Easysearch 某个节点突然宕机,请求能不能自动切换到健康节点,让业务无感知?
- 如何知道每天有多少次查询、哪些查询慢、哪些请求不合法,有没有办法对请求进行审计?
这些正是 INFINI Gateway(极限网关) 擅长解决的问题。本文延续“小白友好”风格,带你完成 Gateway 的安装与验证,为 Easysearch 增加一层高性能、安全、可观测的入口防护。

一、INFINI Gateway 是什么?和 Easysearch 是什么关系? #
如果把 Easysearch 比作大型图书馆,那么 INFINI Gateway 就像门口的 “前台总台”。过去读者(应用程序)直接进入书库检索;现在所有请求先经过前台,再转发到书库。这样做的好处很直接:可以缓存热门请求,减少后端压力;可以限制流量,避免集群被突发请求冲垮;还可以记录访问日志,方便审计与分析。
从技术层面讲,INFINI Gateway 的定位如下:
- 高性能数据网关:面向搜索场景设计,请求先在网关完成处理,再转发到后端 Easysearch 集群。
- 代理 + 增强:位于客户端与 Easysearch 之间,可在转发链路中叠加限流、缓存加速、请求审计、结果改写等能力。
- 兼容原生 API:对外接口兼容 Elasticsearch / Easysearch 原生 API,应用只需把连接地址从直连 Easysearch 改为指向网关,无需改业务代码。
- 轻量易部署:基于 Golang 开发,安装包约 10MB,无额外外部依赖。
- 信创兼容认证:已通过华为鲲鹏 Kunpeng 920 兼容性认证,并获得 KUNPENG COMPATIBLE 证书。
整个系列的组件关系如下:
应用程序 → INFINI Gateway(流量入口) → Easysearch(数据存储与检索)
有了 Gateway,你就可以更放心地将搜索服务开放给更多应用和用户,而不必过度担心安全与性能失控问题。
二、部署前置条件 #
1. 信创环境 #
- CPU :鲲鹏 Kunpeng-920、aarch64
- 操作系统:统信服务器操作系统A版 V20
2. 确保 Easysearch 已正常运行 #
Gateway 本身不存储数据,核心职责是代理与增强 Easysearch。因此部署前请先确认 Easysearch 已启动,并且网络可达:
curl -ku admin:你的密码 https://localhost:9200
三、部署步骤 #
步骤 1:下载 INFINI Gateway #
下面脚本会自动下载对应平台的 Gateway 最新版本,并解压到 /opt/gateway:
# 一键下载并安装到 /opt/gateway
curl -sSL http://get.infini.cloud | bash -s -- -p gateway -d /opt/gateway

步骤 2:编写 Gateway 配置文件 #
Gateway 启动依赖 YAML 配置文件,用来声明监听端口、后端 Easysearch 地址和认证信息。进入安装目录后,找到 gateway.yml 并按实际环境修改:
# 按实际情况填写可访问的 Easysearch 地址
LOGGING_ES_ENDPOINT:https://localhost:9200/
LOGGING_ES_USER:admin
LOGGING_ES_PASS:"你的 Easysearch 密码"
# 按实际情况填写可访问的 Easysearch 地址
PROD_ES_ENDPOINT:https://localhost:9200/
PROD_ES_USER:admin
PROD_ES_PASS:"你的 Easysearch 密码"
# 按需设置 Gateway 对外监听端口
GW_BINDING:"0.0.0.0:8000"
步骤 3:启动 Gateway #
进入 Gateway 安装目录,执行下面命令启动程序:
# 进入安装目录
cd /opt/gateway
# 运行程序(gateway-linux-arm64 为可执行文件名)
./gateway-linux-arm64


程序启动后,即可通过配置端口访问 Easysearch 服务。

在前台运行模式下,如需停止 Gateway,按 Ctrl+C 即可。

如果希望将 Gateway 作为后台服务运行,可执行:
# 命令中的 gateway-linux-arm64 为可执行文件名
./gateway-linux-arm64 -service install && ./gateway-linux-arm64 -service start
如需卸载服务,执行以下命令:
./gateway-linux-arm64 -service stop
./gateway-linux-arm64 -service uninstall
步骤 4:验证 Gateway 是否正常工作 #
通过 Gateway 间接访问 Easysearch,确认转发通路正常:
# 通过 Gateway(8000 端口)访问 Easysearch
curl http://0.0.0.0:8000
# 对比直连 Easysearch 的结果
curl -ku admin:你的密码 https://localhost:9200
两条命令返回的 JSON 结果应基本一致。若都能正常响应,说明 Gateway 已成功接管 Easysearch 的访问入口。
如果你的生产环境需要将搜索服务开放给大量应用和用户,建议将 Gateway 纳入标准部署方案。借助 Gateway,你可以更好地保护后端 Easysearch 集群,并获得限流限速、缓存加速、安全防护、审计日志等增强能力,让整体架构更健壮、更安全、更可观测。
如果在部署过程中遇到问题,欢迎查阅 官方文档。祝你部署顺利!




