Déployer SDN (Software Defined Networking) Microsoft

S’applique à : AKS sur Azure Stack HCI 22H2, AKS sur Windows Server

Cet article explique comment déployer des machines virtuelles d’infrastructure et de charge de travail AKS sur un Réseau virtuel SDN à l’aide de notre Load Balancer SDN Software pour tous les scénarios d’équilibrage de charge AKS Arc. AKS activé par Azure Arc offre une plateforme de conteneurs entièrement prise en charge qui peut exécuter des applications natives cloud sur la plateforme d’orchestration de conteneurs Kubernetes. L’architecture prend en charge l’exécution de charges de travail Windows et Linux virtualisées.

Limites

Les fonctionnalités suivantes sont hors de portée et ne sont pas prises en charge dans cette version en disponibilité générale :

  • Attachement de pods et de conteneurs à un réseau virtuel SDN.
    • Les pods utilisent Flannel ou Calico (par défaut) comme fournisseur réseau.
  • Application de la stratégie réseau à l’aide du Groupes sécurité réseau SDN.
    • Les Groupes de sécurité réseau SDN peuvent toujours être configurés en dehors d’AKS Arc à l’aide d’outils SDN (REST/PowerShell/Windows Admin Center/SCVMM), mais les objets Kubernetes NetworkPolicy ne les configurent pas.
  • Attachement de cartes réseau de machines virtuelles AKS Arc à des réseaux logiques SDN.
  • Installation à l'aide de Windows Admin Center.
  • Connectivité de l’hôte physique à la machine virtuelle AKS Arc : les cartes réseau des machines virtuelles sont jointes à un réseau virtuel SDN et ne sont donc pas accessibles à partir de l’hôte par défaut. Pour l’instant, vous pouvez activer cette connectivité manuellement en attachant une adresse IP publique directement à la machine virtuelle à l’aide du Load Balancer SDN Software.

Prérequis

Pour déployer AKS activé par Arc avec SDN, assurez-vous que votre environnement répond aux critères de déploiement d’AKS Arc et de SDN.

Notes

L’intégration de SDN à AKS Arc nécessite uniquement des Load Balancer de contrôleur de réseau et de logiciel. Les machines virtuelles de passerelle sont facultatives.

Installer et préparer SDN pour AKS Arc

La première étape consiste à installer SDN. Pour installer SDN, nous vous recommandons SDN Express ou Windows Admin Center. Vous trouverez un fichier de configuration de référence qui déploie tous les composants d’infrastructure SDN nécessaires ici : Software Load Balancer.psd1.

Une fois le déploiement SDN Express terminé, il doit y avoir un écran qui signale le status comme sain.

Si un problème s’est produit ou est signalé comme non sain, consultez Résolution des problèmes de SDN.

Il est important que SDN soit sain avant de continuer. Si vous déployez SDN dans un nouvel environnement, nous vous recommandons également de créer des machines virtuelles de test et de vérifier la connectivité aux adresses IP virtuelles de l’équilibreur de charge. Découvrez comment créer et attacher des machines virtuelles à un réseau virtuel SDN à l’aide de Windows Admin Center.

Étapes d’installation d’AKS

Initialisez et préparez toutes les machines hôtes physiques pour AKS Arc. Pour obtenir les instructions les plus à jour, consultez Déployer un hôte AKS .

Installer le module PowerShell AKS-HCI

Pour plus d’informations sur l’installation du module PowerShell AKS-HCI, consultez Installer le module PowerShell AksHci .

Notes

Une fois cette étape terminée, actualisez ou rechargez toutes les sessions PowerShell ouvertes pour recharger les modules.

Inscrivez le fournisseur de ressources pour votre abonnement

Pour plus d’informations sur l’inscription du fournisseur de ressources à votre abonnement, consultez Installer le module AksHci PowerShell.

Préparer vos machines en vue du déploiement

Pour plus d’informations sur la préparation de vos machines pour le déploiement, consultez Préparer vos machines pour le déploiement.

Configurer AKS pour l’installation

Choisissez l’un de vos serveurs Azure Stack HCI pour piloter la création d’AKS Arc. Trois étapes doivent être effectuées avant l’installation :

  1. Configurer les paramètres réseau AKS pour SDN ; par exemple, en utilisant :

    1. Réseau virtuel SDN « 10.20.0.0/24 » (10.20.0.0 – 10.20.0.255). Un réseau virtualisé et vous pouvez utiliser n’importe quel sous-réseau IP. Ce sous-réseau n’a pas besoin d’exister sur votre réseau physique.
    2. Nom du commutateur virtuel « Externe ». Commutateur virtuel externe sur les serveurs Azure Stack HCI. Veillez à utiliser le même commutateur virtuel que celui utilisé pour le déploiement SDN.
    3. Passerelle « 10.20.0.1 ». Cette adresse est la passerelle pour votre réseau virtuel.
    4. Serveur DNS « 10.127.130.7 ». Serveur DNS pour votre réseau virtuel.
    $vnet = New-AksHciNetworkSetting –name "myvnet" –vswitchName "External" -k8sNodeIpPoolStart "10.20.0.2" -k8sNodeIpPoolEnd "10.20.0.255"
    -ipAddressPrefix "10.20.0.0/24" -gateway "10.20.0.1" -dnsServers "10.127.130.7"
    
    Paramètre Description
    -name Nom du réseau virtuel dans AKS activé par Arc (doit être en minuscules).
    -vswitchName Nom du vSwitch externe sur les serveurs Azure Stack HCI. Utilisez le même commutateur virtuel que celui utilisé pour le déploiement SDN.
    -k8sNodeIpPoolStart
    -k8sNodeIpPoolEnd
    Plage de début/fin IP du réseau virtuel SDN.
    -ipAddressPrefix Sous-réseau de réseau virtuel en notation CIDR.
    -gateway
    -dnsServers
    Passerelle et serveur DNS du réseau virtuel SDN.

    Pour plus d’informations sur ces paramètres, consultez New-AksHciNetworkSetting.

  2. Dans la même fenêtre PowerShell que vous avez utilisée à l’étape 1, créez un pool d’adresses IP virtuelles pour informer AKS de nos adresses IP qui peuvent être utilisées à partir de notre réseau logique d’équilibrage de charge SDN :

    $VipPool = New-AksHciVipPoolSetting -name "publicvip" -vipPoolStart "10.127.132.16" -vipPoolEnd "10.127.132.23
    
    Paramètre Description
    -name Réseau logique « PublicVIP » que vous avez fourni lors de la configuration des équilibreurs de charge SDN. Dans l’applet de commande, ce nom doit être en minuscules.
    -vipPoolStart Plage de démarrage IP du réseau logique utilisé pour le pool d’adresses IP virtuelles de l’équilibreur de charge public. Vous devez utiliser une plage d’adresses du réseau logique SDN « PublicVIP ».
    -vipPoolEnd Plage de terminaisons IP du réseau logique utilisé pour le pool d’adresses IP virtuelles de l’équilibreur de charge public. Vous devez utiliser une plage d’adresses du réseau logique SDN « PublicVIP ».
  3. Dans la même fenêtre PowerShell que celle utilisée à l’étape 2, créez la configuration AKS pour SDN en fournissant des références aux réseaux SDN ciblés, puis fournissez les paramètres réseau ($vnet, $vipPool) que nous avons définis précédemment :

    Set-AksHciConfig 
    –imageDir "C:\ClusterStorage\Volume1\ImageStore" 
    –workingDir "C:\ClusterStorage\Volume1\WorkDir"
    –cloudConfigLocation "C:\ClusterStorage\Volume1\Config" 
    –vnet $vnet –useNetworkController
    –NetworkControllerFqdnOrIpAddress "nc.contoso.com" 
    –networkControllerLbSubnetRef "/logicalnetworks/PublicVIP/subnets/my_vip_subnet" 
    –networkControllerLnetRef "/logicalnetworks/HNVPA" 
    -vipPool $vipPool
    

    Le réseau logique HNVPA est utilisé comme fournisseur sous-jacent pour le réseau virtuel AKS Arc.

    Si vous utilisez une attribution d’adresse IP statique pour vos nœuds de cluster Azure Stack HCI, vous devez également fournir le CloudServiceCidr paramètre . Ce paramètre est l’adresse IP du service cloud MOC et doit se trouver dans le même sous-réseau que les nœuds de cluster Azure Stack HCI. Pour plus d’informations, consultez Service cloud local Microsoft.

    Paramètre Description
    –imageDir Chemin d’accès à l’emplacement où AKS Arc stocke ses images VHD. Ce chemin doit être un chemin de stockage partagé ou un partage SMB.
    –workingDir Chemin d’accès où sont stockés les petits fichiers du module. Ce chemin doit être un chemin de stockage partagé ou un partage SMB.
    -cloudConfigLocation Chemin d’accès au répertoire où la configuration de l’agent cloud est stockée. Ce chemin doit être un chemin de stockage partagé ou un partage SMB.
    -vnet Nom de la AksHciNetworkSetting variable créée à l’étape précédente
    -useNetworkController Activez l’intégration avec SDN.
    -networkControllerFqdnOrIpAddress Nom de domaine complet de contrôleur de réseau. Vous pouvez obtenir le nom de domaine complet en exécutant Get-NetworkController sur la machine virtuelle du contrôleur de réseau et en utilisant le RestName paramètre .
    -networkControllerLbSubnetRef Référence au sous-réseau de réseau logique d’adresse IP virtuelle publique configuré dans le contrôleur de réseau. Vous pouvez obtenir ce sous-réseau en exécutant l’applet de Get-NetworkControllerLogicalSubnet commande . Lorsque vous utilisez cette applet de commande, utilisez PublicVIP comme LogicalNetworkId. Les VipPoolStart paramètres et vipPoolEnd dans l’applet de New-AksHciVipPoolSetting commande doivent faire partie du sous-réseau référencé ici.
    -networkControllerLnetRef Normalement, cette valeur est « /logicalnetworks/HNVPA ».
    -vipPool Pool d’adresses IP virtuelles utilisées comme adresses IP frontales pour l’équilibrage de charge.

    Pour plus d’informations sur ces paramètres, consultez Set-AksHciConfig.

Se connecter à Azure et configurer les paramètres d’inscription

Suivez les instructions fournies ici pour configurer les paramètres d’inscription.

Notes

Si vous n’avez pas d’autorisations de propriétaire, il est recommandé d’utiliser un principal de service Azure.

Installer AKS

Une fois la configuration AKS terminée, vous êtes prêt à installer AKS sur Azure Stack HCI.

Install-AksHci

Une fois l’installation réussie, une machine virtuelle de plan de contrôle (cluster de gestion) est créée et sa carte réseau virtuelle est attachée à votre réseau SDN.

Collecter des journaux à partir d’un SDN et d’UN environnement AKS sur HCI

Avec SDN et AKS sur HCI, nous obtenons l’isolation des nœuds AKS sur les réseaux virtuels. Étant donné qu’ils sont isolés, nous devons importer un nouveau script de collecte de journaux SDN AKS-HCI et exécuter une commande modifiée qui utilise l’équilibreur de charge pour récupérer les journaux à partir des nœuds :

Install-Module -Name AksHciSdnLogCollector -Repository PSGallery
Get-AksHciLogsSdn

Commentaires/problèmes

Consultez les ressources d’auto-assistance ici pour le SDN et ici pour AKS-HCI.

Étapes suivantes

Ensuite, vous pouvez créer des clusters de charge de travail et déployer vos applications. Toutes les cartes réseau de machines virtuelles AKS dans AKS activées par Arc sont connectées en toute transparence au réseau virtuel SDN fourni lors de l’installation. L’équilibreur de charge SDN Software est également utilisé comme équilibreur de charge externe pour tous les services Kubernetes et agit comme équilibreur de charge pour le serveur d’API sur le ou les plans de contrôle Kubernetes.