Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Виртуальные машины Azure хранят операционные системы (ОС), приложения и данные на дисках. При создании виртуальной машины важно выбрать размер диска и конфигурацию в соответствии с ожидаемой рабочей нагрузкой.
В этом руководстве показано, как развернуть и администрировать диски виртуальных машин. В этом руководстве описано следующее:
- создание, подключение и инициализация диска данных;
- проверка состояния диска;
- инициализация диска;
- расширение и обновление диска;
- Отключить и удалить диск
Предварительные условия
У вас должна быть учетная запись Azure с активной подпиской. Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.
Azure Cloud Shell
В Azure есть Azure Cloud Shell, интерактивная оболочка среды, с которой можно работать в браузере. Для работы со службами Azure можно использовать Bash или PowerShell с Cloud Shell. Для запуска кода из этой статьи можно использовать предварительно установленные команды Cloud Shell. Ничего дополнительного в локальной среде устанавливать не нужно.
Начало работы с Azure Cloud Shell
| Вариант | Пример и ссылка |
|---|---|
| Нажмите кнопку Попробовать в правом верхнем углу блока кода или команд. При нажатии кнопки Попробовать код или команда не копируется в Cloud Shell автоматически. |
|
| Чтобы открыть Cloud Shell в браузере, перейдите по адресу https://shell.azure.com или нажмите кнопку Запуск Cloud Shell. |
|
| Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу окна портала Azure. |
|
Чтобы использовать Azure Cloud Shell, выполните следующие действия:
Запустите Cloud Shell.
Нажмите кнопку Копировать в блоке кода (или блоке команд), чтобы скопировать код или команду.
Вставьте код или команду в окно сеанса Cloud Shell, нажав клавиши CTRL+SHIFT+V в Windows и Linux или CMD+SHIFT+V в macOS.
Нажмите клавишу ВВОД, чтобы запустить код или команду.
создание виртуальной машины;
Для выполнения упражнений в этом руководстве требуется виртуальная машина. В этом разделе приведены инструкции по ее созданию.
Прежде чем начать, найдите переменную $azRegion, расположенную в первой строке примера кода, и измените значение, чтобы оно соответствовало нужному региону. Например, чтобы указать регион Центральная часть США, введите $azRegion = "Central US". Затем используйте код для развертывания виртуальной машины в новой группе ресурсов. Вам будет предложено ввести имя пользователя и пароль для учетной записи локального администратора виртуальной машины.
$azRegion = "[Your Region]"
$azResourceGroup = "myDemoResourceGroup"
$azVMName = "myDemoVM"
$azDataDiskName = "myDemoDataDisk"
New-AzVm `
-Location $azRegion `
-ResourceGroupName $azResourceGroup `
-Name $azVMName `
-Size "Standard_D2s_v3" `
-VirtualNetworkName "myDemoVnet" `
-SubnetName "myDemoSubnet" `
-SecurityGroupName "myDemoNetworkSecurityGroup" `
-PublicIpAddressName "myDemoPublicIpAddress"
Выходные данные подтвердят успешное создание виртуальной машины.
ResourceGroupName : myDemoResourceGroup
Id : /subscriptions/{GUID}/resourceGroups/myDemoResourceGroup/providers/Microsoft.Compute/virtualMachines/myDemoTestVM
VmId : [{GUID}]
Name : myDemoVM
Type : Microsoft.Compute/virtualMachines
Location : centralus
Tags : {}
HardwareProfile : {VmSize}
NetworkProfile : {NetworkInterfaces}
OSProfile : {ComputerName, AdminUsername, WindowsConfiguration, AllowExtensionOperations, RequireGuestProvisionSignal}
ProvisioningState : Succeeded
StorageProfile : {ImageReference, OsDisk, DataDisks}
FullyQualifiedDomainName : mydemovm-abc123.Central US.cloudapp.azure.com
Виртуальная машина будет подготовлена к работе. Автоматически создаются и подключаются два диска:
- диск операционной системы, на котором размещается операционная система виртуальной машины;
- временный диск, который в основном используется для таких операций, как обработка временных данных.
Добавление диска данных
Рекомендуется по возможности отделять данные приложений и пользователей от данных, связанных с ОС. Если необходимо хранить данные пользователей или приложений на виртуальной машине, обычно создаются и подключаются дополнительные диски данных.
Выполните действия, описанные в этом разделе, чтобы создать, подключить и инициализировать диск данных на виртуальной машине.
Создание диска данных
В этом разделе показано, как создать диск данных.
Прежде чем можно будет создать диск данных, необходимо создать объект диска. В следующем примере кода используется командлет New-AzDiskConfig для настройки объекта диска.
$diskConfig = New-AzDiskConfig ` -Location $azRegion ` -CreateOption Empty ` -DiskSizeGB 128 ` -SkuName "Standard_LRS"После создания объекта диска используйте командлет New-AzDisk для подготовки диска данных к работе.
$dataDisk = New-AzDisk ` -ResourceGroupName $azResourceGroup ` -DiskName $azDataDiskName ` -Disk $diskConfigЧтобы убедиться, что диск создан, можно использовать командлет Get-AzDisk.
Get-AzDisk ` -ResourceGroupName $azResourceGroup ` -DiskName $azDataDiskNameВ этом примере выходные данные подтвердят, что диск был создан. Значения свойств
DiskStateиManagedByподтверждают, что диск еще не подключен.ResourceGroupName : myDemoResourceGroup ManagedBy : ManagedByExtended : {} OsType : DiskSizeGB : 128 DiskSizeBytes : 137438953472 ProvisioningState : Succeeded DiskIOPSReadWrite : 500 DiskMBpsReadWrite : 60 DiskState : Unattached Name : myDemoDataDisk
Подключение диска данных
Диск данных должен быть подключен к виртуальной машине, чтобы она могла получить к нему доступ. Выполните действия, описанные в этом разделе, чтобы создать ссылку на виртуальную машину, подключить диск и обновить конфигурацию виртуальной машины.
Получите виртуальную машину, к которой будете подключать диск данных. В примере кода ниже командлет Get-AzVM используется для создания ссылки на виртуальную машину.
$vm = Get-AzVM ` -ResourceGroupName $azResourceGroup ` -Name $azVMNameЗатем добавьте диск данных в конфигурацию виртуальной машины с помощью командлета Add-AzVMDataDisk.
$vm = Add-AzVMDataDisk ` -VM $vm ` -Name $azDataDiskName ` -CreateOption Attach ` -ManagedDiskId $dataDisk.Id ` -Lun 1Наконец, обновите конфигурацию виртуальной машины с помощью командлета Update-AzVM.
Update-AzVM ` -ResourceGroupName $azResourceGroup ` -VM $vmПосле короткой паузы выходные данные подтвердят успешное подключение.
RequestId IsSuccessStatusCode StatusCode ReasonPhrase --------- ------------------- ---------- ------------ True OK OK
Инициализация диска данных
После подключения диска данных к виртуальной машине необходимо настроить ОС для использования диска. В следующем разделе приведены инструкции по подключению к удаленной виртуальной машине и настройке первого добавленного диска.
Войдите на портал Azure.
Найдите виртуальную машину, к которой подключен диск данных. Создайте подключение по протоколу удаленного рабочего стола (RDP) и войдите от имени локального администратора.
После установки подключения к удаленной виртуальной машине по протоколу RDP выберите в Windows кнопку меню Пуск. В поле поиска введите PowerShell и выберите Windows PowerShell, чтобы открыть окно PowerShell.
В открытом окне PowerShell выполните приведенный ниже скрипт.
Get-Disk | Where PartitionStyle -eq 'raw' | Initialize-Disk -PartitionStyle MBR -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | Format-Volume -FileSystem NTFS -NewFileSystemLabel "myDemoDataDisk" -Confirm:$falseВыходные данные подтвердят успешную инициализацию.
DriveLetter FileSystemLabel FileSystem DriveType HealthStatus OperationalStatus SizeRemaining Size ----------- --------------- ---------- --------- ------------ ----------------- ------------- ---- F myDemoDataDisk NTFS Fixed Healthy OK 127.89 GB 128 GB
Расширение диска
Вы можете расширить диски Azure, чтобы предоставить дополнительные ресурсы хранилища, если на виртуальной машине недостаточно свободного дискового пространства.
Для некоторых сценариев требуется, чтобы данные хранились на диске ОС. Например, может потребоваться поддержка устаревших приложений, устанавливающих компоненты на диск ОС. Кроме того, в некоторых случаях нужно выполнить перенос локального физического компьютера или виртуальной машины с более крупным диском ОС. В таких случаях может потребоваться расширить диск ОС виртуальной машины.
Сжатие существующего диска не поддерживается и может привести к потере данных.
Обновление размера диска
Выполните приведенные ниже действия, чтобы изменить размер диска ОС или диска данных.
Внимание
Если диск соответствует требованиям, описанным в разделе "Развернуть без простоя", можно пропустить шаги 2 и 6.
Сжатие существующего диска не поддерживается и может привести к потере данных.
После расширения дисков необходимо расширить том в операционной системе, чтобы использовать увеличенное пространство диска.
Выберите виртуальную машину, содержащую диск, размер которого вы измените, с помощью командлета
Get-AzVM.$vm = Get-AzVM ` -ResourceGroupName $azResourceGroup ` -Name $azVMNameПрежде чем можно будет изменить размер диска виртуальной машины, виртуальную машину нужно остановить. Остановите ВМ с помощью командлета
Stop-AzVM. Вам будет предложено подтвердить.Внимание
Прежде чем инициировать завершение работы виртуальной машины, обязательно убедитесь, что в ней нет важных ресурсов или данных, которые могут быть утеряны.
Stop-AzVM ` -ResourceGroupName $azResourceGroup ` -Name $azVMNameПосле небольшой паузы выходные данные подтвердят успешную остановку виртуальной машины.
OperationId : abcd1234-ab12-cd34-123456abcdef Status : Succeeded StartTime : 9/13/2021 7:10:23 PM EndTime : 9/13/2021 7:11:12 PM Error :После остановки виртуальной машины получите ссылку на ОС или диск данных, подключенные к виртуальной машине, с помощью командлета
Get-AzDisk.В примере ниже показано, как выбрать диск ОС виртуальной машины.
$disk= Get-AzDisk ` -ResourceGroupName $azResourceGroup ` -DiskName $vm.StorageProfile.OsDisk.NameВ примере ниже показано, как выбрать первый диск данных виртуальной машины.
$disk= Get-AzDisk ` -ResourceGroupName $azResourceGroup ` -DiskName $vm.StorageProfile.DataDisks[0].NameТеперь, когда у вас есть ссылка на диск, установите размер диска равным 250 ГиБ.
Внимание
Новый размер должен быть больше, чем размер существующего диска. Максимально допустимый размер диска ОС — 4095 ГиБ.
$disk.DiskSizeGB = 250Затем обновите образ диска с помощью командлета
Update-AzDisk.Update-AzDisk ` -ResourceGroupName $azResourceGroup ` -Disk $disk -DiskName $disk.NameОбраз диска будет обновлен, а выходные данные подтвердят новый размер диска.
ResourceGroupName : myDemoResourceGroup ManagedBy : /subscriptions/{GUID}/resourceGroups/myDemoResourceGroup/providers/Microsoft.Compute/virtualMachines/myDemoVM Sku : Microsoft.Azure.Management.Compute.Models.DiskSku TimeCreated : 9/135/2021 6:41:10 PM CreationData : Microsoft.Azure.Management.Compute.Models.CreationData DiskSizeGB : 250 DiskSizeBytes : 268435456000 UniqueId : {GUID} ProvisioningState : Succeeded DiskIOPSReadWrite : 500 DiskMBpsReadWrite : 60 DiskState : Reserved Encryption : Microsoft.Azure.Management.Compute.Models.Encryption Id : /subscriptions/{GUID}/resourceGroups/myDemoResourceGroup/providers/Microsoft.Compute/disks/myDemoDataDisk Name : myDemoDataDisk Type : Microsoft.Compute/disks Location : centralusНаконец, перезапустите виртуальную машину с помощью командлета
Start-AzVM.Start-AzVM ` -ResourceGroupName $azResourceGroup ` -Name $azVMNameПосле небольшой паузы выходные данные подтвердят успешный запуск виртуальной машины.
OperationId : abcd1234-ab12-cd34-123456abcdef Status : Succeeded StartTime : 9/13/2021 7:44:54 PM EndTime : 9/13/2021 7:45:15 PM Error :
Расширьте том диска в ОС
Прежде чем можно будет воспользоваться новым размером диска, необходимо расширить том в ОС. Выполните приведенные ниже действия, чтобы расширить том диска и воспользоваться преимуществами нового размера диска.
Войдите на портал Azure.
Найдите виртуальную машину, к которой подключен диск данных. Создайте подключение по протоколу удаленного рабочего стола (RDP) и выполните вход. Если у вас больше нет доступа к учетной записи администратора, создайте объект учетных данных для указанного имени пользователя и пароля с помощью командлета Get-Credential.
После установки подключения к удаленной виртуальной машине по протоколу RDP выберите в Windows кнопку меню Пуск. В поле поиска введите PowerShell и выберите Windows PowerShell, чтобы открыть окно PowerShell.
Откройте PowerShell и выполните следующий скрипт: Измените значение переменной
-DriveLetterсоответствующим образом. Например, чтобы изменить размер раздела на диске F:, используйте$driveLetter = "F".$driveLetter = "[Drive Letter]" $size = (Get-PartitionSupportedSize -DriveLetter $driveLetter) Resize-Partition ` -DriveLetter $driveLetter ` -Size $size.SizeMaxСверните окно RDP и вернитесь к Azure Cloud Shell. С помощью командлета
Get-AzDiskпроверьте, успешно ли был изменен размер диска.Get-AzDisk ` -ResourceGroupName $azResourceGroup | Out-Host -Paging
Обновление диска
Есть несколько способов реагирования на изменения в рабочих нагрузках вашей организации. Например, вы можете обновить стандартный жесткий диск до твердотельного накопителя ценовой категории "Премиум" для удовлетворения возросшего спроса.
Выполните действия, описанные в этом разделе, чтобы обновить управляемый диск с ценовой категории "Стандартный" до ценовой категории "Премиум".
Выберите виртуальную машину, содержащую диск, который вы хотите обновить, с помощью командлета
Get-AzVM.$vm = Get-AzVM ` -ResourceGroupName $azResourceGroup ` -Name $azVMNameПрежде чем можно будет обновить диск виртуальной машины, виртуальную машину нужно остановить. Остановите ВМ с помощью командлета
Stop-AzVM. Вам будет предложено подтвердить.Внимание
Прежде чем инициировать завершение работы виртуальной машины, обязательно убедитесь, что в ней нет важных ресурсов или данных, которые могут быть утеряны.
Stop-AzVM ` -ResourceGroupName $azResourceGroup ` -Name $azVMNameПосле небольшой паузы выходные данные подтвердят успешную остановку виртуальной машины.
OperationId : abcd1234-ab12-cd34-123456abcdef Status : Succeeded StartTime : 9/13/2021 7:10:23 PM EndTime : 9/13/2021 7:11:12 PM Error :После остановки виртуальной машины получите ссылку на ОС или диск данных, подключенные к виртуальной машине, с помощью командлета
Get-AzDisk.В примере ниже показано, как выбрать диск ОС виртуальной машины.
$disk= Get-AzDisk ` -ResourceGroupName $azResourceGroup ` -DiskName $vm.StorageProfile.OsDisk.NameВ примере ниже показано, как выбрать первый диск данных виртуальной машины.
$disk= Get-AzDisk ` -ResourceGroupName $azResourceGroup ` -DiskName $vm.StorageProfile.DataDisks[0].NameТеперь, когда у вас есть ссылка на диск, установите SKU диска Premium_LRS.
$disk.Sku = [Microsoft.Azure.Management.Compute.Models.DiskSku]::new('Premium_LRS')Затем обновите образ диска с помощью командлета
Update-AzDisk.Update-AzDisk ` -ResourceGroupName $azResourceGroup ` -Disk $disk -DiskName $disk.NameОбраз диска обновлён. Используйте следующий пример кода, чтобы проверить, обновлен ли номер SKU диска.
$disk.Sku.NameВыходные данные подтвердят новый номер SKU диска.
Premium_LRSНаконец, перезапустите виртуальную машину с помощью командлета
Start-AzVM.Start-AzVM ` -ResourceGroupName $azResourceGroup ` -Name $azVMNameПосле небольшой паузы выходные данные подтвердят успешный запуск виртуальной машины.
OperationId : abcd1234-ab12-cd34-123456abcdef Status : Succeeded StartTime : 9/13/2021 7:44:54 PM EndTime : 9/13/2021 7:45:15 PM Error :
Отключите диск данных
Диск данных можно отключить от виртуальной машины, если вы хотите подключить его к другой виртуальной машине или если он больше не нужен. По умолчанию отключенные диски не удаляются во избежание непреднамеренной потери данных. За отключенный диск по-прежнему будет начисляться плата, пока он не будет удален.
Сначала с помощью командлета
Get-AzVMвыберите виртуальную машину, к которой подключен диск.$vm = Get-AzVM ` -ResourceGroupName $azResourceGroup ` -Name $azVMNameЗатем отключите диск от виртуальной машины с помощью командлета
Remove-AzVMDataDisk.Remove-AzVMDataDisk ` -VM $vm ` -Name $azDataDiskNameОбновите состояние виртуальной машины с помощью командлета
Update-AzVM, чтобы удалить диск данных.Update-AzVM ` -ResourceGroupName $azResourceGroup ` -VM $vmПосле небольшой паузы выходные данные подтвердят обновление виртуальной машины.
RequestId IsSuccessStatusCode StatusCode ReasonPhrase --------- ------------------- ---------- ------------ True OK OK
Удаление диска данных
При удалении виртуальной машины диски данных, подключенные к ней, остаются в статусе подготовленных к использованию и с них продолжается взимание платы, пока они не будут удалены. Такое поведение по умолчанию помогает предотвратить потери данных, вызванные случайным удалением.
Для удаления неподключенных дисков можно использовать приведенный ниже пример скрипта PowerShell. Извлечение дисков ограничено группой ресурсов myDemoResourceGroup, так как с командлетом -ResourceGroupName используется параметр Get-AzDisk.
# Get all disks in resource group $azResourceGroup
$allDisks = Get-AzDisk -ResourceGroupName $azResourceGroup
# Determine the number of disks in the collection
if($allDisks.Count -ne 0) {
Write-Host "Found $($allDisks.Count) disks."
# Iterate through the collection
foreach ($disk in $allDisks) {
# Use the disk's "ManagedBy" property to determine if it is unattached
if($disk.ManagedBy -eq $null) {
# Confirm that the disk can be deleted
Write-Host "Deleting unattached disk $($disk.Name)."
$confirm = Read-Host "Continue? (Y/N)"
if ($confirm.ToUpper() -ne 'Y') { break }
else {
# Delete the disk
$disk | Remove-AzDisk -Force
Write-Host "Unattached disk $($disk.Name) deleted."
}
}
}
}
Неподключенный диск данных удаляется, что отображается в выходных данных.
Name : abcd1234-ab12-cd34-ef56-abcdef123456
StartTime : 9/13/2021 10:14:05 AM
EndTime : 9/13/2021 10:14:35 AM
Status : Succeeded
Error :
Очистка ресурсов
Если виртуальная машина, группа ресурсов и связанные с ней ресурсы вам больше не нужны, их можно удалить. Для удаления группы ресурсов, созданной, как описано ранее в этом руководстве, можно использовать приведенный ниже пример скрипта PowerShell.
Внимание
Будьте внимательны при удалении группы ресурсов. Чтобы не потерять важные данные, перед удалением группы ресурсов убедитесь, что она не содержит важные ресурсы или данные.
Remove-AzResourceGroup -Name $azResourceGroup
Вас попросят подтвердить. После короткой паузы ответ True подтвердит, что группа ресурсов myDemoResourceGroup удалена.
Confirm
Are you sure you want to remove resource group 'myDemoResourceGroup'
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): Y
True
Следующие шаги
Из этого руководства вы узнали, как:
- создание, подключение и инициализация диска данных;
- проверка состояния диска;
- инициализация диска;
- расширение и обновление диска;
- Отключить и удалить диск
Перейдите к следующему руководству, чтобы узнать об автоматизации настройки виртуальных машин.