Aumentar el tamaño de un disco persistente


Puede aumentar el tamaño de su disco persistente cuando la instancia de su máquina virtual (VM) requiera espacio de almacenamiento adicional o mayores límites de rendimiento . Puede aumentar el tamaño del disco en cualquier momento, independientemente de si el disco está conectado a una máquina virtual en ejecución.

Esta página explica cómo aumentar el tamaño de un disco persistente. Para aumentar el tamaño de un volumen de Google Cloud Hyperdisk, consulte Modificar la configuración de un Hyperdisk .

Sólo puede aumentar, y no disminuir, el tamaño de un disco. Para disminuir el tamaño del disco, debe crear un disco nuevo con un tamaño más pequeño. Hasta que elimine el disco original, más grande, se le cobrarán ambos discos.

Cuando crea una imagen personalizada de Linux o una imagen personalizada de Windows , debe aumentar manualmente el tamaño de los discos de arranque y de no arranque. Si estás usando una imagen pública , Compute Engine cambia automáticamente el tamaño de los discos de arranque.

Aumentar el tamaño de un disco no elimina ni modifica los datos del disco, pero como práctica recomendada, antes de realizar cambios en el sistema de archivos o las particiones, siempre haga una copia de seguridad de su disco creando una instantánea .

Compute Engine administra el hardware detrás de los discos persistentes, para que puedas agregar y cambiar el tamaño de tus discos sin tener que lidiar con la creación de bandas ni la redundancia.

Antes de comenzar

  • Si aún no lo has hecho, configura la autenticación. La autenticación es el proceso mediante el cual se verifica su identidad para acceder a Google Cloud servicios y API. Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    2. Set a default region and zone.
    3. Terraform

      Para usar las muestras de Terraform de esta página en un entorno de desarrollo local, instala e inicializa gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.

      1. Install the Google Cloud CLI.
      2. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      3. To initialize the gcloud CLI, run the following command:

        gcloud init
      4. If you're using a local shell, then create local authentication credentials for your user account:

        gcloud auth application-default login

        You don't need to do this if you're using Cloud Shell.

        If an authentication error is returned, confirm that you have configured the gcloud CLI to use Workforce Identity Federation.

      Para obtener más información, consulta Set up authentication for a local development environment.

      REST

      Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.

        After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      Para obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud .

Roles y permisos necesarios

Para obtener el permiso que necesita para cambiar el tamaño de un disco persistente, solicite a su administrador que le otorgue las siguientes funciones de IAM en el proyecto:

Para obtener más información sobre cómo otorgar roles, consulte Administrar el acceso a proyectos, carpetas y organizaciones .

Esta función predefinida contiene el permiso compute.disks.update , que es necesario para cambiar el tamaño de un disco persistente.

Es posible que también pueda obtener este permiso con roles personalizados u otros roles predefinidos .

Aumentar el tamaño de un disco.

Para aumentar el tamaño de un disco de arranque o de no arranque, utilice los siguientes procedimientos:

Consola

  1. En el Google Cloud consola, vaya a la página Discos .

    Ir a discos

  2. En la lista de discos persistentes de su proyecto, haga clic en el nombre del disco cuyo tamaño desea cambiar.

  3. En la página de detalles del disco, haga clic en Editar . Es posible que tengas que hacer clic en el menú Más acciones y luego Editar .

  4. En el campo Tamaño , ingrese el nuevo tamaño para su disco. Los discos con tablas de particiones MBR solo pueden cambiar de tamaño hasta 2 TB.

  5. Haga clic en Guardar para aplicar los cambios al disco.

El nuevo tamaño del disco se muestra en la lista de discos.

nube de gcloud

Usa el comando gcloud compute disks resize y especifica la marca --size con el nuevo tamaño del disco, en gibibytes (GiB).

gcloud compute disks resize DISK_NAME \
    --size DISK_SIZE \
    --zone=ZONE

Reemplace lo siguiente:

  • DISK_NAME : el nombre del disco cuyo tamaño está cambiando.
  • DISK_SIZE : el nuevo tamaño, en gibibytes (GiB), para el disco. Los discos con tablas de particiones MBR solo pueden cambiar de tamaño hasta 2 TB.
  • ZONE : para disco persistente zonal, especifique la zona donde se encuentra el disco.

    Para Disco persistente regional, utilice en su lugar el indicador --region= REGION y especifique la región donde se encuentra el disco regional.

Terraformar

Elija una de las siguientes opciones para cambiar el tamaño de los discos zonales o del disco persistente regional:

disco zonal

Para cambiar el tamaño de un disco persistente, puede utilizar el recurso google_compute_disk y utilizar el parámetro size .

# Using pd-standard because it's the default for Compute Engine

resource "google_compute_disk" "default" {
  name = "disk-data"
  type = "pd-standard"
  zone = "us-west1-a"
  size = "5"
}

Si incluye el parámetro size junto con el parámetro image o snapshot , el valor size debe ser igual o mayor que el tamaño de la imagen o instantánea.

Si omite los parámetros image e snapshot , puede establecer el parámetro size en un tamaño menor que el tamaño del disco existente. Si hace esto, Terraform destruye el disco y crea un nuevo disco persistente vacío.

Disco persistente regional

Para cambiar el tamaño de un disco persistente regional, puede utilizar el recurso google_compute_region_disk y utilizar el parámetro size .

resource "google_compute_region_disk" "regiondisk" {
  name                      = "region-disk-name"
  snapshot                  = google_compute_snapshot.snapdisk.id
  type                      = "pd-ssd"
  region                    = "us-central1"
  physical_block_size_bytes = 4096
  size                      = 11

  replica_zones = ["us-central1-a", "us-central1-f"]
}

Si incluye el parámetro size junto con el parámetro image o snapshot , el valor size debe ser igual o mayor que el tamaño de la imagen o instantánea.

Si omite los parámetros image e snapshot , puede establecer el parámetro size en un tamaño menor que el tamaño del disco existente. Si hace esto, Terraform destruye el disco y crea un nuevo disco persistente regional vacío.

DESCANSAR

Para cambiar el tamaño de un disco persistente, cree una solicitud POST para el método compute.disks.resize .

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/resize
{
  "sizeGb": "DISK_SIZE"
}

Para cambiar el tamaño de un disco persistente regional, cree una solicitud POST para el método compute.regionDisks.resize .

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/disks/DISK_NAME/resize
{
   "sizeGb": "DISK_SIZE"
}

Reemplace lo siguiente:

  • PROJECT_ID : su ID de proyecto.
  • ZONE : Para disco persistente zonal: la zona donde se encuentra el disco.
  • REGION : Para disco persistente regional: la región donde se encuentra el disco.
  • DISK_NAME : el nombre del disco a cambiar de tamaño.
  • DISK_SIZE : el nuevo tamaño, en gibibytes (GiB), para el disco. Los discos con tablas de particiones MBR solo pueden cambiar de tamaño hasta 2 TB.

Cambiar el tamaño del sistema de archivos y las particiones

Después de aumentar el tamaño de un disco, es posible que necesites cambiar el tamaño de su sistema de archivos y sus particiones. La siguiente lista muestra información adicional para discos de arranque y no de arranque:

  • Disco de arranque : si está utilizando una imagen personalizada de Linux o una imagen personalizada de Windows , debe cambiar manualmente el tamaño de la partición raíz y el sistema de archivos. Para las máquinas virtuales con imágenes públicas , Compute Engine cambia automáticamente el tamaño de la partición raíz y el sistema de archivos después de aumentar el tamaño del disco de arranque y reiniciar la máquina virtual.

  • Disco que no es de arranque : después de aumentar el tamaño del disco, debe extender el sistema de archivos en el disco para usar el espacio agregado.

El siguiente ejemplo muestra cómo cambiar manualmente el tamaño de la partición raíz y el sistema de archivos de un disco de arranque, y cómo cambiar manualmente el tamaño del sistema de archivos de un disco de datos que no es de arranque y sin tabla de particiones. Este ejemplo supone que el disco está conectado mediante SCSI y fue formateado y montado previamente.

Si su disco persistente se conectó mediante NVMe, consulte Cambiar el tamaño del sistema de archivos y las particiones, por ejemplo, la salida para discos conectados a NVMe.

Máquinas virtuales Linux

  1. En el Google Cloud consola, vaya a la página de instancias de VM .

    Ir a instancias de VM

  2. Junto a la instancia que tiene el nuevo disco adjunto, haga clic en el botón SSH . El navegador abre una conexión de terminal a la instancia.

  3. Utilice los comandos df y lsblk para enumerar el tamaño del sistema de archivos y encontrar los nombres de los dispositivos para sus discos.

    $ sudo df -Th
    
    Filesystem      Type     Size   Used  Avail  Use%  Mounted on
    /dev/sda1       ext4     9.7G   1.2G   8.5G   12%  /
    /dev/sdb        ext4     250G    60M   250G    1%  /mnt/disks/disk-1
    
    
    $ sudo lsblk
    
    NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda       8:0    0   20G  0 disk
    └─sda1    8:1    0   10G  0 part /
    sdb       8:16   0  500G  0 disk /mnt/disks/disk-1
    
    

    Este ejemplo incluye los siguientes discos:

    • Disco de arranque : la partición /dev/sda1 está en un disco de arranque cuyo tamaño se ha redimensionado a 20 GB. La tabla de particiones y el sistema de archivos proporcionan sólo 9,7 GB al sistema operativo.
    • Disco de datos que no es de arranque : el disco de datos que no es de arranque /dev/sdb no tiene tabla de particiones, pero el sistema de archivos de ese disco proporciona solo 250 GB al sistema operativo. El directorio de montaje para este disco es /mnt/disks/disk-1 .

    El comando df muestra que la partición /dev/sda1 está montada como el sistema de archivos raíz y el disco /dev/sdb está montado como un disco de datos que no es de arranque en /mnt/disks/disk-1 . Tome nota de la columna Tipo , que indica si su disco utiliza un sistema de archivos ext4 o xfs .

  4. Verifique el tipo de partición:

    sudo parted -l
    
    Alternativamente, para ver información solo de un disco específico:
    sudo parted -l /dev/DEVICE_NAME
    
    Busque el campo Tabla de particiones . Si el valor es msdos , entonces el disco tiene un tipo de partición MBR. Esto significa que el tamaño máximo de dicho disco es de 2 TB.

  5. Cambie el tamaño de la partición raíz y el sistema de archivos en el disco de arranque. Este ejemplo supone que la imagen de la máquina virtual no admite la partición raíz automática ni el cambio de tamaño del sistema de archivos.

    1. Cambie el tamaño de la partición raíz usando parted . Por ejemplo, los siguientes comandos expanden la partición 1 de /dev/sda al tamaño máximo posible:

      1. Abra parted en la partición /dev/sda :

        sudo parted /dev/sda
      2. Cuando se le solicite (parted) , ingrese:

        resizepart
      3. ¿En el Partition number? mensaje, ingrese:

        1
      4. En la Warning: Partition /dev/sda1 is being used. Are you sure you want to continue? mensaje, ingrese:

        Yes
      5. ¿Al End? mensaje, ingrese

        100%
      6. Cuando se le solicite (parted) , ingrese:

        quit
    2. Lea la nueva tabla de particiones usando partprobe .

      sudo partprobe /dev/sda
      
    3. Ampliar el sistema de archivos:

      • Si está utilizando ext4 , utilice el comando resize2fs :

        sudo resize2fs /dev/sda1
        
      • Si está utilizando xfs , utilice el comando xfs_growfs :

        sudo xfs_growfs -d /
        
      • Si está utilizando btrfs , utilice el comando btrfs :

        sudo btrfs filesystem resize max /
        
  6. Cambie el tamaño del sistema de archivos en el disco de datos que no es de arranque.

    • Si está utilizando ext4 , utilice el comando resize2fs para ampliar el sistema de archivos:

      sudo resize2fs /dev/DEVICE_NAME
      

      Reemplace DEVICE_NAME con el nombre del dispositivo para el disco. En este ejemplo, el nombre del dispositivo es /dev/sdb .

    • Si está utilizando xfs , utilice el comando xfs_growfs para ampliar el sistema de archivos:

      sudo xfs_growfs MOUNT_DIR
      

      Reemplace MOUNT_DIR con el punto de montaje del dispositivo. Puede encontrar el punto de montaje enumerado en la columna MOUNTPOINT en la salida del comando lsblk .

    • Si está utilizando btrfs , utilice el comando btrfs para ampliar el sistema de archivos:

      sudo btrfs filesystem resize max MOUNT_DIR
      

      Reemplace MOUNT_DIR con el punto de montaje del dispositivo. Puede encontrar el punto de montaje enumerado en la columna MOUNTPOINT en la salida del comando lsblk .

  7. Utilice el comando df para verificar que el sistema de archivos esté extendido. Por ejemplo:

    df -h /dev/sdb
    
    Filesystem  Size  Used  Avail  Use%  Mounted on
    /dev/sdb    493G   70M  492G     1%  /mnt/disks/disk-1
    

Máquinas virtuales de Windows

Utilice la utilidad Administración de discos de Windows para cambiar el tamaño de las particiones en una instancia de Windows.

  1. En el Google Cloud consola, vaya a la página de instancias de VM .

    Ir a instancias de VM

  2. Junto a la instancia que tiene el disco redimensionado, haga clic en el botón RDP . El navegador abre una conexión RDP a la instancia.

  3. Haga clic derecho en el botón Inicio de Windows y seleccione Administración de discos para abrir la herramienta Administración de discos.

    Seleccionar la herramienta Administrador de discos de Windows en el menú contextual en el botón Inicio de Windows.

  4. Muestre el tipo de partición de los discos ejecutándolos en Powershell:

    Get-Disk
    
    En la columna Estilo de partición , si el valor es MBR , entonces el disco tiene un tipo de partición MBR. Esto significa que el tamaño máximo de dicho disco sería de 2 TB .

  5. Actualice la herramienta de administración de discos para que reconozca el espacio adicional en su disco persistente zonal. En la parte superior de la ventana Administración de discos, haga clic en Acción y seleccione Actualizar .

    Al hacer clic en el menú Acción y seleccionar Actualizar para actualizar la información del disco persistente zonal en la herramienta de administración de discos.

  6. En el disco cuyo tamaño cambió, haga clic derecho en la partición formateada y seleccione Extender volumen .

    Haga clic derecho en la parte formateada del disco y seleccione la opción Extender volumen.

  7. Siga las instrucciones del Asistente para ampliar volumen para ampliar su partición existente e incluir espacio adicional en el disco. Si la partición existente está formateada en NTFS, el tamaño máximo de la partición está limitado por la configuración del tamaño del clúster .

  8. Después de completar el asistente y el volumen termine de formatearse, verifique la columna Status en la lista de discos conectados para asegurarse de que el nuevo disco tenga un estado Healthy .

    Al ver la lista de discos reconocidos por Windows, verifique que la instancia esté en línea con un estado saludable.

No necesita reiniciar su VM después de completar este proceso. Ahora puede utilizar el espacio en disco agregado para almacenar datos.

¿Qué sigue?