Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

667
Vistas
Personalice cómo reemplazar solo el host en la configuración de Ingress

Tengo esta configuración base de ingress.yaml:

 apiVersion: extensions/v1beta1 kind: Ingress metadata: labels: sia: aza app: asap-ingress-internal name: asap-ingress-internal annotations: kubernetes.io/ingress.class: "nginx-external" nginx.ingress.kubernetes.io/use-regex: "true" spec: rules: - host: the-host-value http: paths: - path: /asap-srv-template/(.*) backend: serviceName: asap-srv-template servicePort: 8080

Y desea reemplazar solo el valor spoec.rules.host (y mantener todas las rutas http.como están.

Así que creo un env-var.yaml como este:

 apiVersion: extensions/v1beta1 kind: Ingress metadata: name: asap-ingress-internal spec: rules: - host: the.real.hostname

Pero el resultado es el siguiente:

 $ kustomize build apiVersion: extensions/v1beta1 kind: Ingress metadata: annotations: kubernetes.io/ingress.class: nginx-external nginx.ingress.kubernetes.io/use-regex: "true" labels: app: asap-ingress-internal env: dev sia: aza name: asap-ingress-internal namespace: aza-72461-dev spec: rules: - host: the.real.hostname

He perdido toda la configuración de http.paths y no puedo encontrar cómo hacerlo.

Probé con patches: o patchesStrategicMerge en kustomization.yaml pero el resultado siempre es el mismo.

Cualquier ayuda sería muy apreciada

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Puede usar un parche json para esto, a continuación se muestra un ejemplo.

Aquí hay un ejemplo de kustomization.yaml . Llamará a un parche en la sección de patches :

 apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization resources: - ../../base/app1 patches: - target: kind: Ingress name: my-ingress path: ingress-patch.json

Aquí sería un ejemplo ingress-patch.json :

 [ { "op": "replace", "path": "/spec/rules/0/host", "value": "the.real.hostname" } ]
over 4 years ago · Santiago Trujillo Denunciar

0

Otra opción es hacer un parche en línea. Es el mismo enfoque que ofrece mroma, pero sin el archivo. Lo encuentro más simple.

 # kustomization.yaml resources: - ingress.yaml patches: - target: kind: Ingress name: asap-ingress-internal patch: |- - op: replace path: /spec/rules/0/host value: the.real.hostname
over 4 years ago · Santiago Trujillo Denunciar

0

Si tiene una versión reciente de kubernetes (creo que comienza con el formulario 18), la versión de API de Ingres ya no es la versión beta apiVersion: extensions/v1beta1 ahora es apiVersion: networking.k8s.io/v1 .

He probado la siguiente muestra y funciona:

ingress.yaml

 apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: asap-ingress-internal annotations: kubernetes.io/ingress.class: "nginx-external" nginx.ingress.kubernetes.io/use-regex: "true" spec: rules: - host: the-host-value http: paths: - path: /asap-srv-template/(.*) backend: serviceName: asap-srv-template servicePort: 8080

ingress-patch.yaml

 apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: asap-ingress-internal spec: rules: - host: the.real.hostname

kustomization.yaml

 resources: - ingress.yaml patchesStrategicMerge: - ingress-patch.yaml

Probado con kubectl kustomize (la versión de kubectl es v1.19.7 ) y kustomize build (la versión de kustomize independiente es v3.5.4 )

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda