Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

208
Visualizações
¿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 Respostas
Responde à pergunta

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda