Virtuális gépek üzembe helyezése az Azure Stack Edge Pro GPU-eszközön az Azure PowerShell-szkripttel
A következőkre vonatkozik: Azure Stack Edge Pro – GPUAzure Stack Edge Pro 2Azure Stack Edge Pro RAzure Stack Edge Mini R
Ez az oktatóanyag bemutatja, hogyan hozhat létre és kezelhet virtuális gépeket az Azure Stack Edge Pro-eszközön egy Azure PowerShell-szkript használatával.
Előfeltételek
Mielőtt ezzel a szkripttel virtuális gépet hoz létre és kezel az Azure Stack Edge Pro-eszközön, győződjön meg arról, hogy teljesítette az alábbi lépésekben felsorolt előfeltételeket:
Azure Stack Edge Pro-eszköz esetén a helyi webes felhasználói felületen keresztül
Mielőtt üzembe helyezheti a virtuális gépeket az Azure Stack Edge-eszközön, konfigurálnia kell az ügyfelet, hogy az Azure Resource Manageren keresztül csatlakozzon az eszközhöz az Azure PowerShellen keresztül. Részletes útmutatásért lásd: Csatlakozás az Azure Resource Managerhez az Azure Stack Edge-eszközön.
Győződjön meg arról, hogy az alábbi lépésekkel hozzáférhet az eszközhöz az ügyféltől. Ezt a konfigurációt már végrehajtotta, amikor csatlakozott az Azure Resource Managerhez, és most ellenőrzi, hogy a konfiguráció sikeres volt-e.
Az alábbi parancs futtatásával ellenőrizze, hogy működik-e az Azure Resource Manager-kommunikáció:
A helyi eszköz API-k hitelesítéshez való meghívásához írja be a következőt:
Ha a Kuberneteshez konfigurálta a számítást, kihagyhatja ezt a lépést. Ellenkező esetben győződjön meg arról, hogy engedélyezte a hálózati adaptert a számításhoz az alábbi módon:
a. A helyi felhasználói felületen válassza a Számítási beállítások lehetőséget.
b. Válassza ki a virtuális kapcsoló létrehozásához használni kívánt hálózati adaptert. A létrehozott virtuális gépek egy virtuális kapcsolóhoz lesznek csatolva, amely ehhez a porthoz és a társított hálózathoz csatlakozik. Ügyeljen arra, hogy olyan hálózatot válasszon, amely megfelel a virtuális géphez használni kívánt IP-címnek.c. A hálózati adapteren történő számítás engedélyezése csoportban válassza az Igen lehetőséget. Az Azure Stack Edge létrehoz és kezel egy, az adott hálózati adapternek megfelelő virtuális kapcsolót. Jelenleg ne adjon meg konkrét IP-címeket a Kuberneteshez. A számítás engedélyezése több percet is igénybe vehet.
Feljegyzés
GPU-beli virtuális gépek létrehozásakor válassza ki az internethez csatlakoztatott hálózati adaptert. Így gpu-bővítményt telepíthet az eszközére.
Windows-ügyfél esetén
Győződjön meg arról, hogy módosította:
- Az ügyfél gazdagépfájlja, VAGY,
- A DNS-kiszolgáló konfigurációja
Fontos
Javasoljuk, hogy módosítsa a DNS-kiszolgáló konfigurációját a végpontnévfeloldáshoz.
Indítsa el a Jegyzettömbet rendszergazdaként (a fájl mentéséhez rendszergazdai jogosultságokra van szükség), majd nyissa meg a következő helyen található gazdagépfájlt
C:\Windows\System32\Drivers\etc
: .Adja hozzá a következő bejegyzéseket a gazdagépfájlhoz, és cserélje le az eszköz megfelelő értékeit:
<device IP> login.<appliance name>.<DNS domain> <device IP> management.<appliance name>.<DNS domain> <device IP> <storage name>.blob.<appliance name>.<DNS domain>
A tárfiókhoz megadhat egy nevet, amelyet később használni szeretne egy új tárfiók létrehozásához. A szkript nem ellenőrzi, hogy a tárfiók létezik-e.
Referenciaként használja az alábbi képet. Mentse a gazdagépfájlt .
Győződjön meg arról, hogy a Windows-ügyfél a PowerShell 5.0-s vagy újabb verzióját futtatja.
Győződjön meg arról, hogy a
Azure.Storage Module version 4.5.0
rendszer telepítve van. Ezt a modult a PowerShell-galéria szerezheti be. A modul telepítéséhez írja be a következőt:Install-Module -Name Azure.Storage -RequiredVersion 4.5.0
A telepített modul verziójának ellenőrzéséhez írja be a következőt:
Get-InstalledModule -name Azure.Storage
Más verziómodulok eltávolításához írja be a következőt:
Uninstall-Module -Name Azure.Storage
Töltse le az AzCopy 10-et a Windows-ügyfélre. Jegyezze fel ezt a helyet, mivel paraméterként adja át a szkript futtatása közben.
Győződjön meg arról, hogy a Windows-ügyfél TLS 1.2-t vagy újabb verziót futtat.
Virtuális gép létrehozása
Futtassa a PowerShellt rendszergazdaként.
Lépjen arra a mappára, ahová letöltötte a szkriptet az ügyfélen.
A szkript futtatása előtt győződjön meg arról, hogy továbbra is csatlakozik az eszköz helyi Azure Resource Manageréhez, és a kapcsolat még nem járt le.
PS C:\windows\system32> login-AzureRMAccount -EnvironmentName aztest1 -TenantId c0257de7-538f-415c-993a-1b87a031879d Account SubscriptionName TenantId Environment ------- ---------------- -------- ----------- EdgeArmUser@localhost Default Provider Subscription c0257de7-538f-415c-993a-1b87a031879d aztest1 PS C:\windows\system32> cd C:\Users\v2 PS C:\Users\v2>
A szkript futtatásához használja a következő parancsot:
.\ArmPowershellClient.ps1 -NicPrivateIp <Private IP> -VHDPath <Path> -VHDFile <VHD File, with extension> -StorageAccountName <Name> -OS <Windows/Linux> -VMSize <Supported VM Size> -VMUserName <Username to be used to sign in to VM> -VMPassword <Password for the VM> --AzCopy10Path <Absolute Path>
Ha azt szeretné, hogy az IP-cím dinamikusan legyen lefoglalva a virtuális géphez, hagyja ki a paramétert
-NicPrivateIp
.Az alábbiakban a Windows rendszerű virtuális gépek és Linux rendszerű virtuális gépek létrehozásához futtatott szkriptek példáit mutatjuk be.
Windows rendszerű virtuális gép esetén:
Íme egy példakimenet egy létrehozott Windows rendszerű virtuális géphez.
PS C:\Users\v2> .\ArmPowershellClient.ps1 -VHDPath \\asefs\Logs\vmvhd -VHDFile WindowsServer2016Datacenter.vhd -StorageAccountName myasesatest -OS Windows -VMSize Standard_D1_v2 -VMUserName Administrator -VMPassword Password1 -AzCopy10Path C:\Users\AzCopy10\AzCopy.exe New-AzureRmResourceGroup -Name rg201221071831 -Location DBELocal -Force Successfully created Resource Group:rg201221071831 Successfully created Resource Group:StorAccRG Get-AzureRmStorageAccount -Name myasesatest -ResourceGroupName StorAccRG -ErrorAction SilentlyContinue New-AzureRmStorageAccount -Name myasesatest -ResourceGroupName StorAccRG -SkuName Standard_LRS -Location DBELocal Created New Storage Account Get-AzureRmStorageAccount -name myasesatest -resourcegroupname StorageAccountName ResourceGroupName Location SkuName Kind AccessTier CreationTime ProvisioningState EnableHttpsTrafficOnly ------------------ ----------------- -------- ------- ---- ---------- ------------ ----------------- ---------------------- myasesatest StorAccRG DBELocal StandardLRS Storage 12/22/2020 3:18:38 AM Succeeded False myasesatest StorAccRG DBELocal StandardLRS Storage 12/22/2020 3:18:38 AM Succeeded False Uploading Vhd to Storage Account New-AzureStorageContext -StorageAccountName myasesatest -StorageAccountKey hyibjhbVlOROgTlU1nQJIlxrg94eGDhF+RIQ71Z7UVZIxoOPMlHP274NUhZtA1hMxGBcpk2BVApiFasFPEhY/A== -Endpoint https://myasesatest.blob.myasegpuvm.wdshcsso.com/ New-AzureStorageAccountSASToken -Service Blob,File,Queue,Table -ResourceType Container,Service,Object -Permission SAS Token : ?sv=2017-07-29&sig=TXaGbjum9tFFaJnu3SFmDuslJuqNiNQwvuHfpPJMYN0%3D&spr=https&se=2020-12-22T04%3A18%3A43Z&srt=sco&ss=bfqt&sp=racwdl C:\Users\AzCopy10\AzCopy.exe make https://myasesatest.blob.myasegpuvm.wdshcsso.com/vmimages?sv=2017-07-29&sig=TXaGbjum9tFFaJnu3SFmDuslJuqNiNQwvuHfpPJMYN0%3D&spr=https&se=2020-12-22T04%3A18%3A43Z&srt=sco&ss=bfqt&sp=racwdl Successfully created the resource. AzCopy cp \\asefs\Logs\vmvhd\WindowsServer2016Datacenter.vhd https://myasesatest.blob.myasegpuvm.wdshcsso.com/vmimages?sv=2017-07-29&sig=TXaGbjum9tFFaJnu3SFmDuslJuqNiNQwvuHfpPJMYN0%3D&spr=https&se=2020-12-22T04%3A18%3A43Z&srt=sco&ss=bfqt&sp=racwdl INFO: Scanning... Job b6f54665-93c4-2f47-4770-5f3b7b0de2dc has started Log file is located at: C:\Users\Administrator\.azcopy\b6f54665-93c4-2f47-4770-5f3b7b0de2dc.log INFO: AzCopy.exe: A newer version 10.8.0 is available to download 99.9 %, 0 Done, 0 Failed, 1 Pending, 0 Skipped, 1 Total, (Disk may be limiting speed) Job b6f54665-93c4-2f47-4770-5f3b7b0de2dc summary Elapsed Time (Minutes): 12.7717 Total Number Of Transfers: 1 Number of Transfers Completed: 1 Number of Transfers Failed: 0 Number of Transfers Skipped: 0 TotalBytesTransferred: 13958644224 Final Job Status: Completed VHD Upload Done Creating a new managed disk = New-AzureRmDiskConfig -Location DBELocal -CreateOption Import -SourceUri Microsoft.Azure.Commands.Compute.Automation.Models.PSDisk New-AzureRmDisk -ResourceGroupName rg201221071831 -DiskName ld201221071831 -Disk ResourceGroupName : rg201221071831 ManagedBy : Sku : Microsoft.Azure.Management.Compute.Models.DiskSku Zones : TimeCreated : 12/21/2020 7:31:35 PM OsType : CreationData : Microsoft.Azure.Management.Compute.Models.CreationData DiskSizeGB : 13 EncryptionSettings : ProvisioningState : Succeeded Id : /subscriptions/947b3cfd-7a1b-4a90-7cc5-e52caf221332/resourceGroups/rg201221071831/providers/Microsoft.Compute/disks/ld201221071831 Name : ld201221071831 Type : Microsoft.Compute/disks Location : DBELocal Tags : {} Created a new managed disk Creating a new Image out of managed disk ResourceGroupName : SourceVirtualMachine : StorageProfile : Microsoft.Azure.Management.Compute.Models.ImageStorageProfile ProvisioningState : Id : Name : Type : Location : DBELocal Tags : New-AzureRmImage -Image Microsoft.Azure.Commands.Compute.Automation.Models.PSImage -ImageName ig201221071831 -ResourceGroupName rg201221071831 -HyperVGeneration V1 ResourceGroupName : rg201221071831 SourceVirtualMachine : StorageProfile : Microsoft.Azure.Management.Compute.Models.ImageStorageProfile ProvisioningState : Succeeded Id : /subscriptions/947b3cfd-7a1b-4a90-7cc5-e52caf221332/resourceGroups/rg201221071831/providers/Microsoft.Compute/images/ig201221071831 Name : ig201221071831 Type : Microsoft.Compute/images Location : dbelocal Tags : {} Created a new Image Using Vnet /subscriptions/947b3cfd-7a1b-4a90-7cc5-e52caf221332/resourceGroups/ASERG/providers/Microsoft.Network/virtualNetworks/ASEVNET Creating a new Newtork Interface WARNING: The output object type of this cmdlet will be modified in a future release. VirtualMachine : IpConfigurations : {ip201221071831} DnsSettings : Microsoft.Azure.Commands.Network.Models.PSNetworkInterfaceDnsSettings MacAddress : 001DD87D7216 Primary : EnableAcceleratedNetworking : False EnableIPForwarding : False NetworkSecurityGroup : ProvisioningState : Succeeded VirtualMachineText : null IpConfigurationsText : [ { "Name": "ip201221071831", "Etag": "W/\"27785dd5-d12a-4d73-9495-ffad7847261a\"", "Id": "/subscriptions/947b3cfd-7a1b-4a90-7cc5-e52caf221332/resourceGroups/rg201221071831/providers/Microsoft.Network/networkInterfaces/nic201221071831/ipConfigurations/ip201221071831", "PrivateIpAddress": "10.57.51.61", "PrivateIpAllocationMethod": "Dynamic", "Subnet": { "Id": "/subscriptions/947b3cfd-7a1b-4a90-7cc5-e52caf221332/resourceGroups/ASERG/providers/Microsoft.Network/virtualNetworks/ASEVNET/subnets/ASEVNETsubNet", "ResourceNavigationLinks": [], "ServiceEndpoints": [] }, "ProvisioningState": "Succeeded", "PrivateIpAddressVersion": "IPv4", "LoadBalancerBackendAddressPools": [], "LoadBalancerInboundNatRules": [], "Primary": true, "ApplicationGatewayBackendAddressPools": [], "ApplicationSecurityGroups": [] } ] DnsSettingsText : { "DnsServers": [], "AppliedDnsServers": [], "InternalDomainNameSuffix": "qgotb4hjdh4efnhn0vz5adtb3f.a--x.internal.cloudapp.net" } NetworkSecurityGroupText : null ResourceGroupName : rg201221071831 Location : dbelocal ResourceGuid : e6327ab9-0855-4f04-9b36-17bbf31b5bd8 Type : Microsoft.Network/networkInterfaces Tag : TagsTable : Name : nic201221071831 Etag : W/"27785dd5-d12a-4d73-9495-ffad7847261a" Id : /subscriptions/947b3cfd-7a1b-4a90-7cc5-e52caf221332/resourceGroups/rg201221071831/providers/Microsoft.Network/networkInterfaces/nic201221071831 Created Network Interface Creating a new VM New-AzureRmVMConfig -VMName VM201221071831 -VMSize Standard_D1_v2 Set-AzureRmVMOperatingSystem -VM Microsoft.Azure.Commands.Compute.Models.PSVirtualMachine -Windows -ComputerName COM201221071831 -Credential System.Management.Automation.PSCredential Microsoft.Azure.Commands.Compute.Models.PSVirtualMachine = Set-AzureRmVMOSDisk -VM Microsoft.Azure.Commands.Compute.Models.PSVirtualMachine -Name osld201221071831 -Caching ReadWrite -CreateOption FromImage -Windows -StorageAccountType StandardLRS Add-AzureRmVMNetworkInterface -VM Microsoft.Azure.Commands.Compute.Models.PSVirtualMachine -Id /subscriptions/947b3cfd-7a1b-4a90-7cc5-e52caf221332/resourceGroups/rg201221071831/providers/Microsoft.Network/networkInterfaces/nic201221071831.Id Set-AzureRmVMSourceImage -VM Microsoft.Azure.Commands.Compute.Models.PSVirtualMachine -Id /subscriptions/947b3cfd-7a1b-4a90-7cc5-e52caf221332/resourceGroups/rg201221071831/providers/Microsoft.Compute/images/ig201221071831 New-AzureRmVM -ResourceGroupName rg201221071831 -Location DBELocal -VM Microsoft.Azure.Commands.Compute.Models.PSVirtualMachine -Verbose WARNING: Since the VM is created using premium storage or managed disk, existing standard storage account, myasesa1, is used for boot diagnostics. VERBOSE: Performing the operation "New" on target "VM201221071831". Ticks : 1533424841 Days : 0 Hours : 0 Milliseconds : 342 Minutes : 2 Seconds : 33 TotalDays : 0.00177479726967593 TotalHours : 0.0425951344722222 TotalMilliseconds : 153342.4841 TotalMinutes : 2.55570806833333 TotalSeconds : 153.3424841 RequestId : IsSuccessStatusCode : True StatusCode : OK ReasonPhrase : OK PS C:\Users\v2>
Linux rendszerű virtuális gép esetén:
Íme a Linux rendszerű virtuális gép létrehozásához használt parancs mintája.
.\ArmPowershellClient.ps1 -VHDPath \\asefs\Logs\vmvhd -VHDFile ubuntu13.vhd -StorageAccountName myasesatest -OS Linux -VMSize Standard_D1_v2 -VMUserName Administrator -VMPassword Password1 -AzCopy10Path C:\Users\AzCopy10\AzCopy.exe New-AzureRmResourceGroup -Name rg201221075546 -Location DBELocal -Force
Miután sikeresen létrehozta a virtuális gépeket, ezeknek a virtuális gépeknek szerepelniük kell az Azure Portal virtuális gépeinek listájában. A virtuális gépek megtekintéséhez nyissa meg az Eszköz Azure Stack Edge-erőforrásában az Azure Portalon az Edge-szolgáltatások > virtuális gépeit.
A virtuális gép részleteinek megtekintéséhez válassza ki a virtuális gép nevét. Figyelje meg a virtuális gép IP-címének dinamikus lefoglalását.
A szkript által létrehozott erőforrások törléséhez használja az alábbi parancsokat:
Get-AzureRmVM | Remove-AzureRmVM -Force Get-AzureRmNetworkInterface | Remove-AzureRmNetworkInterface -Force Get-AzureRmImage | Remove-AzureRmImage -Force Get-AzureRmDisk | Remove-AzureRmDisk -Force Get-AzureRmStorageAccount | Remove-AzureRmStorageAccount -Force
Következő lépések
Virtuális gépek üzembe helyezése Azure PowerShell-parancsmagokkal