Puedes aumentar el tamaño de tu disco persistente cuando la instancia de máquina virtual (VM) requiere espacio de almacenamiento adicional o límites de rendimiento aumentados. Puedes aumentar el tamaño del disco en cualquier momento, ya sea que el disco esté conectado o no a una VM en ejecución.
Solo puedes aumentar y no disminuir el tamaño de un disco. Para disminuir el tamaño del disco, debes crear un disco nuevo con un tamaño menor. Se te cobrará por los discos hasta que se borre el disco original y más grande.
Cuando creas una imagen personalizada de Linux o una imagen personalizada de Windows, debes aumentar de forma manual el tamaño del disco de arranque y de los que no son de arranque. Si usas una imagen pública, Compute Engine cambia el tamaño de los discos de arranque de forma automática.
Cuando se aumenta el tamaño de un disco, no se borran ni modifican los datos de este, pero la práctica recomendada es siempre crear una instantánea para generar una copia de seguridad del disco antes de realizar cambios en el sistema de archivos o las particiones.
Compute Engine administra el hardware detrás de los discos persistentes zonales para que puedas agregar discos y cambiar su tamaño discos sin tener que controlar la fragmentación ni la redundancia.
Aumenta el tamaño de un disco
Para aumentar el tamaño de un disco de arranque o que no sea de arranque, usa el siguiente procedimiento:
Console
En la consola de Google Cloud, ve a la página Discos.
En la lista de discos persistentes de tu proyecto, haz clic en el nombre del disco al que deseas cambiar el tamaño.
En la página de detalles del disco, haz clic en Editar.
En el campo Tamaño, ingresa el tamaño nuevo para tu disco. Se puede cambiar el tamaño de los discos con tablas de partición MBR solo hasta 2 TB.
Haz clic en Guardar para aplicar los cambios en el disco.
gcloud
En la CLI de gcloud, usa el comando gcloud compute disks resize
y especifica la marca --size
con el tamaño de disco deseado, en gigabytes.
gcloud compute disks resize DISK_NAME --size DISK_SIZE
Reemplaza lo siguiente:
DISK_NAME
: el nombre del disco al que deseas cambiarle el tamaño.DISK_SIZE
: el tamaño nuevo, en gigabytes, para el disco. Se puede cambiar el tamaño de los discos con particiones de MBR solo hasta 2 TB.
Terraform
Para cambiar el tamaño de un disco persistente, puedes usar el recurso google_compute_disk
y el parámetro size
.
Si incluyes 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 omites los parámetros image
y snapshot
, puedes establecer el parámetro size
en un tamaño menor que el existente. Si haces esto, Terraform destruye el disco y crea un nuevo disco persistente vacío. Durante la recreación, Terraform no copia otros datos que no estén incluidos en la configuración de Terraform, como las etiquetas o las programaciones de instantáneas. Para evitar que Terraform destruya y vuelva a crear un disco, puedes agregar la configuración lifecycle.prevent_destroy = true
a la configuración de Terraform.
API
En la API, realiza 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" }
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID de tu proyecto.ZONE
: Es la zona en la que se encuentra el disco.DISK_NAME
: Es el nombre del disco cuyo tamaño deseas cambiar.DISK_SIZE
: el tamaño nuevo, en gigabytes, para el disco. Se puede cambiar el tamaño de los discos con particiones de MBR solo hasta 2 TB.
Cambia el tamaño del sistema de archivos y las particiones
Después de aumentar el tamaño de un disco, es posible que debas cambiar el tamaño de su sistema de archivos y particiones. En la siguiente lista, se muestra información adicional para los discos de arranque y los que no son de arranque:
Disco de arranque: si usas una imagen personalizada de Linux o una imagen personalizada de Windows, debes cambiar de forma manual el tamaño de la partición raíz y el sistema de archivos. Para las VMs con imágenes públicas, Compute Engine cambia el tamaño de la partición raíz y el sistema de archivos de forma automática después de aumentar el tamaño del disco de arranque y reiniciar la VM.
Disco que no es de arranque: después de aumentar el tamaño del disco, debes extender el sistema de archivos en el disco para usar el espacio agregado.
En el siguiente ejemplo, se muestra cómo cambiar el tamaño de la partición raíz y el sistema de archivos de un disco de arranque de forma manual y cómo cambiar manualmente el tamaño del sistema de archivos de un disco de datos que no es de arranque sin tabla de partición. En este ejemplo, se supone que el disco adjunto se formateó y activó antes.
VM de Linux
En la consola de Google Cloud, ve a la página Instancias de VM.
Junto a la instancia que tiene el disco conectado nuevo, haz clic en el botón SSH. El navegador abrirá una conexión de terminal a la instancia.
Usa los comandos
df
ylsblk
a fin de enumerar el tamaño del sistema de archivos y encontrar los nombres de dispositivo de tus 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
En este ejemplo, se incluyen los siguientes discos:
- Disco de arranque: La partición
/dev/sda1
está en un disco de arranque que se cambió de tamaño a 20 GB. La tabla particionada y el sistema de archivos proporcionan solo 9.7 GB al sistema operativo. - Disco de datos no de arranque: El disco de datos
/dev/sdb
que no es de arranque no tiene una tabla particionada, pero el sistema de archivos en ese disco proporciona solo 250 GB al sistema operativo. El directorio de activación de este disco es/mnt/disks/disk-1
.
El comando
df
muestra que la partición/dev/sda1
está activada como el sistema de archivos raíz y el disco/dev/sdb
está activado como un disco de datos que no es de arranque en/mnt/disks/disk-1
. Toma nota de la columna Tipo, que indica si tu disco usa un sistema de archivosext4
oxfs
.- Disco de arranque: La partición
Verifica el tipo de partición:
sudo parted -l
o para ver información solo de un disco específico:sudo parted -l /dev/DEVICE_NAME
busca un campo: Tabla de partición, si el valor esmsdos
, entonces el disco tiene un tipo de partición MBR. Esto significa que el tamaño máximo de ese disco sería de 2 TB.Cambia el tamaño de la partición raíz y el sistema de archivos en el disco de arranque. En este ejemplo, se supone que la imagen de VM no admite la partición automática de la raíz ni el cambio de tamaño del sistema de archivos.
Cambia el tamaño de la partición raíz mediante
parted
. Por ejemplo, con los siguientes comandos, se expande la partición 1 de/dev/sda
al tamaño máximo posible:Abre
parted
en la partición/dev/sda
:sudo parted /dev/sda
Cuando aparezca el mensaje
(parted)
, ingresa lo siguiente:resizepart
Cuando aparezca el mensaje
Partition number?
, ingresa lo siguiente:1
Cuando aparezca el mensaje
Warning: Partition /dev/sda1 is being used. Are you sure you want to continue?
, ingresa lo siguiente:Yes
Cuando aparezca el mensaje
End?
, ingresa lo siguiente:100%
Cuando aparezca el mensaje
(parted)
, ingresa lo siguiente:quit
Lee la tabla particionada nueva mediante
partprobe
.sudo partprobe /dev/sda
Extiende el sistema de archivos:
Si usas
ext4
, usa el comandoresize2fs
:sudo resize2fs /dev/sda1
Si usas
xfs
, usa el comandoxfs_growfs
:sudo xfs_growfs -d /
Cambia el tamaño del sistema de archivos en el disco de datos que no es de arranque.
Si usas
ext4
, usa el comandoresize2fs
para extender el sistema de archivos:sudo resize2fs /dev/DEVICE_NAME
Reemplaza
DEVICE_NAME
por el nombre del dispositivo del disco. En este ejemplo, el nombre del dispositivo es/dev/sdb
.Si usas
xfs
, usa el comandoxfs_growfs
para extender el sistema de archivos:sudo xfs_growfs MOUNT_DIR
Reemplaza MOUNT_DIR por el punto de activación del dispositivo. Puedes encontrar el punto de activación en la columna
MOUNTPOINT
del resultado del comandolsblk
.
Usa 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
VM de Windows
Usa la herramienta de administración de discos de Windows para cambiar el tamaño de las particiones en una instancia de Windows.
En la consola de Google Cloud, ve a la página Instancias de VM.
Junto a la instancia que tiene el disco que cambió de tamaño, haz clic en el botón RDP. El navegador abre una conexión de RDP a la instancia.
Haz clic derecho en el botón de Inicio de Windows y selecciona Administración de discos para abrir la herramienta Administración de discos.
Para mostrar el tipo de partición de disco, ejecuta en PowerShell:
Get-Disk
En la columna Estilo de partición, si el valor es MBR, el disco tiene un tipo de partición MBR. Esto significa que el tamaño máximo de ese disco sería de 2 TB.Actualiza la herramienta Administración de discos para que reconozca el espacio adicional en tu disco persistente zonal. En la parte superior de la ventana Administración de discos, haz clic en Acción y selecciona Actualizar.
En el disco que cambiaste de tamaño, haz clic derecho en la partición formateada y selecciona Extender volumen.
Sigue las instrucciones en el asistente Extender volumen (Extend Volume Wizard) a fin de extender tu partición existente para incluir el 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 su configuración de tamaño de clúster.
Después de completar el asistente y de que el volumen se termine de formatear, revisa la columna
Status
en la lista de discos conectados para asegurarte de que el disco nuevo tenga el estadoHealthy
.
No necesitas reiniciar tu instancia después de completar este proceso. Ahora puedes usar el espacio del disco agregado para almacenar datos.