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

201
Vistas
¿Cómo puedo unirme a un grupo de entrada de ALB en lugar de anular uno existente en EKS?

Estoy implementando K8S en el clúster de AWS EKS y uso ALB para las implementaciones. Me gustaría usar un ALB para varios servicios, pero no sé cómo compartir el mismo ALB. Cada vez que implemente un ingreso, anulará uno existente.

Tengo dos archivos de configuración yaml:

a.yaml

 --- apiVersion: extensions/v1beta1 kind: Ingress metadata: name: sample-ingress namespace: default annotations: kubernetes.io/ingress.class: alb alb.ingress.kubernetes.io/group.name: sample-ingress alb.ingress.kubernetes.io/scheme: internet-facing alb.ingress.kubernetes.io/target-type: ip alb.ingress.kubernetes.io/group.order: '1' spec: rules: - http: paths: - path: /sample-app/* backend: serviceName: sample-entrypoint servicePort: 80

b.yaml

 apiVersion: extensions/v1beta1 kind: Ingress metadata: name: sample-ingress namespace: default annotations: kubernetes.io/ingress.class: alb alb.ingress.kubernetes.io/group.name: sample-ingress alb.ingress.kubernetes.io/scheme: internet-facing alb.ingress.kubernetes.io/target-type: ip alb.ingress.kubernetes.io/group.order: '2' spec: rules: - http: paths: - path: /sample-es/* backend: serviceName: sample-es-entrypoint servicePort: 9200

Me gustaría que ambos compartan el mismo ALB, así que especifico que el nombre del grupo sea el mismo:

alb.ingress.kubernetes.io/group.name: sample-ingress

También especifico un orden diferente en los dos archivos.

pero cuando ejecuto kubectl apply -f a.yaml , crea un ALB con la regla que especifiqué en el archivo de configuración: /sample-app/* . Pero cuando ejecuto kubectl apply -f b.yaml , anula la regla existente con /sample-es/* . Entonces, ¿cómo puedo hacer que ambos compartan el mismo ALB y les permita proporcionar reglas diferentes?

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

0

Supongo que puede crear entradas separadas y adjuntarlas a la misma configuración de servicio. Apunte la configuración del servicio con alb, y eso debería funcionar. Tengo una configuración para servicios orientados al interior, vea si esto funciona para usted.

 apiVersion: v1 kind: Service metadata: annotations: service.beta.kubernetes.io/aws-load-balancer-internal: 0.0.0.0/0 labels: app.kubernetes.io/instance: goldendev-ingress-test app.kubernetes.io/managed-by: Tiller app.kubernetes.io/name: ingress-test environment: DEV helm.sh/chart: ingress-test name: ingress-test namespace: default spec: externalTrafficPolicy: Cluster ports: - name: http port: 80 protocol: TCP targetPort: 8080 selector: app.kubernetes.io/instance: z1 app.kubernetes.io/name: gunicorn sessionAffinity: None type: LoadBalancer

Ingress.yaml

 apiVersion: extensions/v1beta1 kind: Ingress metadata: name: sample-ingress namespace: default annotations: kubernetes.io/ingress.class: alb alb.ingress.kubernetes.io/group.name: sample-ingress alb.ingress.kubernetes.io/scheme: internal alb.ingress.kubernetes.io/target-type: ip alb.ingress.kubernetes.io/group.order: '1' spec: rules: - http: paths: - path: /mappings/v1/hello/* backend: serviceName: ingress-test servicePort: 80 --- apiVersion: extensions/v1beta1 kind: Ingress metadata: name: sample-ingress-1 namespace: default annotations: kubernetes.io/ingress.class: alb alb.ingress.kubernetes.io/group.name: sample-ingress alb.ingress.kubernetes.io/scheme: internal alb.ingress.kubernetes.io/target-type: ip alb.ingress.kubernetes.io/group.order: '2' spec: rules: - http: paths: - path: /mappings/v1/teams/* backend: serviceName: ingress-test-2 servicePort: 80

Verifiqué en la consola de AWS, ha creado solo 1 balanceador de carga con configuración de servicio. Lista de ingreso:

 kubectl get ingress NAME HOSTS ADDRESS PORTS AGE sample-ingress * 80 19m sample-ingress-1 * 80 19m

Déjeme saber si esto ayuda.

over 4 years ago · Santiago Trujillo Denunciar

0

Lo he intentado con hosts como se muestra a continuación;

 apiVersion: extensions/v1beta1 kind: Ingress metadata: name: pub-uat-alb namespace: "uat-env" labels: imaharah-k8s/environment: staging annotations: kubernetes.io/ingress.class: alb alb.ingress.kubernetes.io/scheme: internet-facing alb.ingress.kubernetes.io/target-type: instance alb.ingress.kubernetes.io/tags: environment=staging alb.ingress.kubernetes.io/success-codes: '200,301,401' alb.ingress.kubernetes.io/certificate-arn: arn:aws:acm:us-east-1:123435678977:certificate/hskrhjf93ih-y4325kjhdsf0-hsr98 alb.ingress.kubernetes.io/ssl-policy: ELBSecurityPolicy-TLS-1-1-2017-01 alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 80}, {"HTTPS":443}]' alb.ingress.kubernetes.io/actions.ssl-redirect: '{"Type": "redirect", "RedirectConfig": { "Protocol": "HTTPS", "Port": "443", "StatusCode": "HTTP_301"}}' spec: rules: - http: paths: - path: /* backend: serviceName: ssl-redirect servicePort: use-annotation - host: test1.test.com http: paths: - path: /* backend: serviceName: test1-service servicePort: 80 - host: test2.test.com http: paths: - path: /* backend: serviceName: test2-service servicePort: 80 - host: test3.test.com http: paths: - path: /* backend: serviceName: test3-service servicePort: 80

verificar --->

 [centos@ip-10-0-68-81 pub]$ kubectl get ingress -n uat-env --kubeconfig=$dev NAME CLASS HOSTS ADDRESS PORTS AGE pub-uat-alb <none> test1.test.com,test2.test.com,test3.test.com test-uatenv-testtest-gfsadasd76-94238798.us-east-1.elb.amazonaws.com 80 3d6h
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