Todos los productos
Search
Centro de documentos

Container Service for Kubernetes:Resize a disk volume (for clusters earlier than version 1.16)

Última actualización: Sep 21, 2026

Si su clúster ejecuta una versión de Kubernetes anterior a la 1.16 o utiliza discos básicos, no es posible expandir un volumen de disco mediante la actualización de su persistent volume claim (PVC). En su lugar, debe expandir directamente el disco subyacente y su sistema de archivos.

Alcance

Este tema describe cómo expandir un volumen de disco al ampliar manualmente el disco subyacente sin modificar la PVC. Utilice este método si su clúster ejecuta una versión de Kubernetes anterior a la 1.16 o si no cumple con los requisitos para online expansion of a disk volume.

Importante

Con este método, se expande el disco en la consola de ECS. Esto no afecta los recursos dentro del clúster, por lo que la capacidad de los objetos persistent volume claim (PVC) y persistent volume (PV) permanece sin cambios. Para garantizar que las capacidades de PV y PVC mostradas en el clúster coincidan con la capacidad real, se recomienda utilizar online expansion of a disk volume.

Elija un método según sus necesidades de negocio.

  • Online expansion: La aplicación continúa ejecutándose. Sin embargo, si el tráfico de E/S es alto durante la expansión del sistema de archivos, pueden producirse errores de E/S.

  • Offline expansion: Este proceso pausa la aplicación y su E/S de disco. Como resultado, la expansión del sistema de archivos es más segura para sus datos, pero la aplicación se detiene durante un periodo de tiempo.

Importante

Los discos básicos no admiten la expansión en línea. Debe utilizar la expansión sin conexión.

A continuación se utiliza una aplicación de ejemplo con un statically provisioned disk volume para demostrar cómo expandir el volumen de disco.

Expansión en línea

Expanda el disco en la consola de ECS mientras la aplicación sigue ejecutándose.

Paso 1: Consultar la información del disco

  1. Conéctese a su clúster. Para obtener más información, consulte Obtain the kubeconfig file of a cluster and use kubectl to connect to the cluster o Use kubectl to connect to a Kubernetes cluster from Workbench or CloudShell.

  2. Consulte el pod que monta el disco y confirme que el pod se encuentra en estado Running.

    kubectl get pod 

    Salida de ejemplo:

    NAME          READY   STATUS    RESTARTS   AGE
    disk-test-0   1/1     Running   0          38s
  3. Consulte la PVC para obtener el ID del disco.

    kubectl get pvc

    La siguiente salida muestra que el PV vinculado a la PVC es d-uf628m33r5rsbi****** (el ID del disco) y que la capacidad es de 20 GiB.

    NAME       STATUS   VOLUME                   CAPACITY   ACCESS MODES   STORAGECLASS   VOLUMEATTRIBUTESCLASS   AGE
    disk-pvc   Bound    d-uf628m33r5rsbi******   20Gi       RWO            disk           <unset>                 64s

Paso 2: Expandir el disco y el sistema de archivos

  1. Inicie sesión en la consola de ECS.

  2. En el panel de navegación izquierdo, seleccione Storage & Snapshots > Block Storage.

  3. En la esquina superior izquierda de la página, seleccione una región y un resource group.

  4. Busque el disco por su ID, selecciónelo y luego haga clic en Scale-out en la parte inferior de la página.

    Para obtener más información sobre cómo expandir un disco, consulte Expand a disk (Linux) .
  5. En el asistente que aparece, siga las instrucciones en pantalla para completar la expansión.

    • En la página Determine Disk and Read Notes, confirme la información del disco, lea las notas y luego haga clic en I Understand Risks and Have Backed Up Data, Proceed.

    • En la página Configure Resizing Method and New Size, establezca los parámetros para la expansión y haga clic en Scale-out.

      Parámetro

      Descripción

      Ejemplo

      New disk size

      Especifique la capacidad a la que desea expandir el disco. La nueva capacidad no puede ser menor que la capacidad actual.

      30 GiB

      Resizing method

      Seleccione Online Resizing. La nueva capacidad entra en vigor de inmediato sin necesidad de reiniciar.

      Online Resizing

    • En la página Confirm Resizing Results, confirme que el disco se expandió correctamente y luego haga clic en Next Step: Extend Partitions and File Systems.

      Nota

      Después de expandir el disco, también debe expandir su sistema de archivos. De lo contrario, el espacio de almacenamiento en el contenedor conservará el tamaño original.

    • En la página Extend the partitions and file systems of disks, seleccione Use Cloud Assistant, active Authorize Cloud Assistant to Perform This Operation y luego haga clic en Authorization.

      Una vez completada la operación, compruebe que tanto el disco como su sistema de archivos se hayan expandido.

      Cuando la expansión finaliza correctamente, la página de comprobación del disco muestra una marca de verificación verde y el mensaje The disk check is complete. The disk is ready for use. En la sección Disk information in the operating system, compruebe que el valor de Disk capacity (OS) coincida con el valor de Capacity. En los detalles de la partición, verifique que el tamaño de la partición (por ejemplo, /dev/vdb) sea igual a la capacidad total del disco. Esto confirma que tanto la partición como el sistema de archivos se expandieron correctamente.

Expansión sin conexión

Pause la aplicación al establecer el número de réplicas en 0, expanda el disco y luego reinicie la aplicación.

Paso 1: Consultar la información del disco y pausar la aplicación

  1. Conéctese a su clúster. Para obtener más información, consulte Obtain the kubeconfig file of a cluster and use kubectl to connect to the cluster o Use kubectl to connect to a Kubernetes cluster from Workbench or CloudShell.

  2. Consulte el pod que monta el disco y confirme que el pod se encuentra en estado Running.

    kubectl get pod 

    Salida de ejemplo:

    NAME          READY   STATUS    RESTARTS   AGE
    disk-test-0   1/1     Running   0          38s
  3. Consulte la PVC para obtener el ID del disco.

    kubectl get pvc

    La siguiente salida muestra que el PV vinculado a la PVC es d-uf628m33r5rsbi****** (el ID del disco) y que la capacidad es de 20 GiB.

    NAME       STATUS   VOLUME                   CAPACITY   ACCESS MODES   STORAGECLASS   VOLUMEATTRIBUTESCLASS   AGE
    disk-pvc   Bound    d-uf628m33r5rsbi******   20Gi       RWO            disk           <unset>                 64s
  4. Reduzca la escala de la aplicación a 0 réplicas para pausarla.

    kubectl scale sts disk-test --replicas=0

    Salida esperada:

    statefulset.apps/disk-test scaled

Paso 2: Expandir el disco

  1. Inicie sesión en la consola de ECS.

  2. En el panel de navegación izquierdo, seleccione Storage & Snapshots > Block Storage.

  3. En la esquina superior izquierda de la página, seleccione una región y un resource group.

  4. Busque el disco por su ID, selecciónelo y luego haga clic en Scale-out en la parte inferior de la página.

  5. En el asistente que aparece, siga las instrucciones en pantalla para completar la expansión.

    • En la página Determine Disk and Read Notes, confirme la información del disco, lea las notas y luego haga clic en I Understand Risks and Have Backed Up Data, Proceed.

    • En la página Configure Resizing Method and New Size, establezca los parámetros para la expansión y haga clic en Scale-out.

      Parámetro

      Descripción

      Ejemplo

      New disk size

      Especifique la capacidad a la que desea expandir el disco. La nueva capacidad no puede ser menor que la capacidad actual.

      30 GiB

      Resizing method

      Después de pausar la aplicación, el disco queda en estado Unattached. En este estado, Offline Resizing es la única opción disponible.

      Offline Resizing

    • En la página Confirm Resizing Results, confirme que el disco se expandió correctamente y luego haga clic en Next Step: Extend Partitions and File Systems.

    • En la página Extend the partitions and file systems of disks, seleccione Use Documentation y consulte la documentación en la sección Extend the partitions and file systems of disks on a Linux instance.

      Nota
      • Después de expandir el disco, también debe expandir su sistema de archivos. De lo contrario, el espacio de almacenamiento en el contenedor conservará el tamaño original.

      • Dado que el disco se encuentra en estado Unattached, no es posible utilizar Cloud Assistant. Debe expandir el sistema de archivos manualmente.

Paso 3: Expandir el sistema de archivos

Los siguientes pasos aplican a discos sin particiones.

Importante

Se recomienda no utilizar discos con particiones en Kubernetes.

  1. Monte el disco en una instancia de ECS.

    1. En la página EBS de la consola de ECS, busque el disco de destino y haga clic en Attach en la columna Actions.

    2. En el asistente Attach to Instance, seleccione la instancia de ECS de destino y haga clic en Next.

      Importante

      No seleccione ninguna opción que libere el disco automáticamente.

    3. En el asistente Partition Disk and Create and Mount File Systems, haga clic en Configure Later en la sección Initialization Method.

    4. Compruebe que el estado del disco cambie a In Use.

  2. Conéctese a la instancia de ECS. Para obtener más información, consulte Connection methods.

  3. Obtenga el nombre del dispositivo del disco.

    Reemplace <serial> con el número de serie de su disco.

    El número de serie del disco forma parte del ID del disco, el cual tiene el formato d-{número de serie del disco}. Para obtener más información, consulte View the serial number of a block storage device.

    Importante

    Los discos creados antes del 10 de junio de 2020 no tienen números de serie. Para estos discos, no es posible utilizar el comando realpath para encontrar el nombre del dispositivo. En su lugar, ejecute el comando ls /dev/vd* antes y después de montar el disco, y luego compare las salidas para identificar el nuevo nombre del dispositivo.

    realpath /dev/disk/by-id/virtio-<serial>

    La siguiente salida de ejemplo indica que el nombre del dispositivo del disco es /dev/vdb.

    /dev/vdb
  4. Expanda el sistema de archivos.

    Reemplace /dev/vdb con el nombre real del dispositivo de su disco.

    resize2fs /dev/vdb

    Si aparece el siguiente error, ejecute e2fsck -f /dev/vdb tal como se indica y luego vuelva a ejecutar resize2fs /dev/vdb para expandir el sistema de archivos.

    resize2fs 1.46.0 (29-Jan-2020)
    Please run 'e2fsck -f /dev/vdb' first.

    Una vez que el sistema de archivos se expande correctamente, se devuelve la siguiente salida:

    resize2fs 1.46.0 (29-Jan-2020)
    Resizing the filesystem on /dev/vdb to 7864320 (4k) blocks.
    The filesystem on /dev/vdb is now 7864320 (4k) blocks long.
  5. Confirme que el sistema de archivos se haya expandido.

    1. Cree un directorio temporal /mnt/disk/ y monte el disco en él.

      mkdir /mnt/disk
      mount /dev/vdb /mnt/disk/
    2. Compruebe el tamaño del sistema de archivos.

      df /mnt/disk/

      La siguiente salida de ejemplo muestra que la capacidad de /dev/vdb se expandió a 30 GiB.

      Filesystem     1K-blocks  Used Available Use% Mounted on
      /dev/vdb        30787536    24  30771128   1% /mnt/disk
    3. Desmonte el disco del directorio temporal.

      umount /mnt/disk
  6. Desmonte el disco de datos de la instancia de ECS. Para obtener más información, consulte Detach a data disk.

Paso 4: Reiniciar la aplicación

  1. Aumente la escala de la aplicación a 1 réplica para reiniciarla.

    kubectl scale sts disk-test --replicas=1

    Salida esperada:

    statefulset.apps/disk-test scaled
  2. Confirme que el pod se haya restaurado.

    kubectl get pod

    Salida esperada:

    NAME          READY   STATUS    RESTARTS   AGE
    disk-test-0   1/1     Running   0          5s
  3. Compruebe el tamaño del sistema de archivos.

    kubectl exec -it disk-test-0 -- df /data

    La siguiente salida de ejemplo muestra que el sistema de archivos montado se expandió correctamente.

    Filesystem     1K-blocks  Used Available Use% Mounted on
    /dev/vdb        30787536    24  30771128   1% /data