Service Discovery und DNS – Übersicht
In diesem Thema wird beschrieben, wie GKE in Azure mit Domain Name Services (DNS) interagiert.
Service Discovery
Die Diensterkennung ist der Prozess, bei dem Arbeitslasten Dienste ermitteln, ohne die IP-Adresse des Dienstes zu kennen. In diesem Abschnitt wird beschrieben, wie GKE in Azure die Diensterkennung und verwaltetes DNS implementiert.
Kubernetes generiert automatisch Dienstnamen, die folgende Spezifikation verwenden:
service.namespace.svc.cluster.local
Wobei:
service
: Name Ihres Dienstesnamespace
: Namespace Ihres Dienstes
Arbeitslasten greifen auch über DNS-Namen auf externe Dienste wie example.net
zu. Weitere Informationen zum Verhalten von DNS in Kubernetes finden Sie unter DNS für Dienste und Pods.
CoreDNS
GKE in Azure verwendet CoreDNS zum Auflösen von DNS-Namen in Clustern. CoreDNS wird als redundantes, skaliertes Deployment im Namespace kube-system
ausgeführt. Das CoreDNS-Deployment verfügt über einen Service, der die CoreDNS-Pods gruppiert und ihnen eine einzige IP-Adresse zuweist. Das CoreDNS-Deployment wird mit der Größe und Nutzung des Clusters skaliert.
NodeLocal DNSCache
GKE in Azure verwendet NodeLocal DNSCache, um die DNS-Leistung bei der Suche zu verbessern. NodeLocal DNSCache wird auf jedem Knoten im Cluster als DaemonSet ausgeführt. Wenn ein Pod eine DNS-Anfrage stellt, wird die Anfrage zuerst an den DNS-Cache auf demselben Knoten gesendet. Wenn der Cache die DNS-Anfrage nicht auflösen kann, leitet er die Anfrage an Folgendes weiter:
- CoreDNS für einen internen Namen (z. B.
foo.bar.svc.cluster.local
)
Nächste Schritte
- Eine Übersicht über die Verwendung von DNS in Kubernetes-Clustern finden Sie unter DNS für Dienste und Pods.