You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ingress从networking.k8s.io/v1beta1迁移至v1报端口类型错误如何解决

报错原因与解决方法

核心报错原因

  • Kubernetes networking.k8s.io/v1 版本的Ingress API对spec.rules[*].http.paths[*].backend.service.port字段的结构做了强制变更:不再支持直接传入字符串格式的端口名/数字,必须传入包含name(对应Service定义的端口名称)或number(对应端口号)的键值映射结构。
  • 你原有代码中直接将http/http-protected字符串赋值给port字段,不符合v1 API的类型要求,因此触发got "string", expected "map"的校验错误。

修复方案

修改报错行对应的Ingress模板代码,把端口名嵌套到name字段下即可,修改后的对应代码段如下:

backend:
  service:
    name: my-service-svc
    port:
      name: {{ if .Values.oauth2.enable }}http-protected{{ else }}http{{ end }}

注意调整缩进层级,和同文件下/couchdb、/rabbitmq路径的port字段缩进保持一致即可,修改后端口的匹配逻辑和原有逻辑完全一致,仅适配了v1版本的API规范。

内容的提问来源于stack exchange,提问作者IFThenElse

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 10:18:04