Sobes.tech
Middle+

¿Qué se usa con más frecuencia en la actualidad: la clase de ingreso o la especificación del controlador de ingreso directamente en la aplicación?

sobes.tech AI

Respuesta de la IA

La clase de ingreso (ingressClassName) se usa con más frecuencia.

Esto permite:

  • Separar la configuración del ingreso de la configuración de la aplicación.
  • Gestionar más fácilmente diferentes controladores de ingreso en un mismo clúster.
  • Aplicar de manera flexible diferentes configuraciones de controladores de ingreso para diferentes ingresos (por ejemplo, diferentes certificados SSL, diferentes tipos de balanceo).

Es considerado un enfoque obsoleto indicar el controlador de ingreso mediante anotaciones (por ejemplo, kubernetes.io/ingress.class) en la mayoría de los escenarios, especialmente con la aparición de ingressClassName en la API networking.k8s.io/v1.

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: minimal-ingress
spec:
  ingressClassName: nginx # prefiera este enfoque
  rules:
  - http:
      paths:
      - path: /test
        pathType: Prefix
        backend:
          service:
            name: test-service
            port:
              number: 80
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: older-ingress
  annotations:
    kubernetes.io/ingress.class: nginx # enfoque más antiguo, aún soportado por algunos controladores
spec:
  rules:
  - http:
      paths:
      - path: /test
        pathType: Prefix
        backend:
          service:
            name: test-service
            port:
              number: 80

En la tabla comparativa:

Aspecto ingressClassName Anotación kubernetes.io/ingress.class
Estado Recomendado Obsoleto (en la mayoría de los casos)
Flexibilidad Alta Media
Legibilidad Mejor Peor
API Parte de la especificación de la API Anotación