Compartir a través de


Administración de discos en espacios de almacenamiento independientes en Windows Server hospedados en Azure

En este artículo se proporciona una guía detallada sobre cómo identificar el número de unidad lógica (LUN) de un disco físico presentado desde Azure for Storage Spaces en Windows Server. Esto es esencial al quitar o reemplazar un disco físico del bloque de almacenamiento. Si sigue estas instrucciones, puede administrar eficazmente las configuraciones de los espacios de almacenamiento sin poner en peligro la integridad de los datos ni la disponibilidad del servicio.

Importante

Para completar los procedimientos siguientes, asegúrese de que tiene privilegios de administrador en Windows PowerShell y los permisos necesarios para administrar discos en Microsoft Azure Portal.

Identificar el LUN desde un pool de almacenamiento y encontrarlo en el portal de Azure

Para identificar el LUN de un disco físico, siga estos pasos:

  1. Para recuperar información sobre los discos físicos de un grupo de almacenamiento especificado, ejecute el siguiente cmdlet de PowerShell como administrador:

    Get-StoragePool -FriendlyName "<StoragePoolName>" | Get-PhysicalDisk | Select-Object FriendlyName, UniqueId, HealthStatus, Size, PhysicalLocation, DeviceID, CannotPoolReason, Usage | Format-List
    

    Este es un ejemplo de salida:

    Friendlyname     : Msft Virtual Disk
    UniqueId         : <UniqueID>
    HealthStatus     : Healthy
    Size             : 37580963840
    PhysicalLocation : Integrated : Adapter 1 : Port 0 : Target 0 : LUN 2
    DeviceID         : 4
    CannotPoolReason : In a Pool
    Usage            : Auto-Select
    

    Nota:

    Desglose del cmdlet:

    • FriendlyName: nombre fácil de usar del disco físico.
    • UniqueId: un identificador único para el disco.
    • PhysicalLocation: especifica la ubicación física del disco en el sistema. Adapter 0 es para el disco del sistema operativo y los discos temporales, y Adapter 1 es para los discos de datos.
    • Usage: muestra cómo se usa actualmente el disco (por ejemplo, para grupos de almacenamiento y discos virtuales).
  2. Para recuperar el identificador único del disco virtual en el grupo de almacenamiento, ejecute los siguientes cmdlets:

    Get-StorageNode
    

    Este es un ejemplo de salida:

    Name                          Manufacturer            Model             OperationalStatus 
    ---                           ------------            -----             ------------                     
    Node1-2019-pool.fabrikam.com  Microsoft Corporation   Virtual Machine   Up
    Node1-2019-pool.fabrikam.com  Microsoft Corporation   Virtual Machine   Up
    Node2-2019-pool.fabrikam.com  Microsoft Corporation   Virtual Machine   Up
    
    Get-StorageNode -name "<StorageNodeName>" | get-virtualdisk | ft friendlyname, uniqueid, allocatedsize, footprintonpool
    

    Este es un ejemplo de salida:

    friendlyname uniqueid    allocatedsize footprintonpool
    ------------ --------    ------------- ---------------
    Virtualdisk  <UniqueID>  1073741824      1073741824
    

    Nota:

    Los números que se muestran en los allocatedsize y footprintonpool están en bytes.

  3. Para localizar el LUN de los discos de datos en Azure Portal, vaya a Azure Portal, seleccione la máquina virtual y seleccione Configuración>Discos. Anote el LUN y compárelo con la información que se recuperó del paso 1.

    Captura de pantalla de la ventana StorageSpacesVM que muestra la información de discos con LUN.

Eliminación de un disco físico del grupo de almacenamiento

  1. Para retirar un disco físico del grupo de almacenamiento, ejecute el cmdlet Set-PhysicalDisk mediante el identificador único del paso 1 de la sección anterior:

    Set-PhysicalDisk -UniqueId <UniqueID> -Usage Retired
    

    Este es un ejemplo de salida cuando se retira el disco físico:

    PS C:\Users\Administrator1> Set-PhysicalDisk -UniqueId <UniqueID> -Usage Retired
    PS C:\Users\Administrator1> Get-PhysicalDisk
    
    Number FriendlyName      SerialNumber MediaType   CanPool OperationalStatus HealthStatus Usage         Size
    ------ ------------      ------------ ---------   ------- ----------------- ------------ -----         ----
    5      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select  40 GB
    0      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select 127 GB
    3      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select  40 GB
    2      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select  32 GB
    1      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select  16 GB
    4      Msft Virtual Disk              Unspecified False   OK                Healthy      Retired      35 GB
    
  2. Para identificar los discos físicos asociados al disco virtual, ejecute el siguiente cmdlet mediante el identificador único del paso 2 de la sección anterior:

    Get-VirtualDisk -UniqueId <UniqueID> | Get-PhysicalDisk
    

    Este es un ejemplo de salida:

    DeviceId FriendlyName      SerialNumber MediaType   CanPool OperationalStatus HealthStatus Usage        Size
    -------- ------------      ------------ ---------   ------- ----------------- ------------ -----        ----
    1        Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select 40 GB
    2        Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select 35 GB
    
  3. Para iniciar el trabajo de almacenamiento obligando a los datos a moverse desde el disco físico retirado, ejecute el siguiente cmdlet mediante el identificador único del paso anterior:

    Get-VirtualDisk -UniqueID <UniqueID> | Repair-VirtualDisk
    
  4. Compruebe el estado del trabajo de almacenamiento mediante el siguiente cmdlet y espere a que se complete el trabajo de almacenamiento.

    Get-StorageJob
    
  5. Confirme que no existe ninguna superficie de disco virtual en el disco físico retirado mediante la ejecución del siguiente cmdlet:

    Get-StorageNode -Name "<StorageNodeName>" | Get-PhysicalDisk -PhysicallyConnected | Select FriendlyName, CanPool, UniqueID, @{Name="Size (GB)"; Expression={[math]::Round($_.Size / 1GB, 2)}}, PhysicalLocation, Usage, VirtualDiskFootprint
    

    Este es un ejemplo de la salida esperada:

    FriendlyName         : Msft Virtual Disk
    CanPool              : False
    UniqueID             : <UniqueID>
    Size (GB)            : 35
    PhysicalLocation     : Integrated : Adapter 1 : Port 0 : Target 0 : LUN 2
    Usage                : Retired
    VirtualDiskFootprint : 0
    

    Nota:

    Desglose del cmdlet:

    • FriendlyName: nombre fácil de usar del disco físico.

    • CanPool: indica si el disco se puede agregar a un grupo de almacenamiento.

    • UniqueID: un identificador único para el disco.

    • Propiedad personalizada: Size (GB)

      • Código: @{Name="Size (GB)"; Expression={[math]::Round($_.Size / 1GB, 2)}}
      • Explicación:
        • @{...}: tabla hash que define una propiedad calculada.
        • Name="Size (GB)": especifica el nombre de la nueva propiedad (en este caso, "Size (GB)").
        • Expression={...}: define cómo se calcula el valor de propiedad:
          • $_.Size: hace referencia a la propiedad size del disco físico actual (el valor está en bytes).
          • / 1GB: convierte el tamaño de bytes a gigabytes (1 GB es una constante en PowerShell igual a 1024 * 1024 * 1024 * 1024 bytes).
          • [math]::Round(..., 2): redondea el resultado a 2 posiciones decimales para mejorar la legibilidad.
    • PhysicalLocation: especifica la ubicación física del disco en el sistema.

    • Usage: muestra cómo se usa actualmente el disco (por ejemplo, para grupos de almacenamiento y discos virtuales).

    • VirtualDiskFootprint: indica la cantidad de capacidad del disco físico que usan los discos virtuales.

  6. Quite el disco físico del servidor ejecutando los siguientes cmdlets con el identificador único del paso 1.

    $PDToRemove = Get-PhysicalDisk -UniqueID <UniqueID>
    Remove-PhysicalDisk -PhysicalDisks $PDToRemove -StoragePoolFriendlyName "<StoragePoolName>"
    
  7. Vuelva a confirmar la CanPool propiedad del disco físico que debe mostrarse como True después de quitar el disco físico del bloque de almacenamiento. Ejecute el Get-PhysicalDisk cmdlet :

    PS C:\Users\Administrator1> Get-PhysicalDisk
    Number FriendlyName      SerialNumber MediaType   CanPool OperationalStatus HealthStatus Usage         Size
    ------ ------------      ------------ ---------   ------- ----------------- ------------ -----         ----
    5      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select  40 GB
    0      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select 127 GB
    3      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select  40 GB
    2      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select  32 GB
    1      Msft Virtual Disk              Unspecified False   OK                Healthy      Auto-Select  16 GB
    4      Msft Virtual Disk              Unspecified True    OK                Healthy      Auto-Select  35 GB 
    
  8. Una vez que el disco se quita del grupo de almacenamiento, debe estar disponible en el grupo primordial.

    Captura de pantalla del grupo de almacenamiento que muestra que el disco está disponible en el grupo primordial.

  9. Después de confirmar la eliminación con el Get-PhysicalDisk cmdlet en PowerShell, desasocie el disco físico en Azure Portal si es necesario.

  10. Compruebe el estado del bloque de almacenamiento y el disco virtual mediante la ejecución de los Get-StoragePool cmdlets y Get-VirtualDisk .