Elasticsearch Service 通过 WorkBuddy 连接器进行 ES 集群的智能运维

腾讯云 Elasticsearch Service(ES)提供 MCP(Model Context Protocol)服务,并配套三个运维 Skill,以连接器的形式集成在腾讯 WorkBuddy 中。完成连接器授权后,你无需登录控制台、无需编写脚本,即可通过自然语言对话完成 ES 集群的健康巡检、故障根因定位、索引与分片治理、扩容与重启等运维操作。

相关产品
Elasticsearch Service 产品页,含版本规格、价格与购买入口。

这篇说说如何在 WorkBuddy 中配置腾讯云 ES 连接器,并通过对话方式完成集群的智能运维。

一、适用场景:

该能力适用于以下典型场景:

场景分类 典型诉求
日常巡检 定时巡检某地域全部集群,输出健康评分与风险排序
故障定位 集群 Red/Yellow、CPU 持续高、JVM OOM、GC 频繁、写入拒绝、查询变慢、磁盘告警、集群只读、Master 过载
数据面治理 未分配分片根因分析与重试、副本数与刷新间隔调整、解除只读阻塞、别名切换、索引滚动、任务取消
管控面变更 节点扩容、磁盘扩容、滚动重启、节点重启、Kibana 重启与访问控制、容量预测

二、功能架构

连接器采用 MCP + Skill 的双层架构:

·MCP 层:由腾讯云托管的 MCP Server(https://tcmcpserver.cloud.tencent.com/es/mcp)提供,负责将 ES 云 API 与 ES 数据面接口封装为标准 Tool,并在服务端完成鉴权、参数校验与安全前置检查。

·Skill 层:以知识包的形式约束模型的调用顺序、取数口径、评分规则与安全边界,确保同一类问题的排查路径与结论口径一致。

三个 Skill 职责互斥、按需协作:

Skill 名称 定位 能力范围 是否产生变更
tencent-es-diagnose 只读诊断与巡检 集群信息、监控指标、运行日志、变更记录、ES 只读数据面接口、确定性健康打分、批量巡检 否,仅只读
tencent-es-data-panel 数据面变更 集群/索引 settings 变更、索引开关、强制刷新、别名切换、索引滚动、分片重试、任务取消 是,需二次确认
tencent-es-control-panel 管控面变更 节点扩容、磁盘扩容、集群滚动重启、节点重启、Kibana 重启与访问控制、容量预测、变更进度跟踪 是,需二次确认

三者的典型协作链路如下:

tencent-es-diagnose(定位根因) │ ├─ 结论:索引 / 分片 / settings 层问题 │ └──▶ tencent-es-data-panel(落地数据面变更) │ └─ 结论:节点 / 集群资源不足 └──▶ tencent-es-control-panel(扩容 / 重启) └──▶ 变更进度跟踪 → 回读核对

当前版本共提供 46 个 Tool,其中只读类 30 个、变更类 16 个(管控面 8 个、数据面 8 个)。

三、前提条件

1. 已安装并登录 WorkBuddy 客户端。

2. 已开通腾讯云 Elasticsearch Service,且目标地域下存在运行中的 ES 集群。

3. 已为操作账号授予相应的 CAM 权限:

Skill 名称 所需权限
tencent-es-diagnose es:Describe*、monitor:GetMonitorData
tencent-es-data-panel 在上述基础上追加 es:RequestInstances
tencent-es-control-panel 在只读权限基础上追加 es:UpdateInstance、es:RestartInstance、es:RestartNodes、es:RestartKibana

注意:建议按最小权限原则授权。若仅需巡检与故障定位,只授予只读权限即可,可从源头杜绝误操作风险。

四、步骤一:添加腾讯云 ES 连接器

1. 打开 WorkBuddy,在左上角的侧边栏,找到「专家·技能·连接器」,点击进入连接器管理页面,搜索找到腾讯云 Elasticsearch Service 。

2. 单击连接,按页面提示完成腾讯云账号授权。

注意:说明:

注意:鉴权在宿主层完成,SecretId/SecretKey 由连接器统一托管,Skill 与模型上下文均不接触密钥明文,也无需在本地配置环境变量。

五、步骤二:发起运维对话,选择已连接的连接器:

在对话中选择已经连接的连接器,用自然语言描述你的诉求,并明确给出集群 ID 与地域。例如:帮我看下广州地域的集群健康情况。

模型会按 Skill 固化的调查顺序依次取数,并输出结构化报告。

六、步骤三:确认并执行变更

当诉求涉及变更时,模型会先完成前置校验,再向你展示完整的操作清单,包括:

·将要调用的 Tool 名称;

·全部参数及其当前值与目标值;

·该操作的影响面与风险等级。

你回复「确认」后,变更才会真正下发。变更完成后,模型会自动回读集群状态并跟踪变更进度。

注意:变更类 Tool 一调即下发,不提供 dry-run(CesRolloverIndex 除外,其支持 DryRun 预演)。请在确认前仔细核对参数,尤其是节点数与磁盘容量。

七、安全机制

连接器在设计上采用多层防护,保障线上集群安全:

防护层 机制说明
鉴权隔离 密钥由连接器在宿主层托管,Skill 与模型上下文不接触密钥明文,且不会在对话中回显密钥值
权限分离 诊断 Skill 仅允许调用显式白名单内的只读 Tool,任何写操作一律拒绝,即使用户催促或声称操作安全
二次确认 全部 16 个变更类 Tool 在下发前必须展示完整参数与影响面,并获得用户明确确认
前置校验 变更前强制调用只读接口核对集群状态与当前配置值,状态异常时阻断
服务端检查 MCP Server 侧内置强制前置检查(如集群重启要求健康色为 green),被阻断时如实转述,不重试、不换参数硬闯
禁止绕行 Tool 不可用时不得改用命令行工具或自写签名脚本,避免跳过上述所有保护

八、能力边界

以下操作不支持通过连接器执行,请在控制台或 Kibana 中完成:

分类 不支持的操作
管控面 缩容(减节点、降配规格、缩磁盘)、删除集群、版本降级、规格升配、内核版本升级、节点开关机、维护时间窗设置
集群重启 仅支持滚动重启且要求健康色为 green;全量重启与强制重启需通过控制台
数据面 索引创建与删除、number_of_shards 变更、mapping 变更、数据读写(search / bulk / reindex / delete_by_query)
分片操作 手工指定分片移动(move、allocate_replica);allocate_stale_primary、allocate_empty_primary 等可能导致数据丢失的操作
Settings 变更类 Tool 的可改项为严格枚举(集群级 9 项、索引级 11 项),不接受任意原生 setting key

注意:说明:

注意:遇到暂不支持的操作时,模型仍会执行可行的只读校验(如查询当前规格、可升级版本、插件兼容性、快照备份状态),并给出控制台操作路径,而不是简单回复「不支持」。

赞 (0)
上一篇 5天前
下一篇 5天前