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

399
Visualizações
Relación del servicio virtual de Istio con el servicio normal de Kubernetes

Estoy viendo un video de Pluralsight en la red de servicios de Istio. Una parte de la presentación dice esto:

VirtualService usa el servicio Kubernetes para encontrar las direcciones IP de todos los pods. VirtualService no enruta ningún tráfico a través del servicio [Kubernetes], sino que solo lo usa para obtener la lista de puntos finales a los que podría ir el tráfico.

Y muestra este gráfico (para mostrar el descubrimiento del pod, no para el enrutamiento del tráfico):

VirtualService usa el servicio para obtener direcciones IP de pods

Esto me confunde un poco porque no sé cómo un Istio VirtualService sabe qué Service de Kubernetes mirar. No veo ninguna referencia en los archivos yaml de Istio VirtualService de ejemplo a un Service de Kubernetes.

He teorizado que DestinationRules podría tener suficientes etiquetas para llegar solo a los pods necesarios, pero los ejemplos solo usan las etiquetas v1 y v2 . Parece poco probable que una versión sola proporcione solo los pods necesarios. (Muchos Services diferentes podrían estar en v1 o v2 ).

¿Cómo sabe un Istio VirtualService a qué Service de Kubernetes asociarse?

o dicho de otra manera,

¿Cómo sabe Istio VirtualService cómo encontrar los pods correctos de todos los pods del clúster?

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

0

Al crear un VirtualService, define qué servicio buscar en la sección route.destination

port : servicio que se ejecuta en el puerto

host : nombre del servicio

 apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: test spec: hosts: - "example.com" gateways: - test-gateway http: - match: - uri: prefix: / route: - destination: port: number: 80 host: app-service

asi que,

app-pod/s -> (administrado por) app-service -> servicio virtual de test

over 4 years ago · Santiago Trujillo Relatório

0

La respuesta de Arfat es correcta.

Quiero agregar la siguiente parte de los documentos sobre el host, lo que debería aclarar aún más las cosas. https://istio.io/latest/docs/reference/config/networking/virtual-service/#VirtualService

[...] Nota para los usuarios de Kubernetes: cuando se utilizan nombres cortos (por ejemplo, "revisiones" en lugar de "reviews.default.svc.cluster.local"), Istio interpretará el nombre corto en función del espacio de nombres de la regla, no el servicio. Una regla en el espacio de nombres "predeterminado" que contiene un host "revisiones" se interpretará como "reviews.default.svc.cluster.local" , independientemente del espacio de nombres real asociado con el servicio de revisiones. Para evitar posibles errores de configuración, se recomienda utilizar siempre nombres de dominio completos en lugar de nombres cortos.

Entonces, cuando escribe host: app-service y VirtualService está en el espacio de nombres default , el host se interpreta como app-service.default.svc.cluster.local , que es el FQDN del servicio kubernetes. Si el servicio de aplicaciones está en otro espacio de nombres, digamos dev , debe configurar el host como host: app-service.dev.svc.cluster.local .

Lo mismo ocurre con DestinationRule , donde el FQDN de un servicio de kubernetes también se define como host. https://istio.io/latest/docs/reference/config/networking/destination-rule/#DestinationRule

VirtualService y DestinationRule están configurados para un host. VirtualService define a dónde debe ir el tráfico (por ejemplo, host, pesos para diferentes versiones, ...) y DestinationRule define cómo se debe manejar el tráfico (por ejemplo, algoritmo de equilibrio de carga y cómo se definen las versiones).

Entonces el tráfico no se enruta así

Gateway -> VirtualService -> DestinationRule -> Servicio -> Pod, pero como

Puerta de enlace -> Servicio, teniendo en cuenta la configuración de VirtualService y DestinationRule.

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