Ejercicio: Administración de la configuración de caché con PowerShell
En el ejercicio anterior, se han realizado las tareas siguientes mediante Azure Portal:
- Vea el estado de la caché del disco del sistema operativo.
- Cambio de la configuración de caché del disco del sistema operativo.
- Incorporación de un disco de datos a la máquina virtual.
- Cambio del tipo de almacenamiento en caché en un nuevo disco de datos.
Vamos a practicar estas operaciones mediante Azure PowerShell.
Nota:
Vamos a utilizar Azure PowerShell, pero también podría usar la CLI de Azure, que proporciona una funcionalidad similar como herramienta basada en una consola. Se ejecuta en macOS, Linux y Windows. Si desea obtener más información sobre la CLI de Azure, consulte el módulo Administración de máquinas virtuales con la CLI de Azure.
Usaremos la máquina virtual que creamos en el ejercicio anterior. En las operaciones de este laboratorio se parte de los siguientes supuestos:
- Nuestra máquina virtual existe y se llama fotoshareVM.
- Nuestra máquina virtual está en un grupo de recursos llamado
[nombre del grupo de recursos del espacio aislado] .
Si usó otro conjunto de nombres, reemplace estos valores por los suyos.
Este es el estado actual de nuestros discos de VM del ejercicio anterior:
Hemos usado el portal para establecer el campo Almacenamiento en caché del host de los discos de datos y del sistema operativo. Tenga en cuenta este estado inicial mientras trabajamos sobre los siguientes pasos.
Configuración de algunas variables
En primer lugar, vamos a almacenar algunos nombres de recursos de modo que podamos usarlos más adelante.
A la derecha, en Azure Cloud Shell, ejecute los siguientes comandos de PowerShell:
Nota
Cambie la sesión de Cloud Shell a PowerShell antes de intentar estos comandos, si aún no cambió.
$myRgName = "<rgn>[sandbox resource group name]</rgn>"
$myVMName = "fotoshareVM"
Sugerencia
Tiene que establecer de nuevo estas variables si el tiempo de espera de la sesión de Cloud Shell se agota. Por lo tanto, complete todo este laboratorio en una sola sesión si es posible.
Obtención de información sobre nuestra máquina virtual
Ejecute el comando siguiente para obtener las propiedades de la VM:
$myVM = Get-AzVM -ResourceGroupName $myRgName -VMName $myVmName
Vamos a almacenar la respuesta en nuestra variable
$myVM
. Se puede canalizar la salida al cmdletselect-object
para filtrar la visualización a propiedades específicas:$myVM | select-object -property ResourceGroupName, Name, Type, Location
Debe obtener algo parecido a la siguiente salida:
ResourceGroupName Name Type Location ----------------- ---- ---- -------- <rgn>[sandbox resource group name]</rgn> fotoshareVM Microsoft.Compute/virtualMachines eastus
Visualización del estado de caché del disco del sistema operativo
Se puede comprobar la configuración de almacenamiento en caché mediante el objeto StorageProfile
si se ejecuta el comando siguiente:
$myVM.StorageProfile.OsDisk.Caching
ReadOnly
Vamos a cambiarlo por el predeterminado para un disco del sistema operativo que sea ReadWrite.
Cambio de la configuración de caché del disco del sistema operativo
Podemos establecer el valor del tipo de caché con el mismo objeto
StorageProfile
ejecutando el comando siguiente:$myVM.StorageProfile.OsDisk.Caching = "ReadWrite"
Este comando se ejecuta rápido, lo que debería indicarle que está haciendo algo localmente. El comando solo cambia la propiedad en el objeto
myVM
. Si actualiza la variable$myVM
y la reasigna con el cmdletGet-AzVM
, el valor de almacenamiento en caché no cambia en la VM.Para realizar el cambio en la propia máquina virtual, llame a
Update-AzVM
ejecutando el comando siguiente:Update-AzVM -ResourceGroupName $myRGName -VM $myVM
Tenga en cuenta que esta llamada tarda un tiempo en completarse porque estamos actualizando la máquina virtual real y Azure reinicia la máquina virtual para realizar el cambio.
RequestId IsSuccessStatusCode StatusCode ReasonPhrase --------- ------------------- ---------- ------------ True OK OK
Si vuelve a actualizar la variable
$myVM
mediante la ejecución del siguiente comando, verá el cambio en el objeto. Si observa el disco en el portal, también verá el cambio allí.$myVM = Get-AzVM -ResourceGroupName $myRgName -VMName $myVmName $myVM.StorageProfile.OsDisk.Caching
ReadWrite
Visualización de la información del disco de datos
Para ver qué discos de datos tenemos en nuestra VM, ejecute el siguiente comando:
$myVM.StorageProfile.DataDisks
Name : fotoshareVM-data
DiskSizeGB : 4
Lun : 0
Caching : ReadOnly
CreateOption : Attach
SourceImage :
VirtualHardDisk :
En este momento, solo tenemos un disco de datos. El campo Lun
es importante. Es el Número de unidad lógica. Cuando se agrega otro disco de datos, le proporcionamos un valor de Lun
único.
Incorporación de un nuevo disco de datos a nuestra máquina virtual
Para mayor comodidad, vamos a almacenar el nuevo nombre de disco mediante la ejecución del siguiente comando:
$newDiskName = "fotoshareVM-data2"
Ejecute el siguiente comando
Add-AzVMDataDisk
para definir un nuevo disco de datos vacío de 1 GB:Add-AzVMDataDisk -VM $myVM -Name $newDiskName -LUN 1 -DiskSizeinGB 1 -CreateOption Empty
Obtendrá una respuesta como la siguiente:
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}
Le dimos a este disco un valor
Lun
de1
porque no se toma. Hemos definido el disco que queremos crear, así que es hora de ejecutar el comandoUpdate-AzVM
para realizar el cambio real:Update-AzVM -ResourceGroupName $myRGName -VM $myVM
Echemos un vistazo de nuevo a la información del disco de datos mediante la ejecución del siguiente comando:
$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 :
Ahora tenemos dos discos. Nuestro nuevo disco tiene un Lun
de 1
, y el valor predeterminado de Caching
es None
. Vamos a cambiar ese valor.
Cambio de la configuración de caché del nuevo disco de datos
Las propiedades de un disco de datos de máquina virtual pueden modificarse mediante la ejecución del comando
Set-AzVMDataDisk
, del siguiente modo:Set-AzVMDataDisk -VM $myVM -Lun "1" -Caching ReadWrite
Como siempre, confirme los cambios mediante la ejecución del comando
Update-AzVM
:Update-AzVM -ResourceGroupName $myRGName -VM $myVM
Esta es una vista del portal de lo que hemos conseguido en este ejercicio. Nuestra VM tiene ahora dos discos de datos, y ajustamos toda la configuración del Almacenamiento en caché del host. Hemos hecho todo esto con tan solo unos pocos comandos con la eficacia de Azure PowerShell.