Déployer une infrastructure SDN avec SDN Express
S’applique à : Azure Stack HCI, versions 22H2 et 21H2, Windows Server 2022, Windows Server 2019, Windows Server 2016
Important
Azure Stack HCI fait désormais partie d’Azure Local. Le changement de nom de la documentation produit est en cours. Toutefois, les versions antérieures d’Azure Stack HCI, par exemple 22H2, continueront de référencer Azure Stack HCI et ne reflèteront pas la modification du nom. Plus d’informations
Cet article explique comment déployer une infrastructure SDN (Software Defined Network) de bout en bout à l’aide de scripts PowerShell SDN Express. L’infrastructure comprend un contrôleur de réseau (NC) haute disponibilité (HA) et, en option, un équilibreur de charge logiciel (SLB) haute disponibilité et une passerelle haute disponibilité (GW). Les scripts prennent en charge un déploiement par phases, dans lequel vous pouvez déployer uniquement le composant Contrôleur de réseau pour obtenir un ensemble de fonctionnalités de base avec des exigences réseau minimales.
Vous pouvez aussi déployer une infrastructure SDN à partir de Windows Admin Center ou de System Center Virtual Machine Manager (VMM). Pour plus d’informations, consultez Créer un cluster - Étape 5 : SDN et Gérer les ressources SDN dans l’infrastructure VMM.
Important
Vous ne pouvez pas utiliser Microsoft System Center Virtual Machine Manager 2019 pour gérer les clusters exécutant Azure Stack HCI version 21H2 ou Windows Server 2022.
Avant de commencer
Avant de commencer un déploiement SDN, planifiez et configurez votre infrastructure réseau physique et hôte. Voir les articles suivants :
- Configuration réseau physique requise
- Configuration réseau requise pour l’hôte
- Créer un cluster à l’aide de Windows Admin Center
- Créer un cluster à l’aide de Windows PowerShell
- Planifier une infrastructure de réseau défini par logiciel
Vous n’avez pas besoin de déployer tous les composants SDN. Consultez la section Déploiement échelonné dans Planifier une infrastructure de réseau défini par logiciel pour déterminer les composants d’infrastructure dont vous avez besoin, puis exécutez les scripts appropriés.
Assurez-vous que le système d’exploitation Azure Stack HCI est installé sur tous les serveurs hôtes. Pour cela, consultez Déployer le système d’exploitation Azure Stack HCI.
Spécifications
Pour un déploiement SDN, les conditions suivantes doivent être remplies :
- Tous les serveurs hôtes doivent avoir Hyper-V activé.
- Tous les serveurs hôtes doivent être joints à Active Directory.
- Un commutateur virtuel doit être créé.
- Le réseau physique doit être configuré pour les sous-réseaux et les réseaux locaux virtuels définis dans le fichier de configuration.
- Le script SDN Express doit être exécuté à partir d’un ordinateur Windows Server 2016 ou version ultérieure.
- Le fichier VHDX spécifié dans le fichier de configuration doit être accessible à partir de l’ordinateur sur lequel le script SDN Express est exécuté.
Télécharger le fichier VHDX
SDN utilise un fichier VHDX, contenant le système d’exploitation Azure Stack HCI ou Windows Server, comme source pour la création des machines virtuelles SDN.
Remarque
La version du système d’exploitation dans votre VHDX doit correspondre à la version utilisée par les machines Hyper-V locales Azure. Ce fichier VHDX est utilisé par tous les composants de l’infrastructure SDN.
Pour télécharger une version en anglais du fichier VHDX, consultez Télécharger le système d’exploitation à partir du Portail Azure. Veillez à sélectionner VHDX anglais dans la liste déroulante Choisir la langue .
Actuellement, un fichier VHDX non anglais n’est pas disponible en téléchargement. Si vous avez besoin d’une version autre que l’anglais, téléchargez le fichier ISO correspondant et convertissez-le en VHDX à l’aide de l’applet Convert-WindowsImage
de commande. Vous devez exécuter ce script à partir d’un ordinateur client Windows. Vous devrez probablement exécuter ce script en tant qu’administrateur et modifier la stratégie d’exécution pour les scripts à l’aide de la Set-ExecutionPolicy
commande.
La syntaxe suivante montre un exemple d’utilisation Convert-WindowsImage
:
Install-Module -Name Convert-WindowsImage
Import-Module Convert-WindowsImage
$wimpath = "E:\sources\install.wim"
$vhdpath = "D:\temp\AzureStackHCI.vhdx"
$edition=1
Convert-WindowsImage -SourcePath $wimpath -Edition $edition -VHDPath $vhdpath -SizeBytes 500GB -DiskLayout UEFI
Remarque
Les fichiers de script SDN Express ne sont plus disponibles sur GitHub.
Installer le module PowerShell SDN Express
Exécutez la commande suivante pour installer la dernière version du module PowerShell SDN Express sur l’ordinateur sur lequel vous souhaitez exécuter l’installation du SDN :
Install-Module -Name SDNExpress
Les fichiers s’installent automatiquement dans le répertoire de module PowerShell par défaut : C:\Program Files\WindowsPowerShell\Modules\SdnExpress\
.
Modifier le fichier de configuration
Le fichier de données de configuration PowerShell MultiNodeSampleConfig.psd1
(situé dans le chemin d’installation mentionné ci-dessus) contient tous les paramètres et paramètres nécessaires pour le script SDN Express en entrée pour les différents paramètres et paramètres de configuration. Ce fichier fournit des informations spécifiques sur les valeurs à renseigner selon que vous déployez uniquement le composant contrôleur de réseau, ou également les composants équilibreur de charge logiciel et passerelle. Pour plus d’informations, consultez Planifier une infrastructure réseau définie par logiciel.
Accédez au dossier C:\Program Files\WindowsPowerShell\Modules\SdnExpress\
et ouvrez le fichier MultiNodeSampleConfig.psd1 dans un éditeur de texte. Modifiez les valeurs de paramètres spécifiques pour qu’elles correspondent à votre infrastructure et à votre déploiement, comme décrit dans la section suivante.
Réglages et paramètres généraux
Ces paramètres et paramètres sont utilisés par SDN en général pour tous les déploiements. Pour obtenir des recommandations spécifiques, consultez Configuration requise pour le rôle de machine virtuelle d’infrastructure de réseau défini par logiciel.
- VHDPath : chemin d’accès de fichier VHD qu’utilisent toutes les machines virtuelles de l’infrastructure SDN (contrôleur de réseau, équilibreur de charge logiciel, passerelle).
- VHDFile - Nom de fichier VHDX utilisé par toutes les machines virtuelles de l’infrastructure SDN
- VMLocation : chemin d’accès aux machines virtuelles de l’infrastructure SDN. Notez que les chemins d’accès UNC (Universal Naming Convention) ne sont pas pris en charge. Pour les chemins d’accès basés sur le stockage de cluster, utilisez un format tel que
C:\ClusterStorage\...
- JoinDomain : domaine auquel sont jointes les machines virtuelles de l’infrastructure SDN.
- SDNMacPoolStart : adresse de début du pool d’adresses MAC pour les machines virtuelles de charge de travail cliente.
- SDNMacPoolEnd - adresse de fin du pool MAC pour les machines virtuelles de charge de travail clientes
- ManagementSubnet : sous-réseau de réseau de gestion que le contrôleur de réseau utilise pour gérer les hôtes Hyper-V, ainsi que les composants équilibreur de charge logiciel et passerelle.
- ManagementGateway : adresse de passerelle pour le réseau de gestion.
- ManagementDNS : serveur DNS pour le réseau de gestion.
- ManagementVLANID : ID de VLAN pour le réseau de gestion.
- DomainJoinUsername - nom d’utilisateur administrateur. Notez que le nom d’utilisateur doit être au format suivant :
domainname\username
. Par exemple, si le domaine estcontoso.com
, entrez le nom d’utilisateur en tant quecontoso\<username>
. N’utilisez pas de formats tels quecontoso.com\<username>
ouusername@contoso.com
- LocalAdminDomainUser - nom d’utilisateur de l’administrateur local. Notez que le nom d’utilisateur doit être au format suivant :
domainname\username
. Par exemple, si le domaine estcontoso.com
, entrez le nom d’utilisateur en tant quecontoso\<username>
. N’utilisez pas de formats tels quecontoso.com\<username>
ouusername@contoso.com
- RestName : nom DNS que les clients de gestion (par exemple Windows Admin Center) utilisent pour communiquer avec le contrôleur de réseau.
- RestIpAddress : adresse IP statique pour votre API REST, qui est allouée à partir de votre réseau de gestion. Il peut être utilisé pour la résolution DNS ou les déploiements BASÉS sur l’adresse IP REST
- HyperVHosts : serveurs hôtes que doit gérer le contrôleur de réseau.
- NCUsername - Nom d’utilisateur du compte de contrôleur de réseau
- ProductKey : clé de produit pour les machines virtuelles de l’infrastructure SDN.
- SwitchName : nom requis uniquement si plusieurs commutateurs virtuels existent sur les hôtes Hyper-V.
- VMMemory : mémoire (en Go) attribuée aux machines virtuelles de l’infrastructure. Par défaut, 4 Go.
- VMProcessorCount : nombre de processeurs attribués aux machines virtuelles de l’infrastructure. Par défaut, 8.
- Locale : paramètres régionaux. S’ils ne sont pas spécifiés, ceux de l’ordinateur de déploiement sont utilisés.
- TimeZone : fuseau horaire. S’il n’est pas spécifié, le fuseau horaire local de l’ordinateur de déploiement est utilisé.
Vous pouvez éventuellement inclure des mots de passe si ceux-ci sont stockés chiffrés en tant que chaînes sécurisées encodées en texte. Les mots de passe sont utilisés uniquement si les scripts SDN Express sont exécutés sur le même ordinateur que celui sur lequel les mots de passe ont été chiffrés ; sinon, il vous invite à entrer ces mots de passe :
- DomainJoinSecurePassword : pour un compte de domaine.
- LocalAdminSecurePassword : pour un compte d’administrateur local.
- NCSecurePassword : pour un compte de contrôleur de réseau.
Section machine virtuelle contrôleur de réseau
Au moins trois machines virtuelles de contrôleur de réseau sont recommandées pour SDN.
La section NCs = @()
est utilisée pour les machines virtuelles contrôleurs de réseau. Vérifiez que l’adresse MAC de chaque machine virtuelle NC est en dehors de la SDNMACPool
plage répertoriée dans les paramètres généraux.
- ComputerName : nom de machine virtuelle contrôleur de réseau.
- Hostname : nom d’hôte du serveur sur lequel se trouve la machine virtuelle contrôleur de réseau.
- ManagementIP : adresse IP du réseau de gestion pour la machine virtuelle contrôleur de réseau.
- MacAddress : adresse MAC pour la machine virtuelle contrôleur de réseau.
Section machine virtuelle équilibreur de charge logiciel
Au moins deux machines virtuelles équilibreur de charge logiciel sont recommandées pour SDN.
La section Muxes = @()
est utilisée pour les machines virtuelles équilibreurs de charge logiciel. Assurez-vous que les paramètres et MACAddress
les PAMACAddress
paramètres de chaque machine virtuelle SLB sont en dehors de la SDNMACPool
plage répertoriée dans les paramètres généraux. Veillez à obtenir le paramètre PAIPAddress
en dehors du pool PA spécifié dans le fichier de configuration, mais qui fait partie du PASubnet indiqué dans le fichier de configuration.
Laissez cette section vide (Muxes = @()
) si vous ne déployez pas le composant équilibreur de charge logiciel :
- ComputerName : nom de la machine virtuelle équilibreur de charge logiciel.
- Hostname : nom d’hôte du serveur sur lequel se trouve la machine virtuelle équilibreur de charge logiciel.
- ManagementIP : adresse IP du réseau de gestion pour la machine virtuelle équilibreur de charge logiciel.
- MacAddress : adresse MAC pour la machine virtuelle équilibreur de charge logiciel.
- PAIPAddress : adresse IP réseau du fournisseur (PA) pour la machine virtuelle équilibreur de charge logiciel.
- PAMACAddress : adresse IP réseau du fournisseur (PA) pour la machine virtuelle équilibreur de charge logiciel.
Section machine virtuelle passerelle
Un minimum de deux machines virtuelles de passerelle (un actif et un redondant) sont recommandées pour le SDN.
La section Gateways = @()
est utilisée pour les machines virtuelles passerelles. Vérifiez que le paramètre MACAddress
de chaque machine virtuelle passerelle est en dehors de la plage SDNMACPool
listée dans les paramètres généraux. FrontEndMac
et BackendMac
doivent être compris dans la plage SDNMACPool
. Veillez à obtenir les paramètres FrontEndMac
et BackendMac
à la fin de la plage SDNMACPool
.
Laissez cette section vide (Gateways = @()
) si vous ne déployez pas le composant passerelle :
- ComputerName : nom de la machine virtuelle passerelle.
- Hostname : nom d’hôte du serveur sur lequel se trouve la machine virtuelle passerelle.
- ManagementIP : adresse IP du réseau de gestion pour la machine virtuelle passerelle.
- MacAddress : adresse MAC pour la machine virtuelle passerelle.
- FrontEndMac : adresse MAC frontale du réseau de fournisseur pour la machine virtuelle passerelle.
- BackEndMac : adresse MAC dorsale du réseau de fournisseur pour la machine virtuelle passerelle.
Paramètres supplémentaires pour l’équilibreur de charge logiciel et la passerelle
Les paramètres supplémentaires suivants sont utilisés par les machines virtuelles équilibreur de charge logiciel et passerelle. Laissez ces valeurs vides si vous ne déployez pas de machines virtuelles SLB ou Passerelle :
- SDNASN : numéro de système autonome (ASN) que SDN utilise pour appairer avec des commutateurs réseau.
- RouterASN : numéro de système autonome du routeur de passerelle.
- RouterIPAddress : adresse IP du routeur de passerelle.
- PrivateVIPSubnet - adresse IP virtuelle (VIP) du sous-réseau privé
- PublicVIPSubnet : adresse IP virtuelle pour le sous-réseau public.
Les paramètres supplémentaires suivants sont utilisés uniquement par les machines virtuelles de passerelle. Laissez ces valeurs vides si vous ne déployez pas de machines virtuelles passerelles :
Poolname : nom du pool qu’utilisent toutes les machines virtuelles passerelles.
GRESubnet : sous-réseau d’adresse IP virtuelle pour GRE (en cas d’utilisation de connexions GRE).
Capacity : capacité en Kbits/s pour chaque machine virtuelle passerelle dans le pool.
RedondantCount : nombre de passerelles en mode redondant. La valeur par défaut est 1. Les passerelles redondantes n’ont pas de connexions actives. Une fois qu’une passerelle active tombe en panne, les connexions de cette passerelle passent à la passerelle redondante et la passerelle redondante devient active.
Remarque
Si vous renseignez une valeur pour RedundantCount, vérifiez que le nombre total de machines virtuelles de passerelle est au moins un plus que le nombre redondant. Par défaut, le nombre redondant est 1. Vous devez donc disposer d’au moins 2 machines virtuelles de passerelle pour vous assurer qu’il existe au moins 1 passerelle active pour héberger des connexions de passerelle.
Paramètres pour les réseaux de superposition de locataire.
Les paramètres suivants sont utilisés si vous déployez et gérez des réseaux virtualisés de superposition pour les locataires. Si vous utilisez un contrôleur de réseau pour gérer des réseaux VLAN traditionnels, vous pouvez laisser ces valeurs vides.
- PASubnet - sous-réseau du réseau d’adresse de fournisseur
- PAVLANID : ID de VLAN pour le réseau PA.
- PAGateway : adresse IP pour la passerelle réseau PA.
- PAPoolStart : adresse IP de début pour le pool réseau PA.
- PAPoolEnd : adresse IP de fin pour le pool réseau PA.
Voici comment le réseau logique du fournisseur HNV (Hyper-V Network Virtualization) alloue des adresses IP. Utilisez cette option pour planifier votre espace d’adressage pour le réseau du fournisseur HNV.
- Alloue deux adresses IP à chaque serveur physique
- Alloue une adresse IP à chaque machine virtuelle MUX SLB
- Alloue une adresse IP à chaque machine virtuelle de passerelle
Exécuter le script de déploiement
Le script SDN Express déploie votre infrastructure SDN spécifiée. Une fois l’exécution du script terminée, votre infrastructure SDN est prête à être utilisée pour des déploiements de charge de travail de machine virtuelle.
Pour obtenir des informations de dernière minute sur la façon d’exécuter le script de déploiement, consultez le fichier
README.md
.Exécutez la commande suivante à partir d’un compte d’utilisateur avec des informations d’identification d’administration pour les serveurs hôtes du cluster :
SDNExpress\scripts\SDNExpress.ps1 -ConfigurationDataFile MultiNodeSampleConfig.psd1 -Verbose
Une fois les machines virtuelles contrôleurs de réseau créées, configurez les mises à jour DNS dynamiques pour le nom du cluster du contrôleur de réseau sur le serveur DNS. Pour plus d’informations, consultez Mises à jour dynamiques de DNS.
Exemples de fichiers de configuration
Les exemples de fichiers de configuration suivants pour le déploiement de SDN sont disponibles dans le dépôt GitHub Microsoft SDN :
Traditional VLAN networks.psd1 - Déployez un contrôleur de réseau pour gérer des stratégies réseau, comme la microsegmentation et la qualité de service, sur des réseaux VLAN traditionnels.
Virtualized networks.psd1 - Déployez un contrôleur de réseau pour gérer des réseaux virtuels et des stratégies réseau sur des réseaux virtuels.
Software Load Balancer.psd1 - Déployez un contrôleur de réseau et un équilibreur de charge logiciel pour équilibrer la charge sur des réseaux virtuels.
SDN Gateways.psd1 - Déployez un contrôleur de réseau, un équilibreur de charge logiciel et une passerelle pour la connectivité à des réseaux externes.
Redéployer le contrôleur de réseau SDN
Si le déploiement du contrôleur de réseau échoue ou si vous souhaitez le déployer à nouveau, effectuez les étapes suivantes :
Supprimez toutes les machines virtuelles du contrôleur de réseau et leurs disques durs virtuels de toutes les machines.
Supprimez les clés de Registre suivantes de tous les ordinateurs en exécutant cette commande :
Remove-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Services\NcHostAgent\Parameters\' -Name Connections Remove-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Services\NcHostAgent\Parameters\' -Name NetworkControllerNodeNames
Après avoir supprimé la clé de Registre, supprimez le cluster de la gestion Windows Admin Center, puis rajoutez-le.
Remarque
Si vous ne procédez pas ainsi, il est possible que l’Assistant déploiement SDN ne s’affiche pas dans Windows Admin Center.
(Étape supplémentaire uniquement si vous envisagez de désinstaller le contrôleur de réseau et de ne pas le déployer à nouveau) Exécutez l’applet de commande suivante sur toutes les machines de votre instance Azure Local, puis ignorez la dernière étape.
Disable-VMSwitchExtension -VMSwitchName "<Compute vmswitch name>" -Name "Microsoft Azure VFP Switch Extension"
Réexécutez l’Assistant Déploiement.