Ćwiczenie — zarządzanie ustawieniami pamięci podręcznej przy użyciu programu PowerShell
W poprzednim ćwiczeniu wykonaliśmy następujące zadania przy użyciu witryny Azure Portal:
- Wyświetl stan pamięci podręcznej dysku systemu operacyjnego.
- Zmień ustawienia pamięci podręcznej dysku systemu operacyjnego.
- Dodaj dysk danych do maszyny wirtualnej.
- Zmień typ buforowania na nowym dysku danych.
Teraz przećwiczymy te operacje przy użyciu programu Azure PowerShell.
Uwaga
Użyjemy programu Azure PowerShell, ale możesz także użyć interfejsu wiersza polecenia platformy Azure, który zapewnia podobne funkcje jak narzędzie oparte na konsoli. Działa on w systemach macOS, Linux i Windows. Jeśli chcesz dowiedzieć się więcej na temat interfejsu wiersza polecenia platformy Azure, zapoznaj się z modułem Zarządzanie maszynami wirtualnymi za pomocą interfejsu wiersza polecenia platformy Azure.
Użyjemy maszyny wirtualnej utworzonej w poprzednim ćwiczeniu. W przypadku operacji w tym laboratorium założono, że:
- Nasza maszyna wirtualna istnieje i jest nazywana fotoshareVM.
- Nasza maszyna wirtualna znajduje się w grupie zasobów o nazwie [nazwa grupy zasobów piaskownicy]
.
Jeśli użyto innego zestawu nazw, zastąp te wartości swoimi.
Poniżej przedstawiono bieżący stan dysków maszyny wirtualnej z ostatniego ćwiczenia:
Użyliśmy portalu do ustawienia pola Buforowanie hosta zarówno dla systemu operacyjnego, jak i dysków danych. Pamiętaj o tym stanie początkowym, gdy będziemy przechodzić przez następujące kroki.
Konfigurowanie zmiennych
Najpierw przechowamy nazwy zasobów, aby umożliwić ich użycie w dalszej części.
W usłudze Azure Cloud Shell po prawej stronie uruchom następujące polecenia programu PowerShell:
Uwaga
Jeśli jeszcze tego nie zrobiono, przełącz sesję usługi Cloud Shell na program PowerShell przed podjęciem próby uruchomienia tych poleceń.
$myRgName = "<rgn>[sandbox resource group name]</rgn>"
$myVMName = "fotoshareVM"
Napiwek
Należy ponownie ustawić te zmienne, jeśli limit czasu sesji usługi Cloud Shell, więc jeśli to możliwe, przepracuj to całe laboratorium w jednej sesji.
Uzyskiwanie informacji o maszynie wirtualnej
Uruchom następujące polecenie, aby uzyskać właściwości maszyny wirtualnej:
$myVM = Get-AzVM -ResourceGroupName $myRgName -VMName $myVmName
Zapiszmy odpowiedź w naszej
$myVM
zmiennej. Możemy przekazać dane wyjściowe do polecenia cmdletselect-object
, aby odfiltrować wyświetlane dane do konkretnych właściwości:$myVM | select-object -property ResourceGroupName, Name, Type, Location
Powinny zostać wyświetlone dane wyjściowe podobne do następujących:
ResourceGroupName Name Type Location ----------------- ---- ---- -------- <rgn>[sandbox resource group name]</rgn> fotoshareVM Microsoft.Compute/virtualMachines eastus
Wyświetlanie stanu pamięci podręcznej dysku systemu operacyjnego
Możemy sprawdzić ustawienie buforowania za pośrednictwem obiektu, StorageProfile
uruchamiając następujące polecenie:
$myVM.StorageProfile.OsDisk.Caching
ReadOnly
Zmieńmy ją z powrotem na wartość domyślną dla dysku systemu operacyjnego, czyli ReadWrite.
Zmiana ustawień pamięci podręcznej dysku systemu operacyjnego
Możemy ustawić wartość typu pamięci podręcznej przy użyciu tego samego
StorageProfile
obiektu, uruchamiając następujące polecenie:$myVM.StorageProfile.OsDisk.Caching = "ReadWrite"
To polecenie jest uruchamiane szybko, co sugeruje, że wykonuje operacje lokalne. Polecenie zmienia tylko właściwość obiektu
myVM
. Jeśli odświeżysz zmienną$myVM
, ponownie przypisując ją przy użyciuGet-AzVM
polecenia cmdlet, wartość buforowania nie zmieni się na maszynie wirtualnej.Aby wprowadzić zmianę na samej maszynie wirtualnej, wywołaj polecenie
Update-AzVM
, uruchamiając następujące polecenie:Update-AzVM -ResourceGroupName $myRGName -VM $myVM
Zwróć uwagę, że wykonanie tego wywołania zajmuje trochę czasu, ponieważ aktualizujemy rzeczywistą maszynę wirtualną, a platforma Azure ponownie uruchamia maszynę wirtualną, aby wprowadzić zmianę.
RequestId IsSuccessStatusCode StatusCode ReasonPhrase --------- ------------------- ---------- ------------ True OK OK
Jeśli ponownie odświeżysz zmienną
$myVM
, uruchamiając następujące polecenie, zobaczysz zmianę obiektu. Jeśli spojrzysz na dysk w portalu, zobaczysz tam również zmianę.$myVM = Get-AzVM -ResourceGroupName $myRgName -VMName $myVmName $myVM.StorageProfile.OsDisk.Caching
ReadWrite
Wyświetlanie informacji o dysku danych
Aby zobaczyć, jakie dyski danych istnieją na maszynie wirtualnej, uruchom następujące polecenie:
$myVM.StorageProfile.DataDisks
Name : fotoshareVM-data
DiskSizeGB : 4
Lun : 0
Caching : ReadOnly
CreateOption : Attach
SourceImage :
VirtualHardDisk :
W tej chwili mamy tylko jeden dysk danych. Pole Lun
jest ważne. Jest to unikatowy numer jednostki logicznej (Logical Unit Number). Gdy dodamy kolejny dysk danych, nadamy mu unikatową Lun
wartość.
Dodawanie nowego dysku danych do maszyny wirtualnej
Dla wygody zapiszmy naszą nową nazwę dysku, uruchamiając następujące polecenie:
$newDiskName = "fotoshareVM-data2"
Uruchom następujące
Add-AzVMDataDisk
polecenie, aby zdefiniować nowy pusty dysk danych o rozmiarze 1 GB:Add-AzVMDataDisk -VM $myVM -Name $newDiskName -LUN 1 -DiskSizeinGB 1 -CreateOption Empty
Otrzymasz odpowiedź, na przykład:
ResourceGroupName : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx Id : /subscriptions/xxxxxxxx-xxxx-xxxx-xxx-xxxxxxx/resourceGroups/<rgn>[sandbox resource group name]</rgn>/providers/Microsoft.Compute/virtualMachines/fotoshareVM VmId : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx Name : fotoshareVM Type : Microsoft.Compute/virtualMachines Location : eastus Tags : {} DiagnosticsProfile : {BootDiagnostics} HardwareProfile : {VmSize} NetworkProfile : {NetworkInterfaces} OSProfile : {ComputerName, AdminUsername, WindowsConfiguration, Secrets} ProvisioningState : Succeeded StorageProfile : {ImageReference, OsDisk, DataDisks}
Nadaliśmy temu dyskowi
Lun
wartość ,1
ponieważ nie jest zajęta. Zdefiniowaliśmy dysk, który chcemy utworzyć, więc nadszedł czas, aby uruchomićUpdate-AzVM
polecenie , aby wprowadzić rzeczywistą zmianę:Update-AzVM -ResourceGroupName $myRGName -VM $myVM
Ponownie przyjrzyjmy się naszym infom o dysku danych, uruchamiając następujące polecenie:
$myVM.StorageProfile.DataDisks
Name : fotoshareVM-data DiskSizeGB : 4 Lun : 0 Caching : ReadOnly CreateOption : Attach SourceImage : VirtualHardDisk : Name : fotoshareVM-data2 DiskSizeGB : 1 Lun : 1 Caching : None CreateOption : Empty SourceImage : VirtualHardDisk :
Teraz mamy dwa dyski. Nasz nowy dysk ma parametr Lun
o wartości 1
, a wartość domyślna dla parametru Caching
to None
. Zmieńmy tę wartość.
Zmiana ustawień pamięci podręcznej nowego dysku danych
Możemy zmodyfikować właściwości dysku danych maszyny wirtualnej, uruchamiając
Set-AzVMDataDisk
polecenie w następujący sposób:Set-AzVMDataDisk -VM $myVM -Lun "1" -Caching ReadWrite
Jak zawsze zatwierdź zmiany, uruchamiając
Update-AzVM
polecenie :Update-AzVM -ResourceGroupName $myRGName -VM $myVM
Oto widok z portalu tego, co wykonaliśmy w tym ćwiczeniu. Nasza maszyna wirtualna ma teraz dwa dyski danych i dostosowaliśmy wszystkie ustawienia buforowania hosta. Zrobiliśmy to wszystko za pomocą zaledwie kilku poleceń korzystających z możliwości programu Azure PowerShell.