如何优化K8s Ingress YAML文件?精简重复代码方法咨询
Ingress配置缩减方案
你的Ingress配置里重复了大量xx.com的host块,还有指向同一service的路由,按以下方式修改可以大幅缩减代码量:
优化后的配置
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: namespace: default name: ingress annotations: acme.cert-manager.io/http01-edit-in-place: "true" ingress.kubernetes.io/ssl-redirect: "false" spec: tls: - hosts: - xx.com secretName: xx rules: - host: xx.com http: paths: - path: / pathType: Prefix backend: service: name: servic_1 port: number: 3000 - path: /api_2 pathType: Prefix backend: service: name: service_2 port: number: 8000 - path: /api_3 pathType: Prefix backend: service: name: service_2 port: number: 8000
优化说明
- 合并同一域名的路由规则:所有
xx.com的路由都放到同一个host: xx.com块下的paths数组里,彻底消除重复的host和http层级代码。 - 保留必要的路径区分:虽然
/api_2和/api_3指向同一个service,但路径不同,必须作为独立的paths条目存在,不过已经避免了最冗余的外层重复。
内容的提问来源于stack exchange,提问作者karlos
相关产品推荐
相关产品推荐

