GKE中GCPBackendPolicy关联Cloud Armour安全策略不生效问题
问题分析与解决方案
针对你遇到的GCPBackendPolicy关联Cloud Armour策略后未生效的问题,主要遗漏了以下关键配置:
1. 未显式关联跨namespace的网关
GCPBackendPolicy默认仅会绑定同一namespace下的Gateway创建的负载均衡后端服务。由于你的Gateway部署在其他namespace,必须在GCPBackendPolicy的spec中添加gatewayRef字段,明确指定网关的名称和所在namespace,确保策略能关联到正确的LB后端服务。
2. targetRef.group字段配置不规范
Kubernetes Service资源的API group为core,虽然空字符串可能被兼容,但显式设置该字段可以避免潜在的资源匹配问题。
修正后的GCPBackendPolicy清单
apiVersion: networking.gke.io/v1 kind: GCPBackendPolicy metadata: name: my-allow-list namespace: app-ns spec: default: securityPolicy: my-allow-list targetRef: group: "core" kind: Service name: my-service namespace: app-ns # 添加网关关联配置 gatewayRef: name: <你的网关名称> namespace: <网关所在的namespace>
验证步骤
- 应用修正后的配置:
kubectl apply -f <修正后的yaml文件> - 等待2-3分钟后,查看GCPBackendPolicy状态,确认
Attached条件仍为True:kubectl describe gcpbackendpolicy my-allow-list -n app-ns - 登录GCP控制台,检查对应负载均衡后端服务的
Backend security policy字段是否已填充目标策略。
内容的提问来源于stack exchange,提问作者user2399020
相关产品推荐
相关产品推荐

