Partage via


Connectivité privée pour les clusters Kubernetes avec Arc à l’aide d’une liaison privée (préversion)

Azure Private Link vous permet de lier de manière sécurisée des services Azure à votre réseau virtuel à l’aide de points de terminaison privés. Vous pouvez ainsi connecter vos clusters Kubernetes locaux à Azure Arc, et envoyer tout le trafic via Azure ExpressRoute ou une connexion VPN site à site au lieu d’utiliser des réseaux publics. Dans Azure Arc, vous pouvez utiliser un modèle d’étendue de liaison privée pour permettre à plusieurs clusters Kubernetes de communiquer avec leurs ressources Azure Arc en utilisant un point de terminaison privé unique.

Ce document explique quand utiliser Azure Arc Private Link et comment le configurer.

Important

La fonctionnalité Azure Arc Private Link est actuellement en préversion dans toutes les régions où Kubernetes avec Azure Arc est présent, à l’exception d’Asie Sud-Est. Pour connaître les conditions juridiques qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou plus généralement non encore en disponibilité générale, consultez l’Avenant aux conditions d’utilisation des préversions de Microsoft Azure.

Avantages

Grâce à Azure Private Link, vous pouvez :

  • vous connecter en privé à Azure Arc sans ouvrir d'accès au réseau public ;
  • Vérifier que les données du cluster Kubernetes avec Arc ne sont accessibles que via des réseaux privés autorisés.
  • Empêcher l’exfiltration de données de vos réseaux privés en définissant des clusters Kubernetes avec Azure Arc spécifiques et d’autres ressources de services Azure, comme Azure Monitor, qui se connectent via votre point de terminaison privé.
  • connecter en toute sécurité votre réseau privé local à Azure Arc à l'aide d'ExpressRoute et de Private Link ;
  • Conservez tout le trafic au sein du réseau principal Microsoft Azure.

Pour plus d’informations, consultez Principaux avantages d’Azure Private Link.

Fonctionnement

Une étendue de liaison privée Azure Arc connecte des points de terminaison privés (et les réseaux virtuels dans lesquels ils se trouvent) à une ressource Azure, en l’occurrence aux clusters Kubernetes avec Azure Arc. Lorsque vous activez l’une des extensions prises en charge par le cluster Kubernetes avec Arc, telles qu’Azure Monitor, la connexion à d’autres ressources Azure peut être nécessaire pour ces scénarios. Par exemple, dans le cas d’Azure Monitor, les journaux collectés à partir du cluster sont envoyés à l’espace de travail Log Analytics.

La connectivité aux autres ressources Azure à partir d’un cluster Kubernetes avec Arc listé plus haut nécessite la configuration de Private Link pour chaque service. Pour obtenir un exemple, consultez Private Link pour Azure Monitor.

Limites actuelles

Tenez compte de ces limitations actuelles lors de la planification de votre configuration Private Link.

  • Vous ne pouvez associer qu'une seule Étendue de liaison privée Azure Arc à un réseau virtuel.

  • Un cluster Kubernetes avec Azure Arc ne peut se connecter qu’à une seule étendue de liaison privée Azure Arc.

  • Tous les clusters Kubernetes locaux doivent utiliser le même point de terminaison privé en résolvant les informations de point de terminaison privé correctes (nom d’enregistrement FQDN et adresse IP privée) à l’aide du même redirecteur DNS. Pour plus d’informations, consultez Configuration DNS des points de terminaison privés Azure. Le cluster Kubernetes avec Azure Arc, l’étendue de liaison privée Azure Arc et le réseau virtuel doivent se trouver dans la même région Azure. Le point de terminaison privé et le réseau virtuel doivent également se trouver dans la même région Azure, mais cette région peut être différente de celle de votre étendue de liaison privée Azure Arc et du cluster Kubernetes avec Arc.

  • Dans le cadre de la préversion, le trafic vers les étiquettes de service Microsoft Entra ID, Azure Resource Manager et Microsoft Container Registry doit être autorisé via votre pare-feu de réseau local.

  • D'autres services Azure, comme Azure Monitor, ont besoin de leurs propres points de terminaison privés sur votre réseau virtuel.

    Remarque

    La fonctionnalité de connexion au cluster (et donc l’emplacement personnalisé) n’est pas prise en charge sur les clusters Kubernetes avec Azure Arc avec connectivité privée activée. Cette prise en charge est prévue et sera ajoutée ultérieurement. La connectivité réseau utilisant des liaisons privées pour les services Azure Arc comme les services de données avec Azure Arc et les services d’application avec Azure Arc qui utilisent ces fonctionnalités n’est pas encore prise en charge. Reportez-vous à la section ci-dessous pour obtenir la liste des extensions de cluster ou services Azure Arc qui prennent en charge la connectivité réseau via des liaisons privées.

Sur les clusters Kubernetes avec Azure Arc configurés avec des liaisons privées, les extensions suivantes prennent en charge la connectivité de bout en bout via des liaisons privées. Reportez-vous aux conseils liés à chaque extension de cluster pour connaître les étapes de configuration supplémentaires et des détails sur la prise en charge des liaisons privées.

Pour connecter votre cluster Kubernetes à Azure Arc via une liaison privée, vous devez configurer votre réseau comme suit :

  1. Établissez une connexion entre votre réseau local et un réseau virtuel Azure à l’aide d’un VPN site à site ou d’un circuit ExpressRoute.
  2. Déployez une étendue de liaison privée Azure Arc contrôlant les clusters Kubernetes qui peuvent communiquer avec Azure Arc sur des points de terminaison privés, et associez-la à votre réseau virtuel Azure avec un point de terminaison privé.
  3. Mettez à jour la configuration DNS sur votre réseau local afin de résoudre les adresses des points de terminaison privés.
  4. Configurez votre pare-feu local de façon à autoriser l’accès à Microsoft Entra ID, Azure Resource Manager et Microsoft Container Registry.
  5. Associez les clusters Kubernetes avec Azure Arc à l’étendue de liaison privée Azure Arc.
  6. Si vous le souhaitez, déployez des points de terminaison privés pour d’autres services Azure par lesquels votre cluster Kubernetes avec Azure Arc est géré, par exemple Azure Monitor. Le reste de ce document part du principe que vous avez déjà configuré votre circuit ExpressRoute ou votre connexion VPN site à site.

Configuration réseau

Les clusters Kubernetes avec Azure Arc s’intègrent à plusieurs services Azure afin d’intégrer la gestion et la gouvernance cloud à vos clusters Kubernetes hybrides. La plupart de ces services offrent déjà des points de terminaison privés, mais vous devez configurer votre pare-feu et vos règles d’acheminement de manière à autoriser l’accès à Microsoft Entra ID et Azure Resource Manager sur Internet jusqu’à ce que ces services offrent des points de terminaison privés. Vous devez également autoriser l’accès à Microsoft Container Registry (et AzureFrontDoor.FirstParty en tant que précurseur de Microsoft Container Registry) pour extraire des images et des graphiques Helm afin d’activer des services comme Azure Monitor, ainsi que pour la configuration initiale des agents Azure Arc sur les clusters Kubernetes.

Pour ce faire, deux méthodes sont disponibles :

  • Si votre réseau est configuré pour router l’ensemble du trafic Internet via le VPN Azure ou le circuit ExpressRoute, vous pouvez configurer le groupe de sécurité réseau (NSG) associé à votre sous-réseau dans Azure de manière à autoriser l’accès TCP 443 (HTTPS) sortant à Microsoft Entra ID, Azure Resource Manager, Azure Front Door et Microsoft Container Registry à l’aide d’étiquettes de service. Les règles NSG doivent se présenter comme suit :

    Setting Règle Microsoft Entra ID Règle Azure Resource Manager Règle AzureFrontDoorFirstParty Règle Microsoft Container Registry
    Source Réseau virtuel Réseau virtuel Réseau virtuel Réseau virtuel
    Plages de ports sources * * * *
    Destination Étiquette du service Étiquette du service Étiquette du service Étiquette du service
    Identification de destination AzureActiveDirectory AzureResourceManager AzureFrontDoor.FirstParty MicrosoftContainerRegistry
    Plages de ports de destination 443 443 443 443
    Protocole TCP TCP TCP TCP
    Action Allow Autoriser Autoriser (à la fois entrant et sortant) Autoriser
    Priorité 150 (doit être inférieure à toutes les règles qui bloquent l'accès à Internet) 151 (doit être inférieure à toutes les règles qui bloquent l'accès à Internet) 152 (doit être inférieure à toutes les règles qui bloquent l’accès à Internet) 153 (doit être inférieure à toutes les règles qui bloquent l’accès à Internet)
    Nom AllowAADOutboundAccess AllowAzOutboundAccess AllowAzureFrontDoorFirstPartyAccess AllowMCROutboundAccess
  • Configurez le pare-feu sur votre réseau local pour autoriser l’accès TCP 443 sortant (HTTPS) à Microsoft Entra ID, Azure Resource Manager et Microsoft Container Registry, et l’accès entrant et sortant à AzureFrontDoor.FirstParty à l’aide des fichiers d’étiquette de service téléchargeables. Le fichier JSON contient toutes les plages d’adresses IP publiques utilisées par Microsoft Entra ID, Azure Resource Manager, AzureFrontDoor.FirstParty et Microsoft Container Registry, et il est mis à jour tous les mois pour tenir compte des éventuels changements. L’étiquette de service de Microsoft Entra est AzureActiveDirectory, l’étiquette de service d’Azure Resource Manager est AzureResourceManager, l’étiquette de service de Microsoft Container Registry est MicrosoftContainerRegistry, et l’étiquette de service d’Azure Front Door est AzureFrontDoor.FirstParty. Contactez votre administrateur réseau et votre fournisseur de pare-feu réseau pour savoir comment configurer vos règles de pare-feu.

  1. Connectez-vous au portail Azure.

  2. Dans le portail Azure, accédez à Créer une ressource et recherchez Étendue de liaison privée Azure Arc. Vous pouvez également accéder directement à la page Étendue de liaison privée Azure Arc dans le portail.

  3. Sélectionnez Créer.

  4. Sélectionner un abonnement et un groupe de ressources. Dans le cadre de la préversion, votre réseau virtuel et vos clusters Kubernetes avec Azure Arc doivent être associés au même abonnement que l’étendue de liaison privée Azure Arc.

  5. Donnez un nom à l'Étendue de liaison privée Azure Arc.

  6. Si vous le souhaitez, vous pouvez exiger que chaque cluster Kubernetes avec Azure Arc associé à cette étendue de liaison privée Azure Arc envoie des données au service par le biais du point de terminaison privé. Si vous sélectionnez Activer l’accès au réseau public, les clusters Kubernetes associés à cette étendue de liaison privée Azure Arc peuvent communiquer avec le service sur des réseaux privés ou publics. Vous pouvez modifier ce paramètre selon vos besoins une fois l’étendue créée.

  7. Sélectionnez Vérifier + créer.

    Screenshot of the Azure Arc Private Link Scope creation screen in the Azure portal.

  8. Quand la validation est terminée, sélectionnez Créer.

Créer un Private Endpoint

Une fois votre étendue de liaison privée Azure Arc créée, vous devez la connecter à un ou plusieurs réseaux virtuels avec un point de terminaison privé. Le point de terminaison privé expose l'accès aux services Azure Arc sur une adresse IP privée dans l'espace d'adressage de votre réseau virtuel.

Le point de terminaison privé de votre réseau virtuel lui permet d’atteindre les points de terminaison des clusters Kubernetes avec Azure Arc par le biais d’adresses IP privées à partir du pool de votre réseau, au lieu d’utiliser les adresses IP publiques de ces points de terminaison. Cela vous permet de continuer à utiliser vos clusters Kubernetes avec Azure Arc sans ouvrir votre réseau virtuel à un trafic sortant non requis. Le trafic entre le point de terminaison privé et vos ressources passe par Microsoft Azure et n’est pas routé vers des réseaux publics.

  1. Dans votre ressource d’étendue, sélectionnez Connexions de point de terminaison privé dans le menu gauche de la ressource. Sélectionnez Ajouter pour lancer le processus de création du point de terminaison. Vous pouvez également approuver des connexions qui ont été démarrées dans le centre Azure Private Link en les sélectionnant, puis en choisissant Approuver.

    Screenshot of the Private Endpoint connections screen in the Azure portal.

  2. Choisissez l’abonnement, le groupe de ressources et le nom du point de terminaison, ainsi que la région que vous souhaitez utiliser. Il doit s’agir de la même région que celle de votre réseau virtuel.

  3. Sélectionnez Suivant : Ressource.

  4. Dans la page Ressources, effectuez les actions suivantes :

    1. Sélectionnez l’abonnement qui contient votre ressource Étendue de liaison privée Azure Arc.
    2. Dans le champ Type de ressource, choisissez Microsoft.HybridCompute/privateLinkScopes.
    3. Dans la liste déroulante Ressource, choisissez l’étendue de liaison privée Azure Arc que vous avez créée.
    4. Sélectionnez Suivant : Configuration.
  5. Dans la page Configuration, effectuez les actions suivantes :

    1. Choisissez le réseau virtuel et le sous-réseau à partir duquel vous souhaitez vous connecter aux clusters Kubernetes avec Azure Arc.

    2. Pour Intégrer à une zone DNS privée, sélectionnez Oui. Une nouvelle zone DNS privée sera créée. Les zones DNS réelles peuvent différer de ce que montre la capture d’écran ci-dessous.

      Screenshot of the Configuration step to create a private endpoint in the Azure portal.

      Remarque

      Si vous choisissez Non et préférez gérer les enregistrements DNS manuellement, commencez par configurer votre liaison privée, avec ce point de terminaison privé et la configuration de l’étendue privée. Ensuite, configurez votre système DNS conformément aux instructions de la rubrique Configuration DNS des points de terminaison privés Azure. Veillez à ne pas créer d’enregistrements vides en préparation de votre configuration de liaison privée. Les enregistrements DNS que vous créez peuvent remplacer les paramètres existants et avoir un impact sur votre connectivité avec les clusters Kubernetes avec Arc.

    3. Sélectionnez Revoir + créer.

    4. Laissez le processus de validation se terminer.

    5. Sélectionnez Créer.

Configurer la redirection DNS locale

Vos clusters Kubernetes locaux doivent être en mesure de résoudre les enregistrements DNS des liaisons privées en adresses IP de points de terminaison privés. La configuration de ces éléments varie selon que vous utilisez des zones DNS privées Azure pour gérer les enregistrements DNS ou votre propre serveur DNS local. Elle dépend également du nombre de clusters que vous configurez.

Configuration DNS à l'aide de zones DNS privées intégrées à Azure

Si vous configurez des zones DNS privées pour des clusters Kubernetes avec Azure Arc lors de la création du point de terminaison privé, vos clusters Kubernetes locaux doivent être en mesure de transférer les requêtes DNS aux serveurs Azure DNS intégrés afin de résoudre correctement les adresses des points de terminaison privés. Vous avez besoin dans Azure d'un redirecteur DNS (soit une machine virtuelle spécialement conçue, soit une instance de Pare-feu Azure avec proxy DNS activé), après quoi vous pouvez configurer votre serveur DNS local pour qu'il transmette les requêtes à Azure afin de résoudre les adresses IP des points de terminaison privés.

La documentation relative aux points de terminaison privés fournit des conseils sur la configuration des charges de travail locales à l'aide d'un redirecteur DNS.

Configuration manuelle du serveur DNS

Si vous avez choisi de ne pas utiliser les zones DNS privées Azure lors de la création du point de terminaison privé, vous devrez créer les enregistrements DNS requis sur votre serveur DNS local.

  1. Accédez au portail Azure.

  2. Accédez à la ressource de point de terminaison privé associée à votre réseau virtuel et à votre étendue de liaison privée Azure Arc.

  3. Dans le volet de gauche, sélectionnez Configuration DNS pour afficher la liste des enregistrements DNS et des adresses IP correspondantes à configurer sur votre serveur DNS. Les noms de domaine complets (FQDN) et les adresses IP changeront en fonction de la région que vous avez sélectionnée pour votre point de terminaison privé et des adresses IP disponibles dans votre sous-réseau.

    Screenshot showing manual DNS server configuration in the Azure portal.

  4. Suivez les instructions de votre fournisseur de serveur DNS pour ajouter les zones DNS et les enregistrements A correspondant au tableau du portail. Veillez à sélectionner un serveur DNS dont l'étendue est adaptée à votre réseau. Chaque cluster Kubernetes qui utilise ce serveur DNS résout désormais les adresses IP des points de terminaison privés, et doit être associé à l’étendue de liaison privée Azure Arc, faute de quoi la connexion sera refusée.

Remarque

La configuration des liaisons privées pour les clusters Kubernetes avec Azure Arc est prise en charge à partir de la version 1.3.0 de l’extension CLI connectedk8s, mais nécessite une version d’Azure CLI supérieure à la 2.3.0. Si vous utilisez une version supérieure à la 1.3.0 pour l’extension CLI connectedk8s, nous avons introduit des validations pour vérifier et connecter correctement le cluster à Azure Arc uniquement si vous exécutez une version d’Azure CLI supérieure à la 2.3.0.

Vous pouvez configurer des liaisons privées pour un cluster Kubernetes avec Azure Arc existant ou lors de l’intégration initiale d’un cluster Kubernetes à Azure Arc à l’aide de la commande ci-dessous :

az connectedk8s connect -g <resource-group-name> -n <connected-cluster-name> -l <location> --enable-private-link true --private-link-scope-resource-id <pls-arm-id>
Nom du paramètre Description
--enable-private-link Propriété permettant d’activer/désactiver la fonctionnalité de liaisons privées. Affectez-lui la valeur « True » pour activer la connectivité avec des liaisons privées.
--private-link-scope-resource-id ID de la ressource d’étendue de liaison privée créée précédemment. Par exemple : /subscriptions//resourceGroups//providers/Microsoft.HybridCompute/privateLinkScopes/

Pour les clusters Kubernetes avec Azure Arc qui ont été configurés avant l’étendue de liaison privée Azure Arc, vous pouvez configurer des liaisons privées par le biais du portail Azure à l’aide des étapes suivantes :

  1. Sur le portail Azure, accédez à votre ressource Étendue de liaison privée Azure Arc.

  2. Dans le volet gauche, sélectionnez Ressources Azure Arc, puis + Ajouter.

  3. Sélectionnez dans la liste les clusters Kubernetes que vous souhaitez associer à l’étendue de liaison privée, puis choisissez Sélectionner pour enregistrer vos modifications.

    Remarque

    La liste affiche uniquement les clusters Kubernetes avec Azure Arc qui se trouvent dans le même abonnement et la même région que votre étendue de liaison privée.

    Screenshot of the list of Kubernetes clusters for the Azure Arc Private Link Scope.

Dépannage

Si vous rencontrez des problèmes, les suggestions suivantes peuvent vous aider :

  • Vérifiez vos serveurs DNS locaux pour vous assurer qu'ils sont transférés vers Azure DNS ou qu'ils sont configurés avec les enregistrements A appropriés dans votre zone de liaison privée. Ces commandes de recherche doivent renvoyer des adresses IP privées dans votre réseau virtuel Azure. Si adresses IP publiques sont résolues, vérifiez la configuration DNS de votre machine ou serveur et de votre réseau.

    nslookup gbl.his.arc.azure.com
    nslookup agentserviceapi.guestconfiguration.azure.com
    nslookup dp.kubernetesconfiguration.azure.com
    
  • En cas de problème lors de l’intégration de votre cluster Kubernetes, vérifiez que vous avez ajouté les étiquettes de service Microsoft Entra ID, Azure Resource Manager, AzureFrontDoor.FirstParty et Microsoft Container Registry au pare-feu de votre réseau local.

Étapes suivantes