跳到主要内容

跨集群对比

跨集群对比功能让您可以并排比较同一 Kubernetes 资源在两个不同集群或环境中的配置差异。在配置偏差演变成故障前及时发现问题。

打开对比视图

  1. 打开任意资源的详情页
  2. 点击操作栏中的 Compare 按钮
  3. 在弹出对话框中选择:
    • Source — 当前集群 / Namespace / 资源(已预填)
    • Target — 要进行对比的目标集群、Namespace 和资源名称
  4. 点击 Compare

Monaco Diff Editor 随即打开,左侧显示来源 YAML,右侧显示目标 YAML。

读懂差异对比

高亮颜色含义
绿色行存在于目标,不存在于来源
红色行存在于来源,不存在于目标
黄色行键名相同,但值不同
无高亮完全相同

默认情况下,对比会忽略 managedFieldsresourceVersionuidcreationTimestamp,以减少由元数据天然差异带来的噪音。

API 参考

该功能由单个端点驱动:

POST /api/v1/compare
Content-Type: application/json

{
"source": {
"cluster": "prod-cluster",
"namespace": "default",
"resource": "deployments",
"name": "api-server"
},
"target": {
"cluster": "staging-cluster",
"namespace": "default",
"resource": "deployments",
"name": "api-server"
}
}

响应:

{
"source": { /* 完整资源 YAML 对象 */ },
"target": { /* 完整资源 YAML 对象 */ },
"hasDiff": true
}

常见使用场景

发现环境配置偏差

prod-cluster/default/deployments/api-server
vs.
staging-cluster/default/deployments/api-server

验证变更晋级 将变更从 staging 晋级到 prod 后,确认 Deployment 配置完全一致。

审查副本配置 对比不同区域的资源请求与限制,确保配置一致性。

提示

您不仅可以跨集群对比资源,还可以在同一集群的不同 Namespace 之间进行对比,这对多租户场景非常有用。

相关文档