Visão geral da descoberta de serviços e do DNS
Neste tópico, descrevemos como o GKE no Azure interage com os Serviços de Nome de Domínio (DNS).
Descoberta de serviços
A descoberta de serviços é o processo em que as cargas de trabalho descobrem serviços sem saber o endereço IP deles. Nesta seção, descrevemos como o GKE no Azure implementa a descoberta de serviços e o DNS gerenciado.
O Kubernetes gera automaticamente nomes de serviço que usam a seguinte especificação:
service.namespace.svc.cluster.local
Em que:
service
: o nome do serviçonamespace
: o namespace do serviço
As cargas de trabalho também acessam serviços externos, como example.net
, usando nomes de DNS. Para mais informações sobre o comportamento do DNS no Kubernetes, consulte
DNS para serviços e pods.
CoreDNS
O GKE no Azure usa o CoreDNS para resolver nomes de DNS nos clusters. O CoreDNS é executado como uma
implantação
redundante e escalonada no
namespace kube-system
. A implantação do CoreDNS inclui um
serviço que agrupa os pods do CoreDNS
e atribui a eles um único endereço IP. A implantação do CoreDNS é escalonada com o
tamanho e o uso do cluster.
NodeLocal DNSCache
O GKE na AWS usa o NodeLocal DNSCache para melhorar o desempenho da busca DNS. O NodeLocal DNSCache é executado como um DaemonSet em cada nó do cluster. Quando um pod faz uma solicitação DNS, a solicitação vai primeiro para o cache DNS no mesmo nó. Se o cache não conseguir resolver a solicitação DNS, ele encaminhará a solicitação para:
- O CoreDNS para um nome interno, por exemplo
foo.bar.svc.cluster.local
A seguir
- Para uma visão geral de como o DNS é usado nos clusters do Kubernetes, consulte DNS para serviços e pods.