Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом разделе рассматривается отправка общего неуправляемого диска в учетную запись хранения, а затем создание виртуальной машины с помощью отправленного диска. Общий образ виртуального жесткого диска не содержит никакой информации о вашей личной учетной записи; она была удалена с помощью Sysprep.
Если вы хотите создать виртуальную машину из специализированного VHD (виртуального жесткого диска), находящегося в учетной записи хранения, см. Создание виртуальной машины из специализированного VHD.
В этом разделе рассматривается использование учетных записей хранения, но мы рекомендуем клиентам переходить к использованию управляемых дисков. Полное пошаговое руководство по подготовке, отправке и созданию новой виртуальной машины с использованием управляемых дисков см. в статье Создание новой виртуальной машины из обобщенного виртуального жесткого диска, отправленного в Azure с помощью управляемых дисков.
Подготовка виртуальной машины
Общий виртуальный жесткий диск не содержит сведений о вашей личной учетной записи, поскольку они были удалены с помощью Sysprep. Если вы планируете использовать виртуальный жесткий диск в качестве образа для создания новых виртуальных машин, необходимо:
- Подготовьте виртуальный жесткий диск Windows для загрузки вAzure.
- Обобщение виртуальной машины с помощью Sysprep
Обобщить виртуальную машину Windows с помощью Sysprep
В этом разделе показано, как обобщить виртуальную машину Windows для использования в качестве образа. Sysprep удаляет все сведения о личной учетной записи и другие данные, и подготавливает компьютер к использованию в качестве образа. Дополнительные сведения о Sysprep см. в разделе Использование Sysprep: введение.
Убедитесь, что роли сервера, работающие на компьютере, поддерживаются Sysprep. Дополнительные сведения см. в разделе Поддержка Sysprep для ролей сервера
Это важно
Если вы запускаете Sysprep перед отправкой виртуального жесткого диска в Azure впервые, убедитесь, что вы подготовили виртуальную машину перед запуском Sysprep.
Войдите на виртуальную машину Windows.
Откройте окно командной строки от имени администратора. Измените каталог на %windir%\system32\sysprep, а затем запустите
sysprep.exe
.В диалоговом окне средства подготовки системы выберите Ввести опыт вне коробки (OOBE) системыи убедитесь, что установлен флажок "Обобщение".
В разделе Параметры завершения работы выберите Завершение работы.
Щелкните OK.
Когда sysprep завершит работу, она завершает работу виртуальной машины.
Это важно
Не перезапускайте виртуальную машину, пока не закончите загружать виртуальный жесткий диск в Azure или пока не создадите образ из виртуальной машины. Если виртуальная машина случайно перезагружается, запустите Sysprep, чтобы снова обобщить ее.
Загрузите виртуальный жесткий диск (VHD)
Загрузите VHD в учетную запись хранения Azure.
Вход в Azure
Если у вас еще не установлена версия PowerShell 1.4 или выше, прочитайте Установка и Настройка Azure PowerShell.
Откройте Azure PowerShell и войдите в свою учетную запись Azure. Откроется всплывающее окно для ввода учетных данных учетной записи Azure.
Connect-AzAccount
Получите идентификаторы ваших доступных подписок.
Get-AzSubscription
Задайте правильную подписку с помощью идентификатора подписки. Замените
<subscriptionID>
идентификатором правильной подписки.Select-AzSubscription -SubscriptionId "<subscriptionID>"
Получите учетную запись хранения
Для хранения отправленного образа виртуальной машины требуется учетная запись хранения в Azure. Можно использовать существующую учетную запись хранения или создать новую.
Чтобы отобразить доступные учетные записи хранения, введите следующее:
Get-AzStorageAccount
Если вы хотите использовать существующую учетную запись хранения, перейдите к разделу "Отправка образа виртуальной машины".
Если вам нужно создать учетную запись хранения, выполните следующие действия.
Вам нужно имя группы ресурсов, в которой должна быть создана учетная запись хранения. Чтобы узнать все группы ресурсов, которые находятся в подписке, введите следующее:
Get-AzResourceGroup
Чтобы создать группу ресурсов с именем myResourceGroup в регионе западной части США, введите следующее:
New-AzResourceGroup -Name myResourceGroup -Location "West US"
Создайте учетную запись хранения с именем mystorageaccount в этой группе ресурсов с помощью командлета New-AzStorageAccount:
New-AzStorageAccount -ResourceGroupName myResourceGroup -Name mystorageaccount -Location "West US" ` -SkuName "Standard_LRS" -Kind "Storage"
Запуск отправки
Используйте командлет Add-AzVhd для отправки образа в контейнер в учетной записи хранения данных. Этот пример загружает файл myVHD.vhd из "C:\Users\Public\Documents\Virtual hard disks\"
в учетную запись хранения с именем mystorageaccount в группе ресурсов myResourceGroup. Файл будет помещен в контейнер с именем mycontainer, а новое имя файла будет myUploadedVHD.vhd.
$rgName = "myResourceGroup"
$urlOfUploadedImageVhd = "https://mystorageaccount.blob.core.windows.net/mycontainer/myUploadedVHD.vhd"
Add-AzVhd -ResourceGroupName $rgName -Destination $urlOfUploadedImageVhd `
-LocalFilePath "C:\Users\Public\Documents\Virtual hard disks\myVHD.vhd"
При успешном выполнении вы получите ответ, который выглядит примерно так:
MD5 hash is being calculated for the file C:\Users\Public\Documents\Virtual hard disks\myVHD.vhd.
MD5 hash calculation is completed.
Elapsed time for the operation: 00:03:35
Creating new page blob of size 53687091712...
Elapsed time for upload: 01:12:49
LocalFilePath DestinationUri
------------- --------------
C:\Users\Public\Doc... https://mystorageaccount.blob.core.windows.net/mycontainer/myUploadedVHD.vhd
В зависимости от сетевого подключения и размера VHD-файла эта команда может занять некоторое время.
Создание виртуальной машины
Теперь вы можете использовать отправленный VHD для создания новой виртуальной машины.
Установите URI виртуального жесткого диска (VHD)
URI для использования виртуального жесткого диска имеет формат: https://mystorageaccount.blob.core.windows.net/mycontainer/MyVhdName.vhd. В этом примере виртуальный жесткий диск с именем myVHD находится в учетной записи хранения mystorageaccount в контейнере mycontainer.
$imageURI = "https://mystorageaccount.blob.core.windows.net/mycontainer/myVhd.vhd"
Создание виртуальной сети
Создайте виртуальную сеть и подсеть виртуальной сети.
Создайте подсеть. В следующем примере создается подсеть с именем mySubnet в группе ресурсов myResourceGroup с префиксом адреса 10.0.0.0/24.
$rgName = "myResourceGroup" $subnetName = "mySubnet" $singleSubnet = New-AzVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix 10.0.0.0/24
Создайте виртуальную сеть. В следующем примере создается виртуальная сеть с именем myVnet в расположении западной части США с префиксом адреса 10.0.0.0/16.
$location = "WestUS" $vnetName = "myVnet" $vnet = New-AzVirtualNetwork -Name $vnetName -ResourceGroupName $rgName -Location $location ` -AddressPrefix 10.0.0.0/16 -Subnet $singleSubnet
Создание общедоступного IP-адреса и сетевого интерфейса
Чтобы включить связь с виртуальной машиной в виртуальной сети, вам потребуется общедоступный IP-адрес и сетевой интерфейс.
Создание общедоступного IP-адреса. В этом примере создается общедоступный IP-адрес с именем myPip.
$ipName = "myPip" $pip = New-AzPublicIpAddress -Name $ipName -ResourceGroupName $rgName -Location $location ` -AllocationMethod Dynamic
Создайте сетевой адаптер. В этом примере создается сетевой адаптер с именем myNic.
$nicName = "myNic" $nic = New-AzNetworkInterface -Name $nicName -ResourceGroupName $rgName -Location $location ` -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id
Создание группы безопасности сети и правила RDP
Чтобы войти на виртуальную машину с помощью RDP, необходимо иметь правило безопасности, которое разрешает доступ по протоколу RDP через порт 3389.
В этом примере создается группа безопасности сети с именем myNsg, содержащая правило с именем myRdpRule, которая разрешает трафик RDP через порт 3389. Дополнительные сведения о группах безопасности сети см. в статье Открытие портов на виртуальной машине в Azure с помощью PowerShell.
$nsgName = "myNsg"
$rdpRule = New-AzNetworkSecurityRuleConfig -Name myRdpRule -Description "Allow RDP" `
-Access Allow -Protocol Tcp -Direction Inbound -Priority 110 `
-SourceAddressPrefix Internet -SourcePortRange * `
-DestinationAddressPrefix * -DestinationPortRange 3389
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $rgName -Location $location `
-Name $nsgName -SecurityRules $rdpRule
Создание переменной для виртуальной сети
Создайте переменную для завершенной виртуальной сети.
$vnet = Get-AzVirtualNetwork -ResourceGroupName $rgName -Name $vnetName
Создание виртуальной машины
В следующем скрипте PowerShell показано, как настроить конфигурации виртуальных машин и использовать загруженный образ виртуальной машины в качестве источника для новой установки.
# Enter a new user name and password to use as the local administrator account
# for remotely accessing the VM.
$cred = Get-Credential
# Name of the storage account where the VHD is located. This example sets the
# storage account name as "myStorageAccount"
$storageAccName = "myStorageAccount"
# Name of the virtual machine. This example sets the VM name as "myVM".
$vmName = "myVM"
# Size of the virtual machine. This example creates "Standard_D2_v2" sized VM.
# See the VM sizes documentation for more information:
# https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/
$vmSize = "Standard_D2_v2"
# Computer name for the VM. This examples sets the computer name as "myComputer".
$computerName = "myComputer"
# Name of the disk that holds the OS. This example sets the
# OS disk name as "myOsDisk"
$osDiskName = "myOsDisk"
# Assign a SKU name. This example sets the SKU name as "Standard_LRS"
# Valid values for -SkuName are: Standard_LRS - locally redundant storage, Standard_ZRS - zone redundant
# storage, Standard_GRS - geo redundant storage, Standard_RAGRS - read access geo redundant storage,
# Premium_LRS - premium locally redundant storage.
$skuName = "Standard_LRS"
# Get the storage account where the uploaded image is stored
$storageAcc = Get-AzStorageAccount -ResourceGroupName $rgName -AccountName $storageAccName
# Set the VM name and size
$vmConfig = New-AzVMConfig -VMName $vmName -VMSize $vmSize
#Set the Windows operating system configuration and add the NIC
$vm = Set-AzVMOperatingSystem -VM $vmConfig -Windows -ComputerName $computerName `
-Credential $cred -ProvisionVMAgent -EnableAutoUpdate
$vm = Add-AzVMNetworkInterface -VM $vm -Id $nic.Id
# Create the OS disk URI
$osDiskUri = '{0}vhds/{1}-{2}.vhd' `
-f $storageAcc.PrimaryEndpoints.Blob.ToString(), $vmName.ToLower(), $osDiskName
# Configure the OS disk to be created from the existing VHD image (-CreateOption fromImage).
$vm = Set-AzVMOSDisk -VM $vm -Name $osDiskName -VhdUri $osDiskUri `
-CreateOption fromImage -SourceImageUri $imageURI -Windows
# Create the new VM
New-AzVM -ResourceGroupName $rgName -Location $location -VM $vm
Убедитесь, что виртуальная машина создана
По завершении вы увидите созданную виртуальную машину на портале Azure в разделе Обзор>виртуальных машинили с помощью следующих команд PowerShell:
$vmList = Get-AzVM -ResourceGroupName $rgName
$vmList.Name
Дальнейшие действия
Сведения об управлении новой виртуальной машиной с помощью Azure PowerShell см. в статье Управление виртуальными машинами с помощью Azure Resource Manager и PowerShell.