从nginx-controller简介ingressclass

2022-04-13  本文已影响0人  wwq2020

简介

ingressclass用于在集群内有多个ingress controller时候,区分ingress由谁处理
ingress用于暴露集群内的服务
nginx-controller是一个Ingress controller实现
nginx-controller有2个配置在此时有用(--ingress-class和--controller-class)

nginx-controller默认controller-class为k8s.io/ingress-nginx,可以通过--controller-class启动参数修改

无default ingressclass

如下

apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
  name: nginx-example
spec:
  controller: k8s.io/ingress-nginx

ingress未设置ingressClassName

会被忽略

ingress设置了ingressClassName

对应的ingressclass的spec.controller和nginx-controller的controller-class不等

会被忽略

对应的ingressclass的spec.controller和nginx-controller的controller-class相等

会被处理

有default ingressclass

如下

apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
  annotations:
    ingressclass.kubernetes.io/is-default-class: "true"
  name: nginx
spec:
  controller: k8s.io/ingress-nginx

ingress未设置ingressClassName

default ingressclass的spec.controller和nginx-controller的controller-class不等

会被忽略

default ingressclass的spec.controller和nginx-controller的controller-class相等

会被处理

ingress设置了ingressclassName

对应的ingressclass的spec.controller和nginx-controller的controller-class不等

会被忽略

对应的ngressclass的spec.controller和nginx-controller的controller-class相等

会被处理

上一篇下一篇

猜你喜欢

热点阅读