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

728
Visualizações
Configure el puerto TCP en Nginx Ingress en Azure Kubernetes Cluster (AKS)

Necesito configurar un puerto TCP en mi clúster de AKS para permitir que RabbitMQ funcione

Instalé nginx-ingress con helm de la siguiente manera:

 kubectl create namespace ingress-basic helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx helm install nginx-ingress ingress-nginx/ingress-nginx \ --namespace ingress-basic \ --set controller.replicaCount=2 \ --set controller.nodeSelector."beta\.kubernetes\.io/os"=linux \ --set defaultBackend.nodeSelector."beta\.kubernetes\.io/os"=linux \ --set controller.admissionWebhooks.patch.nodeSelector."beta\.kubernetes\.io/os"=linux

Configuré un registro A con nuestro proveedor de DNS para apuntar a la IP pública del controlador de ingreso.

He creado un secreto TLS (para habilitar https)

He creado una ruta de ingreso con:

 apiVersion: networking.k8s.io/v1beta1 kind: Ingress metadata: name: rabbit-ingress namespace: default annotations: kubernetes.io/ingress.class: nginx nginx.ingress.kubernetes.io/use-regex: "true" nginx.ingress.kubernetes.io/rewrite-target: /$1 spec: tls: - hosts: - my.domain.com secretName: tls-secret rules: - http: paths: - backend: serviceName: rabbitmq-cluster servicePort: 15672 path: /(.*)

Puedo navegar a mi clúster a través del nombre de dominio desde el exterior y ver el panel de control (internamente en 15672) con https válido. Entonces, el ingreso está en funcionamiento, y puedo crear colas, etc., por lo que rabbitmq funciona correctamente.

Sin embargo, no puedo hacer que la parte TCP funcione para publicar en las colas desde fuera del clúster.

Edité el yaml de lo que creo que es el mapa de configuración (azure - clúster - configuración - nginx-ingress-ingress-nginx-controller) para el controlador (nginx-ingress-ingress-nginx-controller) a través de la interfaz del portal azul y agregué esto al final

 data: '5672': 'default/rabbitmq-cluster:5672'

Luego edité ellos yaml para el servicio en sí a través del portal azul y agregué esto al final

 - name: amqp protocol: TCP port: 5672

Sin embargo, cuando trato de acceder a mi dominio usando un cliente de prueba, la solicitud simplemente se agota. (El cliente funcionó cuando usé un LoadBalancer y simplemente presioné la IP externa del clúster, por lo que sé que el código del cliente debería funcionar)

¿Hay otro paso que debería estar haciendo?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Creo que el problema aquí era que helm estaba configurando muchas de mis propias cosas que no podía personalizar demasiado.

Desinstalé el ingreso con helm y cambié el script de creación de ingreso a esto:

 helm install nginx-ingress ingress-nginx/ingress-nginx \ --namespace ingress-basic \ --set controller.replicaCount=2 \ --set controller.nodeSelector."beta\.kubernetes\.io/os"=linux \ --set defaultBackend.nodeSelector."beta\.kubernetes\.io/os"=linux \ --set controller.admissionWebhooks.patch.nodeSelector."beta\.kubernetes\.io/os"=linux \ --set tcp.5672="default/rabbitmq-cluster:5672"

Lo cual preconfigura el reenvío de puertos TCP y no tengo que hacer nada más. No sé si lo afectó, pero esto pareció 'romper' mi implementación de SSL, así que actualicé el script de creación de ruta de ingreso de v1beta a v1 y https volvió a funcionar perfectamente.

 apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: rabbit-ingress namespace: default annotations: kubernetes.io/ingress.class: nginx nginx.ingress.kubernetes.io/use-regex: "true" nginx.ingress.kubernetes.io/rewrite-target: /$1 spec: tls: - hosts: - my.domain.com secretName: tls-secret rules: - host: my.domain.com http: paths: - path: /(.*) pathType: Prefix backend: service: name: rabbitmq-cluster port: number: 15672
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