Dimensionnement du réseau

Effectué

Il est essentiel de connaître le nombre de pods et de nœuds avant de pouvoir évaluer le nombre d’adresses IP dont vous avez besoin. Dans la mesure où vous connaissez désormais le nombre nécessaire de pods et de nœuds, voyons maintenant comment dimensionner le réseau.

Dimensionnement du sous-réseau du réseau virtuel

Vous souhaitez un maximum de sept machines virtuelles pour les nœuds de cluster Kubernetes. Rappelez-vous qu’un nœud supplémentaire est ajouté temporairement aux clusters Azure Kubernetes Service (AKS) pendant le processus de mise à niveau. Nous devons donc effectuer nos calculs de dimensionnement du réseau sur la base de huit machines virtuelles.

Maximum 7 VMs + 1 VM for upgrades = 8 node IP addresses

Par défaut, des clusters AKS utilisant le plug-in réseau Azure Container Networking Interface (Azure CNI) sont configurés pour autoriser au maximum 30 pods par nœud. Vous pouvez configurer cette valeur en choisissant n’importe quel nombre compris entre 10 et 250 pods. Les calculs de dimensionnement du réseau doivent permettre le déploiement de ce nombre maximal de pods.

8 VMs x 30 pods per node maximum = 240 pod IP addresses

Il vous faut 8 adresses IP pour les nœuds et 240 adresses IP pour les pods.

8 node IP addresses + 240 pod IP addresses = 248 IP addresses

Conseil

Si vous comptez utiliser un équilibreur de charge Azure Load Balancer interne avec votre cluster, une adresse IP est également nécessaire. Il est courant d’utiliser un sous-réseau dédié pour les équilibreurs de charge, mais si vous prévoyez d’utiliser le même sous-réseau que celui de vos nœuds, vous devez en tenir compte.

Dans cette conception, vous avez décidé de conserver la configuration de pool de nœuds par défaut. La configuration par défaut se sert d’un unique pool de nœuds en mode Système qui se charge de tout exécuter. Si vous souhaitez vous assurer de l’isolation des composants système des applications, vous avez besoin d’au moins deux pools de nœuds. Vous devez ajuster les calculs de la plage d’adresses IP pour en tenir compte.

Vous pouvez désormais contacter l’équipe responsable de l’allocation réseau dans votre organisation et lui demander un sous-réseau prenant en charge 248 adresses IP. Quand vous créez un sous-réseau dans un réseau virtuel Azure, cinq adresses IP sont réservées à l’usage du système. Une plage d’adresses /24 comporte 251 adresses IP utilisables, ce qui en fait un choix idéal pour le cluster.

Sélection d’une plage d’adresses pour les services Kubernetes

Une fois le sous-réseau des nœuds et des pods sélectionné, il ne reste plus qu’une seule plage d’adresses à sélectionner : la plage d’adresses pour le service Kubernetes. Kubernetes Service fournit une adresse IP virtuelle statique qui permet de router le trafic vers vos pods. Cette plage d’adresses est uniquement utilisée pour le routage du trafic au sein de votre cluster. La plage d’adresses n’est jamais utilisée ou exposée en dehors du cluster. Vous devez donc sélectionner une plage d’adresses de réseau privé qui n’est pas utilisée ailleurs dans Azure ou dans vos réseaux locaux.

Conseil

Dans la mesure où la plage d’adresses du service Kubernetes n’est jamais utilisée en dehors du cluster, il est possible de la réutiliser sur plusieurs clusters.

Les règles de sélection d’une plage d’adresses de services comprennent :

  • La plage d’adresses ne peut pas faire partie de la plage d’adresses IP du réseau virtuel utilisé pour votre cluster.
  • La plage d’adresses ne peut pas faire partie de la plage d’adresses IP des autres réseaux virtuels appairés au réseau du cluster.
  • La plage ne peut chevaucher aucune plage d’adresses IP utilisée dans les réseaux locaux.
  • La plage d’adresses ne peut pas faire partie des plages d’adresses IP 169.254.0.0/16, 172.30.0.0/16, 172.31.0.0/16 ou 192.0.2.0/24.

Vous n’avez souvent pas besoin de plusieurs adresses IP pour des services au sein d’un cluster. En règle générale, vous avez un service situé devant un groupe de pods qui exécutent plusieurs réplicas d’une application. Dans ce cas, huit services différents forment l’application. Vous n’avez donc besoin que de huit adresses IP pour les services.

D’autres services s’exécutant dans le cluster, par exemple des contrôleurs d’entrée ou des maillages de service, peuvent consommer davantage d’adresses IP de services. Il est préférable de prendre en compte une certaine marge pour les autres services que vous pouvez utiliser à l’avenir. En règle générale, il est judicieux d’utiliser une plage d’adresses importante. Une plage d’adresses /24 fournit beaucoup d’espace au cluster.

Sélection d’une adresse IP de service DNS

Kubernetes utilise un service DNS intégré pour fournir des fonctionnalités de découverte de services au sein du cluster. Le service DNS a besoin d’une adresse IP dans la plage d’adresses des services Kubernetes. Vous ne pouvez pas utiliser la première adresse IP de la plage d’adresses du service Kubernetes, mais toute autre valeur est acceptable.

Vous avez désormais toutes les informations nécessaires pour déployer le cluster.