Augmenter la taille d'un disque persistant


Vous pouvez augmenter la taille de votre disque persistant lorsque votre instance de machine virtuelle (VM) nécessite un espace de stockage supplémentaire ou des limites de performances plus élevées. Vous pouvez augmenter la taille du disque à tout moment, qu'il soit ou non associé à une VM en cours d'exécution.

Cette page explique comment augmenter la taille d'un disque persistant. Pour augmenter la taille d'un volume Google Cloud Hyperdisk, consultez la section Modifier les paramètres d'un Hyperdisk.

Vous pouvez augmenter la taille du disque, et non la réduire. Pour réduire la taille du disque, vous devez créer un disque de taille inférieure. Les deux disques vous sont facturés jusqu'à ce que vous supprimiez le disque d'origine plus volumineux.

Lorsque vous créez une image Linux personnalisée ou une image Windows personnalisée, vous devez augmenter manuellement la taille des disques de démarrage et non amorçables. Si vous utilisez une image publique, Compute Engine redimensionne automatiquement les disques de démarrage.

L'augmentation de la taille d'un disque n'entraîne aucune suppression ou modification des données du disque, mais il est recommandé de sauvegarder le disque en créant un instantané avant de modifier le système de fichiers ou les partitions.

Compute Engine gère le matériel derrière les disques persistants, ce qui vous permet d'ajouter et de redimensionner vos disques sans vous préoccuper des questions de répartition ou de redondance.

Avant de commencer

  • Si ce n'est pas déjà fait, configurez l'authentification. L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Google Cloud. Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes:

    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. Install the Google Cloud CLI, then initialize it by running the following command:

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

      Pour utiliser les exemples Terraform de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.

      1. Install the Google Cloud CLI.
      2. To initialize the gcloud CLI, run the following command:

        gcloud init
      3. 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.

      Pour en savoir plus, consultez Set up authentication for a local development environment.

      REST

      Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.

Rôles et autorisations requis

Pour obtenir l'autorisation dont vous avez besoin pour redimensionner un disque persistant, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet:

Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Ce rôle prédéfini contient l'autorisation compute.disks.update, qui est requise pour redimensionner un disque persistant.

Vous pouvez également obtenir cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.

Augmenter la taille d'un disque

Pour augmenter la taille d'un disque de démarrage ou non amorçable, procédez comme suit :

Console

  1. Dans la console Google Cloud, accédez à la page Disques.

    Accéder à la page Disques

  2. Dans la liste des disques persistants de votre projet, cliquez sur le nom du disque à redimensionner.

  3. Sur la page des informations du disque, cliquez sur Modifier. Vous devrez peut-être cliquer sur le menu Autres actions, puis sur Modifier.

  4. Dans le champ Taille, indiquez la nouvelle taille de votre disque. Le redimensionnement des disques dotés de tables de partition MBR est limité à 2 To.

  5. Cliquez sur Enregistrer pour appliquer vos modifications au disque.

La nouvelle taille de disque s'affiche dans la liste des disques.

gcloud

Exécutez la commande gcloud compute disks resize et définissez l'option --size sur la nouvelle taille de disque, en gibioctets (Gio).

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

Remplacez les éléments suivants :

  • DISK_NAME : le nom du disque que vous redimensionnez.
  • DISK_SIZE: la nouvelle taille du disque, en gibioctets (Gio). Le redimensionnement des disques dotés de tables de partition MBR est limité à 2 To.
  • ZONE: pour les disques persistants zonaux, spécifiez la zone dans laquelle se trouve le disque.

    Pour les disques persistants régionaux, utilisez plutôt l'indicateur --region=REGION et spécifiez la région dans laquelle se trouve le disque régional.

Terraform

Choisissez l'une des options suivantes pour redimensionner des disques zonaux ou un disque persistant régional:

Disque zonal

Pour modifier la taille d'un disque persistant, vous pouvez utiliser la ressource google_compute_disk et le paramètre 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 vous incluez le paramètre size avec le paramètre image ou snapshot, la valeur size doit être égale ou supérieure à la taille de l'image ou de l'instantané.

Si vous omettez les paramètres image et snapshot, vous pouvez définir le paramètre size sur une valeur inférieure à la taille du disque existant. Dans ce cas, Terraform détruit le disque et crée un disque persistant vide.

Stockage Persistent Disk régional

Pour modifier la taille d'un disque persistant régional, vous pouvez utiliser la ressource google_compute_region_disk et le paramètre 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 vous incluez le paramètre size avec le paramètre image ou snapshot, la valeur size doit être égale ou supérieure à la taille de l'image ou de l'instantané.

Si vous omettez les paramètres image et snapshot, vous pouvez définir le paramètre size sur une valeur inférieure à la taille du disque existant. Dans ce cas, Terraform détruit le disque et crée un RegionalPersistentDisk vide.

REST

Pour redimensionner un disque persistant, envoyez une requête POST à la méthode compute.disks.resize.

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

Pour redimensionner un disque persistant régional, envoyez une requête POST à la méthode compute.regionDisks.resize.

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

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet.
  • ZONE : pour les disques persistants zonaux, zone dans laquelle se trouve le disque.
  • REGION : pour le disque persistant régional, région où se trouve le disque.
  • DISK_NAME : le nom du disque à redimensionner.
  • DISK_SIZE: la nouvelle taille du disque, en gibioctets (Gio). Le redimensionnement des disques dotés de tables de partition MBR est limité à 2 To.

Redimensionner le système de fichiers et les partitions

Après avoir augmenté la taille d'un disque, vous devrez peut-être redimensionner le système de fichiers et les partitions. La liste suivante répertorie les informations supplémentaires pour les disques de démarrage et non amorçables :

  • Disque de démarrage: si vous utilisez une image Linux personnalisée ou une image Windows personnalisée, vous devez redimensionner manuellement la partition racine et le système de fichiers. Pour les VM dotées d'images publiques, Compute Engine redimensionne automatiquement la partition racine et le système de fichiers après l'augmentation de la taille du disque de démarrage et le redémarrage de la VM.

  • Disque non amorçable : après avoir augmenté la taille du disque, vous devez étendre le système de fichiers sur le disque pour utiliser l'espace supplémentaire.

L'exemple suivant montre comment redimensionner manuellement la partition racine et le système de fichiers d'un disque de démarrage, et comment redimensionner manuellement le système de fichiers d'un disque de données non amorçable sans table de partition. Cet exemple suppose que le disque est connecté à l'aide de SCSI et qu'il a déjà été formaté et installé.

Si votre disque persistant a été connecté à l'aide de NVMe, consultez la section Redimensionner le système de fichiers et les partitions pour obtenir un exemple de sortie pour les disques connectés à NVMe.

VM Linux

  1. Dans la console Google Cloud, accédez à la page Instances de VM.

    Accéder à la page "Instances de VM"

  2. À côté de l'instance contenant le nouveau disque associé, cliquez sur le bouton SSH. Le navigateur ouvre une connexion de terminal vers l'instance.

  3. Exécutez la commande df et la commande lsblk pour répertorier la taille du système de fichiers et trouver les noms d'appareils de vos disques.

    $ 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
    
    

    Cet exemple inclut les disques suivants :

    • Disque de démarrage : la partition /dev/sda1 se trouve sur un disque de démarrage redimensionné à 20 Go. La table de partition et le système de fichiers ne fournissent que 9,7 Go au système d'exploitation.
    • Disque de données non amorçable : le disque de données non amorçable /dev/sdb ne possède pas de table de partition, mais le système de fichiers de ce disque ne fournit que 250 Go au système d'exploitation. Le répertoire d'installation de ce disque est /mnt/disks/disk-1.

    La commande df indique que la partition /dev/sda1 est installée en tant que système de fichiers racine et que le disque /dev/sdb est installé en tant que disque de données non amorçable sur /mnt/disks/disk-1. Notez la colonne Type, qui indique si votre disque utilise un système de fichiers ext4 ou xfs.

  4. Vérifiez le type de partition :

    sudo parted -l
    
    Pour n'afficher que les informations d'un disque spécifique:
    sudo parted -l /dev/DEVICE_NAME
    
    Recherchez le champ Partition Table (Table partitionnée). Si la valeur est msdos, le disque possède un type de partition MBR. Cela signifie que la taille maximale d'un tel disque est de 2 To.

  5. Redimensionnez le système de fichiers et la partition racine sur le disque de démarrage. Cet exemple part du principe que l'image de VM n'est pas compatible avec le partitionnement racine automatique et le redimensionnement des systèmes de fichiers.

    1. Redimensionnez la partition racine à l'aide de parted. Par exemple, les commandes suivantes étendent la partition 1 de /dev/sda à la taille maximale possible:

      1. Ouvrez parted sur la partition /dev/sda :

        sudo parted /dev/sda
      2. Lorsque l'invite (parted) s'affiche, saisissez :

        resizepart
      3. Lorsque l'invite Partition number? s'affiche, saisissez :

        1
      4. Lorsque l'invite Warning: Partition /dev/sda1 is being used. Are you sure you want to continue? s'affiche, saisissez :

        Yes
      5. Lorsque l'invite End? s'affiche, saisissez :

        100%
      6. Lorsque l'invite (parted) s'affiche, saisissez :

        quit
    2. Lisez la nouvelle table de partition à l'aide de partprobe.

      sudo partprobe /dev/sda
      
    3. Étendez le système de fichiers :

      • Si vous utilisez ext4, exécutez la commande resize2fs :

        sudo resize2fs /dev/sda1
        
      • Si vous utilisez xfs, exécutez la commande xfs_growfs :

        sudo xfs_growfs -d /
        
      • Si vous utilisez btrfs, exécutez la commande btrfs:

        sudo btrfs filesystem resize max /
        
  6. Redimensionnez le système de fichiers sur le disque de données non amorçable.

    • Si vous utilisez ext4, utilisez la commande resize2fs pour étendre le système de fichiers :

      sudo resize2fs /dev/DEVICE_NAME
      

      Remplacez DEVICE_NAME par le nom de l'appareil pour le disque. Dans cet exemple, le nom de l'appareil est /dev/sdb.

    • Si vous utilisez xfs, utilisez la commande xfs_growfs pour étendre le système de fichiers :

      sudo xfs_growfs MOUNT_DIR
      

      Remplacez MOUNT_DIR par le point d'installation de l'appareil. Le point d'installation est indiqué dans la colonne MOUNTPOINT de la sortie de la commande lsblk.

    • Si vous utilisez btrfs, utilisez la commande btrfs pour étendre le système de fichiers :

      sudo btrfs filesystem resize max MOUNT_DIR
      

      Remplacez MOUNT_DIR par le point d'installation de l'appareil. Le point d'installation est indiqué dans la colonne MOUNTPOINT de la sortie de la commande lsblk.

  7. Utilisez la commande df pour vérifier que le système de fichiers est bien étendu. Exemple :

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

VM Windows

Utilisez l'utilitaire Gestion du disque de Windows pour redimensionner des partitions sur une instance Windows.

  1. Dans Google Cloud Console, accédez à la page Instances de VM.

    Accéder à la page "Instances de VM"

  2. À côté de l'instance contenant le disque redimensionné, cliquez sur le bouton RDP. Le navigateur ouvre une connexion RDP vers l'instance.

  3. Faites un clic droit sur le bouton "Démarrer" de Windows, puis sélectionnez Disk Management (Gestion du disque) pour ouvrir l'outil de gestion du disque.

    Sélectionner l'outil Gestion du disque de Windows dans le menu contextuel du bouton Démarrer de Windows.

  4. Affichez le type de partition des disques en exécutant la commande dans Powershell :

    Get-Disk
    
    dans la colonne Style de partition, si la valeur est MBR, le disque possède un type de partition MBR. Cela signifie que la taille maximale d'un tel disque serait de 2 To.

  5. Actualisez l'outil Gestion du disque afin qu'il reconnaisse l'espace supplémentaire sur votre disque persistant zonal. En haut de la fenêtre, cliquez sur Action et sélectionnez Refresh (Actualiser).

    Cliquer sur le menu Action et sélectionner Actualiser pour mettre à jour les informations du disque persistant zonal dans l'outil Gestion du disque.

  6. Sur le disque que vous avez redimensionné, faites un clic droit sur la partition formatée et sélectionnez Extend Volume (Étendre le volume).

    Cliquer avec le bouton droit de la souris sur la partie formatée du disque et sélectionner l'option Étendre le volume.

  7. Suivez les instructions de l'Assistant Extension du volume pour étendre votre partition existante afin d'inclure l'espace disque supplémentaire. Si la partition existante est formatée en NTFS, la taille de partition maximale est limitée par ses paramètres de taille de cluster.

  8. Une fois que vous avez achevé les étapes de l'assistant et que le formatage du volume est terminé, vérifiez dans la colonne Status de la liste des disques associés que l'état du nouveau disque est défini sur Healthy.

    Afficher la liste des disques reconnus par Windows et vérifier que l'instance est en ligne et définie sur l'état "Sain".

Vous n'avez pas besoin de redémarrer votre VM après avoir terminé ce processus. Vous pouvez maintenant utiliser l'espace disque supplémentaire pour stocker des données.

Étapes suivantes