Ingress 资源与 networking.k8s.io/v1 问题

这篇具有很好参考价值的文章主要介绍了Ingress 资源与 networking.k8s.io/v1 问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 no matches for kind “Ingress” in version “networking.k8s.io/v1”

在 kubernetes v1.18.20 根据 traefik 官方文档部署 时,当执行 kubectl apply -f 04-whoami-ingrsss.yaml 时 上执行以下 yaml 文件创建 ingress 资源的时候出现了这种报错 error: unable to recognize "04-whoami-ingress.yaml": no matches for kind "Ingress" in version "networking.k8s.io/v1"

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: whoami-ingress
  namespace: ingress-ns
spec:
  rules:
  - http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: whoami
            port:
              name: web

查看 kubernetes 官方文档:https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/、https://kubernetes.io/blog/2021/07/26/update-with-ingress-nginx/ 和 ingress-nginx 官方文档: https://kubernetes.github.io/ingress-nginx/,其中有下面这两段话

kubernetes官网:

The v1.22 release will stop serving the following deprecated API versions in favor of newer and more stable API versions:

Ingress in the extensions/v1beta1 API version will no longer be served
Migrate to use the networking.k8s.io/v1beta1 API version, available since v1.14. Existing persisted data can be retrieved/updated via the new version.

Ingress 资源与 networking.k8s.io/v1 问题

ingress-nginx 官网:

Ingress 资源与 networking.k8s.io/v1 问题

也就是说自从 Kubernetes v1.14 版本开始 Ingress 资源才被加入到 networking.k8s.io/v1beta1 这个v1beta1 版本中来,至于什么时候开始这个 networking.k8s.io/v1beta1 这个beta版本变成了稳定版本,可以看这里,也就是说到了 kubernetes v1.19 版本Ingress 资源才被加入到 networking.k8s.io/v1 这个版本中来。

因此我们可以把 Ingressk8s 各个版本中所处的 apiVersion 做一个归纳:

Version<kuberentes v1.14 kuberentes v.14 <= Version <= kuberentes v1.18 kubernetes v1.19 <=Version
extensions/v1beta1 networking.k8s.io/v1beta1 networking.k8s.io/v1

当我把yaml 文件中的 networking.k8s.io/v1 修改为 networking.k8s.io/v1beta1 ,又发生了如下的错误:

error: error validating "04-whoami-ingress.yaml": error validating data: ValidationError(Ingress.spec.rules[0].http.paths[0].backend): unknown field "service" in io.k8s.api.networking.v1beta1.IngressBackend; if you choose to ignore these errors, turn validation off with --validate=false

也就是说在这个 networking.k8s.io/v1beta1 这个 apiVersion 版本下, 我们ingress 的yaml 里,有些 field 字段是不存在的,比如: service, e.g ,下面我们需要修改我们的 04-whoami-ingress.yaml 文件,请参考这里:https://doc.traefik.io/traefik/providers/kubernetes-ingress/文章来源地址https://www.toymoban.com/news/detail-404334.html

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: whoami-ingress
  namespace: ingress-ns
spec:
  rules:
  - http:
      paths:
      - path: /
        backend:
          serviceName: whoami
          servicePort: 80

到了这里,关于Ingress 资源与 networking.k8s.io/v1 问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • k8s安装recognize “calico.yaml“: no matches for kind “PodDisruptionBudget“ in version “policy/v1“

    报错内容 calico版本 与 k8s版本不匹配 查看k8s的版本 kubectl version   查看k8s对应的calico的版本 https://projectcalico.docs.tigera.io/archive/v3.20/getting-started/kubernetes/requirements  查看需要v3.2.0的版本的calico 重新下载正确版本calico 再执行 kubectl apply -f calico.yaml 可以看到以下效果,代表成功了

    2024年02月12日
    浏览(48)
  • k8s ingress访问响应慢的问题(阿里云环境)

       生产环境采用的是ingress,对接阿里云SLB,但出现了多次访问服务就会有一次响应特别慢的故障,记录一下处理方法。    后端ingress的pod 上进行抓包,抓一下ingress的网络流量,多访问复现几次问题,看看从ingress pod 的网络抓包里看看能否看到访问超时的情况,从网络连接

    2024年02月02日
    浏览(38)
  • k8s 安装 Nginx Ingress 控制器时无法下载镜像的问题

    Ingress 是对集群中服务的外部访问进行管理的 API 对象,典型的访问方式是 HTTP。 Ingress 可以提供负载均衡、SSL 终结和基于名称的虚拟托管 官方说明如下: 你必须拥有一个 Ingress 控制器 才能满足 Ingress 的要求。 仅创建 Ingress 资源本身没有任何效果 你可能需要部署 Ingress 控制

    2024年02月07日
    浏览(55)
  • 第13关 解决K8s中Ingress Nginx控制器无法获取真实客户端IP的问题

    ------ 课程视频同步分享在今日头条和B站 大家好,我是博哥爱运维。 这节课带大家探索并分享最全面的解决在使用Kubernetes(K8s)和Ingress-Nginx-Controller中无法获取客户端真实IP问题的视频教程,帮助你快速理解并解决这一问题。 如果我们按下面网络架构图,暴露我们服务到公

    2024年02月03日
    浏览(50)
  • k8s ingress

    一、浅谈ingress (ingress 是与service配合使用的)  Ingress能把Service(Kubernetes的服务)配置成外网能够访问的URL,流量负载均衡,及SSL,并提供域名访问的虚拟主机等,客户通过访问URL(API资源服务的形式,例如:caas.one/kibana)进入和请求Service,一个Ingress控制器负责处理所有

    2024年02月12日
    浏览(39)
  • [Kubernetes]9. K8s ingress讲解借助ingress配置http,https访问k8s集群应用

    前面讲解了使用Helm部署mysql集群,这里来看看使用Ingress搭建负载均衡功能 功能类似 Nginx ,可以根据域名、路径把请求转发到不同的 Service , Ingress 为外部访问集群提供了一个 统一 入口, 避免 了 对外暴露集群端口 ,可以配置 https,http访问集群应用,接下来看看如何通过腾讯云来

    2024年01月22日
    浏览(59)
  • 【K8S 云原生】K8S的对外服务—ingress

    目录 一、K8S的Service 1、Service的作用 2、Service类型: 二、ingress 1、ingress的组成: 2、ingress资源的定义项: 三、nginx-ingress-controller暴露服务端的方式 1、Deployment+LoadBalancer模式: 1、工作流程图: 2、Daemonset+hostnetwork+nodeSelector模式: 1、工作流程图 2、实验: 3、deployment+NodePort

    2024年01月18日
    浏览(47)
  • k8s之ingress

    ingress基于域名进行映射,把url(http https)的请求转发到service,再由service把请求转发到每一个pod ingress只要一个或者少量的公网ip或者LB,可以把多个http请求暴露到外网,七层反向代理 理解为service的service,是一组基于域名和URL路径,把一个或者多个请求转发到service 先是七层代

    2024年01月19日
    浏览(48)
  • K8S中的ingress

    前言: Kubernetes暴露服务的方式目前只有三种:LoadBlancer Service、NodePort Service、Ingress;这一片主要聊聊Ingress。 简单说,是一个代理,可以根据配置转发请求到指定的服务上。 通俗来讲,ingress和之前提到的Service、Deployment,也是一个k8s的资源类型,ingress用于实现用域名的方式访

    2024年01月17日
    浏览(46)
  • k8s ingress (二)

    k8s ingress ( 二 ) Ingress介绍 在前面课程中已经提到,Service对集群之外暴露服务的主要方式有两种:NodePort和LoadBalancer,但是这两种方式,都有一定的缺点: NodePort方式的缺点是会占用很多集群机器的端口,那么当集群服务变多的时候,这个缺点就愈发明显 LB方式的缺点是每个

    2024年02月11日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包