Résolution de nom DNS
Ce document s'applique à Cloud Service Mesh avec Envoy et aux anciennes API d'équilibrage de charge, qui incluent des règles de transfert.
Ce document explique la relation entre l'adresse IP virtuelle d'une règle de transfert et la manière dont la règle de transfert est associée à un service. Ce document explique également comment planifier et configurer un DNS pour une communication de service à service dans un maillage de services Cloud Service Mesh.
Prenons l'exemple suivant, dans lequel trois services, service-a
, service-b
et service-c
, communiquent entre eux. Les développeurs utilisent souvent des noms de domaine complets dans leur code pour communiquer entre plusieurs services. Si votre nom de domaine est example.com, les trois services peuvent être représentés comme suit:
service-a.example.com
service-b.example.com
service-c.example.com
Lorsque vous configurez les ressources Cloud Service Mesh pour créer un maillage de services, vous configurez une règle de transfert pour chacun des services. Une règle de transfert représente la paire IP:Port
du service de destination. Pour que le trafic de sortie soit intercepté par un proxy side-car Envoy, l'adresse IP de destination doit correspondre à l'adresse IP associée à la règle de transfert. Vous devez donc provisionner une adresse IP pour chaque service. Exemples :
service-a.example.com
a l'adresse IP10.0.0.100
.service-b.example.com
a l'adresse IP10.0.0.101
.service-c.example.com
a l'adresse IP10.0.0.102
.
La configuration Cloud Service Mesh correspondante comporte trois règles de transfert, FR1, FR2 et FR3, utilisant chacune le port 80
:
- FR1 possède l'adresse IP
10.0.0.100:80
, associée àservice-a.example.com
. - FR2 possède l'adresse IP
10.0.0.101:80
, associée àservice-b.example.com
. - FR3 possède l'adresse IP
10.0.0.102:80
, associée àservice-c.example.com
.
Lorsque service-a
appelle service-b
à l'aide du nom de domaine complet service-b.example.com
, trois choses se produisent :
service-a
effectue d'abord une résolution DNS pourservice-b.example.com
afin de résoudre l'adresse IP deservice-b
.- Le domaine est résolu en
10.0.0.101
de sorte qu'il corresponde à l'adresse IP configurée de la règle de transfert deservice-b
. - Le proxy Envoy peut désormais intercepter le trafic et l'acheminer vers le service de backend contenant des backends
service-b
, qu'il s'agisse de NEG ou de MIG.
Vous pouvez configurer une zone privée gérée Cloud DNS pour héberger les enregistrements de ressources de vos services.