Partage via


Déployer un système Azure Stack HCI virtuel version 23H2

S’applique à : Azure Stack HCI, version 23H2

Cet article explique comment déployer un serveur unique virtualisé ou un azure stack HCI à plusieurs nœuds, version 23H2, sur un système hôte exécutant Hyper-V sur le système d’exploitation Windows Server 2022, Windows 11 ou ultérieur.

Vous avez besoin de privilèges d’administrateur pour le déploiement virtuel Azure Stack HCI et vous devez être familiarisé avec la solution Azure Stack HCI existante. Le déploiement peut prendre environ 2,5 heures.

Important

Un déploiement virtuel d’Azure Stack HCI version 23H2 est destiné uniquement à des fins éducatives et de démonstration. Support Microsoft ne prend pas en charge les déploiements virtuels.

Prérequis

Voici le matériel, la mise en réseau et d’autres prérequis pour le déploiement virtuel :

Configuration requise pour l’hôte physique

Voici la configuration minimale requise pour déployer correctement Azure Stack HCI, version 23H2.

Avant de commencer, assurez-vous que :

  • Vous avez accès à un système hôte physique qui exécute Hyper-V sur Windows Server 2022, Windows 11 ou version ultérieure. Cet hôte est utilisé pour provisionner un déploiement Azure Stack HCI virtuel.

  • Vous avez suffisamment de capacité. Plus de capacité est nécessaire pour exécuter des charges de travail réelles telles que des machines virtuelles ou des conteneurs.

  • Le matériel physique utilisé pour le déploiement virtuel répond aux exigences suivantes :

    Composant Minimum
    Processeur Intel VT-x ou AMD-V, avec prise en charge de la virtualisation imbriquée. Pour plus d’informations, consultez Mon processeur prend-il en charge la technologie de virtualisation Intel® ?.
    Mémoire L’hôte physique doit disposer d’un minimum de 32 Go de RAM pour les déploiements à nœud virtuel unique. La machine virtuelle de l’hôte virtuel doit avoir au moins 24 Go de RAM.

    L’hôte physique doit disposer d’un minimum de 64 Go de RAM pour deux déploiements de nœuds virtuels. Chaque machine virtuelle hôte virtuelle doit avoir au moins 24 Go de RAM.
    Cartes réseau hôtes Une seule carte réseau.
    Stockage Disque ssd (SSD) de 1 To.

Configuration requise pour l’hôte virtuel

Avant de commencer, assurez-vous que chaque système hôte virtuel peut dédier les ressources suivantes pour approvisionner votre système Azure Stack HCI virtualisé :

Composant Condition requise
Type de machine virtuelle Démarrage sécurisé et module de plateforme sécurisée (TPM) activé.
Processeurs virtuels Quatre cœurs.
Mémoire Un minimum de 24 Go.
Mise en réseau Au moins deux cartes réseau connectées au réseau interne. L’usurpation MAC doit être activée.
Disque de démarrage Un disque pour installer le système d’exploitation Azure Stack HCI à partir d’ISO.
Disques durs pour espaces de stockage direct Six disques à développement dynamique. La taille maximale du disque est de 1 024 Go.
Disque de données Au moins 127 Go.
Synchronisation de temps dans l’intégration Désactivé.

Notes

Il s’agit de la configuration minimale requise pour déployer correctement Azure Stack HCI, version 23H2. Augmentez la capacité comme les cœurs virtuels et la mémoire lors de l’exécution de charges de travail réelles telles que des machines virtuelles ou des conteneurs.

Configurer le commutateur virtuel

Lors du déploiement d’Azure Stack HCI dans un environnement virtuel, vous pouvez utiliser vos réseaux existants et utiliser les adresses IP de ce réseau si elles sont disponibles. Dans ce cas, il vous suffit de créer un commutateur externe et de connecter toutes les cartes réseau virtuelles à ce commutateur virtuel. Les hôtes virtuels auront une connectivité à votre réseau physique sans aucune configuration supplémentaire.

Toutefois, si votre réseau physique sur lequel vous envisagez de déployer l’environnement virtuel Azure Stack HCI est rare sur les adresses IP, vous pouvez créer un commutateur virtuel interne avec nat activé, pour isoler les hôtes virtuels de votre réseau physique tout en conservant la connectivité sortante vers Internet.

La liste suivante répertorie les étapes des deux options :

Déployer avec un commutateur virtuel externe

Sur votre ordinateur hôte physique, exécutez la commande PowerShell suivante pour créer un commutateur virtuel externe :

New-VMSwitch -Name "external_switch_name" -SwitchType External -NetAdapterName "network_adapter_name" -AllowManagementOS $true

Déployer avec un commutateur virtuel interne et nat activé

Sur votre ordinateur hôte physique, exécutez la commande PowerShell suivante pour créer un commutateur virtuel interne. L’utilisation de ce commutateur garantit que le déploiement Azure Stack HCI est isolé.

New-VMSwitch -Name "internal_switch_name" -SwitchType Internal -NetAdapterName "network_adapter_name" 

Une fois le commutateur virtuel interne créé, une nouvelle carte réseau est créée sur l’hôte. Vous devez affecter une adresse IP à cette carte réseau pour devenir la passerelle par défaut de vos hôtes virtuels une fois connectés à ce réseau de commutateur interne. Vous devez également définir le sous-réseau réseau NAT où les hôtes virtuels sont connectés.

L’exemple de script suivant crée un réseau HCINAT NAT avec préfixe 192.168.44.0/24 et définit l’adresse 192.168.44.1 IP comme passerelle par défaut pour le réseau à l’aide de l’interface sur l’hôte :

#Check interface index of the new network adapter on the host connected to InternalSwitch:
Get-NetAdapter -Name "vEthernet (InternalSwitch)"

#Create the NAT default gateway IP on top of the InternalSwitch network adapter:
New-NetIPAddress -IPAddress 192.168.44.1 -PrefixLength 24 -InterfaceAlias "vEthernet (InternalSwitch)"

#Create the NAT network:
New-NetNat -Name "HCINAT"-InternalIPInterfaceAddressPrefix 192.168.44.0/24

Create l’hôte virtuel

Create une machine virtuelle pour qu’elle serve d’hôte virtuel avec la configuration suivante. Vous pouvez créer cette machine virtuelle à l’aide du Gestionnaire Hyper-V ou de PowerShell :

Procédez comme suit pour créer un exemple de machine virtuelle nommée Node1 à l’aide d’applets de commande PowerShell :

  1. Créez la machine virtuelle :

    New-VHD -Path "your_VHDX_path" -SizeBytes 127GB
    New-VM -Name Node1 -MemoryStartupBytes 20GB -VHDPath "your_VHDX_path" -Generation 2 -Path "VM_config_files_path"
    
  2. Désactiver la mémoire dynamique :

    Set-VMMemory -VMName "Node1" -DynamicMemoryEnabled $false
    
  3. Désactivez les points de contrôle de machine virtuelle :

    Set-VM -VMName "Node1" -CheckpointType Disabled
    
  4. Supprimez la carte réseau par défaut créée lors de la création de la machine virtuelle à l’étape précédente :

    Get-VMNetworkAdapter -VMName "Node1" | Remove-VMNetworkAdapter
    
  5. Ajoutez de nouvelles cartes réseau à la machine virtuelle à l’aide de noms personnalisés. Cet exemple ajoute quatre cartes réseau, mais vous pouvez en ajouter seulement deux si nécessaire. Avoir quatre cartes réseau vous permet de tester deux intentions réseau (Mgmt_Compute et Storage par exemple) avec deux cartes réseau chacune :

    Add-VmNetworkAdapter -VmName "Node1" -Name "NIC1"
    Add-VmNetworkAdapter -VmName "Node1" -Name "NIC2"
    Add-VmNetworkAdapter -VmName "Node1" -Name "NIC3"
    Add-VmNetworkAdapter -VmName "Node1" -Name "NIC4"
    
  6. Attachez toutes les cartes réseau au commutateur virtuel. Spécifiez le nom du commutateur virtuel que vous avez créé, qu’il soit externe sans NAT ou interne avec NAT :

    Get-VmNetworkAdapter -VmName "Node1" |Connect-VmNetworkAdapter -SwitchName "virtual_switch_name"
    
  7. Activez l’usurpation MAC sur toutes les cartes réseau sur la machine virtuelle Node1. L’usurpation d’adresses MAC est une technique qui permet à une carte réseau de se faire passer pour une autre en modifiant son adresse media Access Control (MAC). Cela est obligatoire dans les scénarios où vous envisagez d’utiliser la virtualisation imbriquée :

    Get-VmNetworkAdapter -VmName "Node1" |Set-VmNetworkAdapter -MacAddressSpoofing On
    
  8. Activez le port de jonction (pour les déploiements à plusieurs nœuds uniquement) pour toutes les cartes réseau sur la machine virtuelle Node1. Ce script configure la carte réseau d’une machine virtuelle spécifique pour qu’elle fonctionne en mode jonction. Il est généralement utilisé dans les déploiements à plusieurs nœuds où vous souhaitez autoriser plusieurs réseaux locaux virtuels (VLAN) à communiquer via une seule carte réseau :

    Get-VmNetworkAdapter -VmName "Node1" |Set-VMNetworkAdapterVlan -Trunk -NativeVlanId 0 -AllowedVlanIdList 0-1000
    
  9. Create un nouveau protecteur de clé et l’affecter à Node1. Cela se fait généralement dans le contexte de la configuration d’une infrastructure protégée dans Hyper-V, une fonctionnalité de sécurité qui protège les machines virtuelles contre l’accès non autorisé ou la falsification.

    Une fois le script suivant exécuté, Node1 un nouveau protecteur de clé lui est affecté. Ce logiciel de protection de clé protège les clés de la machine virtuelle, ce qui permet de sécuriser la machine virtuelle contre tout accès non autorisé ou toute falsification :

    $owner = Get-HgsGuardian UntrustedGuardian
    $kp = New-HgsKeyProtector -Owner $owner -AllowUntrustedRoot
    Set-VMKeyProtector -VMName "Node1" -KeyProtector $kp.RawData
    
  10. Activez vTPM pour Node1. En activant vTPM sur une machine virtuelle, vous pouvez utiliser BitLocker et d’autres fonctionnalités qui nécessitent un module TPM sur la machine virtuelle. Une fois cette commande exécutée, Node1 un vTPM est activé, en supposant que le matériel de l’ordinateur hôte et la configuration de la machine virtuelle prennent en charge cette fonctionnalité.

    Enable-VmTpm -VMName "Node1"
    
  11. Remplacez les processeurs virtuels par 8:

     Set-VmProcessor -VMName "Node1" -Count 8
    
  12. Create lecteurs supplémentaires à utiliser comme disque de démarrage et disques durs pour espaces de stockage direct. Une fois ces commandes exécutées, six nouveaux VHDX sont créés dans le C:\vms\Node1 répertoire, comme indiqué dans cet exemple :

     new-VHD -Path "C:\vms\Node1\s2d1.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d2.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d3.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d4.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d5.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d6.vhdx" -SizeBytes 1024GB
    
  13. Attachez des lecteurs aux VHDX nouvellement créés pour la machine virtuelle. Dans ces commandes, six disques durs virtuels situés dans le C:\vms\Node1 répertoire et nommés s2d1.vhdx via s2d6.vhdx sont ajoutés à Node1. Chaque Add-VMHardDiskDrive commande ajoute un disque dur virtuel à la machine virtuelle, de sorte que la commande est répétée six fois avec des valeurs de paramètres différentes -Path .

    Ensuite, six disques durs virtuels sont attachés à la Node1 machine virtuelle. Ces VHDX sont utilisés pour activer les espaces de stockage direct sur la machine virtuelle, qui sont nécessaires pour les déploiements Azure Stack HCI :

     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d1.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d2.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d3.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d4.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d5.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d6.vhdx"
    
  14. Désactiver la synchronisation de l’heure :

    Get-VMIntegrationService -VMName "Node1" |Where-Object {$_.name -like "T*"}|Disable-VMIntegrationService
    
  15. Activer la virtualisation imbriquée :

    Set-VMProcessor -VMName "Node1" -ExposeVirtualizationExtensions $true
    
  16. Démarrez la machine virtuelle :

    Start-VM "Node1"
    

Installer le système d’exploitation sur les machines virtuelles de l’hôte virtuel

Effectuez les étapes suivantes pour installer et configurer le système d’exploitation Azure Stack HCI sur les machines virtuelles hôtes virtuelles :

  1. Téléchargez Azure Stack HCI 23H2 ISO et installez le système d’exploitation Azure Stack HCI.

  2. Mettez à jour le mot de passe, car il s’agit du premier démarrage de la machine virtuelle. Assurez-vous que le mot de passe répond aux exigences de complexité Azure. Le mot de passe comporte au moins 12 caractères et comprend 1 caractère majuscule, 1 caractère minuscule, 1 nombre et 1 caractère spécial.

  3. Une fois le mot de passe modifié, l’outil de configuration de serveur (SConfig) est automatiquement chargé. Sélectionnez l’option 15 pour quitter la ligne de commande et exécutez les étapes suivantes à partir de là.

  4. Lancez SConfig en exécutant la commande suivante :

      SConfig
    

    Pour plus d’informations sur l’utilisation de SConfig, consultez Configurer avec l’outil de configuration de serveur (SConfig).

  5. Remplacez le nom d’hôte par Node1. Pour ce faire, utilisez l’option 2 pour Computer name dans SConfig.

    La modification du nom d’hôte entraîne un redémarrage. Lorsque vous êtes invité à redémarrer, entrez Yes et attendez que le redémarrage se termine. SConfig est relancé automatiquement.

  6. À partir de l’hôte physique, exécutez les Get-VMNetworkAdapter applets de commande et ForEach-Object pour configurer les quatre noms de cartes réseau pour la machine virtuelle Node1 en mappant les adresses MAC affectées aux cartes réseau correspondantes sur le système d’exploitation invité.

    1. L’applet Get-VMNetworkAdapter de commande permet de récupérer l’objet de carte réseau pour chaque carte réseau sur la machine virtuelle, où le -VMName paramètre spécifie le nom de la machine virtuelle et le -Name paramètre spécifie le nom de la carte réseau. La MacAddress propriété de l’objet de carte réseau est ensuite accessible pour obtenir l’adresse MAC :
    Get-VMNetworkAdapter -VMName "Node1" -Name "NIC1"
    
    1. L’adresse MAC est une chaîne de nombres hexadécimaux. L’applet ForEach-Object de commande permet de mettre en forme cette chaîne en insérant des traits d’union à des intervalles spécifiques. Plus précisément, la Insert méthode de l’objet string est utilisée pour insérer un trait d’union aux 2e, 5e, 8e, 11e et 14e positions dans la chaîne. L’opérateur join est ensuite utilisé pour concaténer le tableau de chaînes résultant en une seule chaîne avec des espaces entre chaque élément.

    2. Les commandes sont répétées pour chacune des quatre cartes réseau sur la machine virtuelle, et l’adresse MAC mise en forme finale pour chaque carte réseau est stockée dans une variable distincte :

    ($Node1finalmacNIC1, $Node1finalmacNIC2, $Node1finalmacNIC3, $Node1finalmacNIC4).
    
    1. Le script suivant génère l’adresse MAC mise en forme finale pour chaque carte réseau :
    $Node1macNIC1 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC1"
    $Node1macNIC1.MacAddress
    $Node1finalmacNIC1=$Node1macNIC1.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "}
    $Node1finalmacNIC1
    
    $Node1macNIC2 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC2"
    $Node1macNIC2.MacAddress
    $Node1finalmacNIC2=$Node1macNIC2.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "}
    $Node1finalmacNIC2
    
    $Node1macNIC3 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC3"
    $Node1macNIC3.MacAddress
    $Node1finalmacNIC3=$Node1macNIC3.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "}
    $Node1finalmacNIC3
    
    $Node1macNIC4 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC4"
    $Node1macNIC4.MacAddress
    $Node1finalmacNIC4=$Node1macNIC4.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "}
    $Node1finalmacNIC4
    
    
  7. Obtenez les informations d’identification de l’administrateur Node1 local de la machine virtuelle, puis renommez Node1:

    $cred = get-credential
    
  8. Renommez et mappez les cartes réseau sur Node1. Le renommage est basé sur les adresses MAC des cartes réseau affectées par Hyper-V lors du premier démarrage de la machine virtuelle. Ces commandes doivent être exécutées directement à partir de l’hôte :

    Utilisez la Get-NetAdapter commande pour récupérer les cartes réseau physiques sur la machine virtuelle, les filtrer en fonction de leur adresse MAC, puis les renommer en adaptateur correspondant à l’aide de l’applet Rename-NetAdapter de commande .

    Cette opération est répétée pour chacune des quatre cartes réseau sur la machine virtuelle, avec l’adresse MAC et le nouveau nom de chaque carte réseau spécifiés séparément. Cela établit un mappage entre le nom des cartes réseau dans le Gestionnaire Hyper-V et le nom des cartes réseau dans le système d’exploitation de la machine virtuelle :

    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC1) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC1} | Rename-NetAdapter -NewName "NIC1"} -ArgumentList $Node1finalmacNIC1
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC2) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC2} | Rename-NetAdapter -NewName "NIC2"} -ArgumentList $Node1finalmacNIC2
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC3) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC3} | Rename-NetAdapter -NewName "NIC3"} -ArgumentList $Node1finalmacNIC3
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC4) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC4} | Rename-NetAdapter -NewName "NIC4"} -ArgumentList $Node1finalmacNIC4
    
  9. Désactivez le protocole DHCP (Dynamic Host Configuration Protocol) sur les quatre cartes réseau pour machine virtuelle Node1 en exécutant les commandes suivantes.

    Notes

    Les interfaces n’obtiennent pas automatiquement d’adresses IP à partir d’un serveur DHCP et doivent avoir des adresses IP affectées manuellement :

    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC1" -Dhcp Disabled}
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC2" -Dhcp Disabled}
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC3" -Dhcp Disabled}
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC4" -Dhcp Disabled}
    
  10. Définissez l’adresse IP de gestion, la passerelle et le DNS. Une fois les commandes suivantes exécutées, Node1 l’interface réseau est configurée avec l’adresse NIC1 IP, le masque de sous-réseau, la passerelle par défaut et l’adresse du serveur DNS spécifiés. Vérifiez que l’adresse IP de gestion peut résoudre Active Directory et dispose d’une connectivité sortante vers Internet :

    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {New-NetIPAddress -InterfaceAlias "NIC1" -IPAddress "192.168.44.201" -PrefixLength 24 -AddressFamily IPv4 -DefaultGateway "192.168.44.1"}
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-DnsClientServerAddress -InterfaceAlias "NIC1" -ServerAddresses "192.168.1.254"}
    
  11. Activez le rôle Hyper-V. Cette commande redémarre la machine virtuelle Node1:

    Invoke-Command -VMName "Node1"
    -Credential $cred -ScriptBlock {Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All }
    
  12. Une fois Node1 redémarré et le rôle Hyper-V installé, installez les outils d’administration Hyper-V :

    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Install-WindowsFeature -Name Hyper-V -IncludeManagementTools}
    
  13. Une fois le serveur hôte virtuel prêt, vous devez l’inscrire et attribuer des autorisations dans Azure en tant que ressource Arc.

  14. Une fois que le serveur est inscrit dans Azure en tant que ressource Arc et que toutes les extensions obligatoires sont installées, choisissez l’une des méthodes suivantes pour déployer Azure Stack HCI à partir d’Azure.

Répétez le processus ci-dessus pour les nœuds supplémentaires si vous envisagez de tester des déploiements à plusieurs nœuds. Vérifiez que les noms d’hôtes virtuels et les adresses IP de gestion sont uniques et sur le même sous-réseau :

Étapes suivantes