Associer un disque non amorçable à une VM


Cette page explique comment associer un disque non amorçable existant à une ou plusieurs instances de machine virtuelle (VM).

Pour créer ou modifier le disque de démarrage d'une VM, consultez les sections Créer un disque de démarrage et Dissocier et réassocier un disque de démarrage, respectivement.

Pour créer un disque, consultez les sections Créer un volume Persistent Disk et Créer un volume Hyperdisk.

Rôles et autorisations requis

Pour obtenir les autorisations nécessaires pour associer un disque à une VM, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet:

  • Administrateur d'instances Compute (v1) (roles/compute.instanceAdmin.v1)
  • Pour se connecter à une instance de VM pouvant être exécutée en tant que compte de service : Utilisateur du compte de service (v1) (rôle roles/iam.serviceAccountUser)

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.

Ces rôles prédéfinis contiennent les autorisations requises pour associer un disque à une VM. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour associer un disque à une VM:

  • Pour associer un disque à une VM :
    • compute.instances.attachDisk sur la VM.
    • compute.instances.attachDisk sur la VM.
    • compute.disks.use sur le disque que vous souhaitez associer à la VM.
  • Pour formater et installer le volume associé : compute.instances.setMetadata sur la VM

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

Mode d'association de disque

Lorsque vous associez un disque à une VM, vous indiquez comment la VM peut accéder aux données du disque en spécifiant le mode d'association du disque. Vous pouvez choisir le mode lecture seule ou en lecture/écriture.

Le mode par défaut est en lecture/écriture.

Partager un disque entre plusieurs VM

Vous pouvez partager le même disque entre les VM afin que chacune d'elles puisse y accéder simultanément en l'associant à chacune d'elles. Vous pouvez associer un disque à plusieurs VM si le type de disque et le type de machine de la VM le permettent.

Pour associer un disque à plusieurs VM, suivez la procédure décrite dans Associer un disque non amorçable à votre VM pour chaque VM.

Vous devez utiliser le même mode d'association de disque pour toutes les VM auxquelles vous associez le disque. Par exemple, vous ne pouvez pas associer un disque à une VM en mode lecture/écriture et l'associer en même temps à une autre VM en mode lecture seule.

Pour savoir comment associer un disque à plusieurs VM, y compris les types de disques compatibles, consultez Partager un disque entre plusieurs VM.

Associer un volume Hyperdisk à plusieurs VM

Pour associer un volume Hyperdisk à plusieurs VM, assurez-vous que le mode d'accès du disque est défini sur une valeur appropriée pour votre cas d'utilisation. Pour savoir comment définir le mode d'accès, consultez la section Définir le mode d'accès du disque.

Lorsque vous associez un volume Hyperdisk à une VM, vous devez choisir un mode d'association de disque qui n'entre pas en conflit avec le mode d'accès du disque. Par exemple, vous ne pouvez pas utiliser le mode d'association en lecture seule avec un disque en mode mono-rédacteur ou multi-rédacteur.

Limites

Lorsque vous associez un disque à une VM, tenez compte des limites suivantes:

  • Vous pouvez associer jusqu'à 127 disques zonaux non amorçables secondaires à une VM.

  • Vous ne pouvez pas associer un disque à une VM si l'opération dépasse la capacité maximale de disque de la VM.

  • Les types de disques suivants ne sont pas compatibles avec le mode lecture seule:

    • Volume Hyperdisk équilibré
    • Hyperdisk Throughput
    • Haute disponibilité sur Hyperdisk équilibré
    • Hyperdisk Extreme
  • Lorsque vous associez un disque à plusieurs VM, vous devez utiliser le même mode d'association de disque pour toutes les VM.

  • Lorsque vous associez un disque à plusieurs VM, des restrictions supplémentaires s'appliquent. Consultez les restrictions concernant le partage d'un disque entre des VM en mode lecture seule et en mode écriture simultanée.

  • Les disques associés à plusieurs VM ne sont pas compatibles avec la suppression automatique. Autrement dit, ils ne peuvent pas être supprimés automatiquement lorsque la VM est supprimée.

Rattacher un disque non amorçable à votre VM

Vous pouvez associer un disque zonal non amorçable à une VM à l'aide de la console Google Cloud, de la Google Cloud CLI ou de REST.

Lorsque vous associez un disque à une VM, tenez compte des points suivants:

  • Utiliser un nom d'appareil personnalisé: Google vous recommande de spécifier un nom d'appareil personnalisé lorsque vous associez un disque à une VM. Le nom que vous spécifiez est utilisé pour générer un symlink pour le disque dans l'OS invité, ce qui facilite l'identification et la gestion des disques sur la VM.

  • Associer un disque à plusieurs VM: pour associer un disque à plusieurs VM, répétez la procédure de cette section pour chaque VM. Vous devez utiliser le même mode d'association de disque pour toutes les VM auxquelles vous associez le disque.

Pour associer un disque persistant régional ou un volumeHyperdisk équilibré à haute disponibilité à votre VM, consultez plutôt la page Associer un disque régional à votre VM.

Console

  1. Accédez à la page Instances de VM.

    Accéder à la page "Instances de VM"

  2. Cliquez sur le nom de la VM à laquelle vous souhaitez ajouter un disque.

  3. Sur la page des détails, cliquez sur Modifier.

  4. Dans la section Stockage, sous Disques supplémentaires, cliquez sur + Associer un disque existant.

  5. Dans la liste Disque, sélectionnez le disque que vous souhaitez associer. Si le disque n'est pas listé, assurez-vous qu'il se trouve au même emplacement que la VM. Cela signifie la même zone pour un disque zonal et la même région pour un disque régional.

  6. Pour Mode d'association du disque, sélectionnez Lecture seule pour autoriser la VM uniquement à lire à partir du disque. Pour autoriser la VM à accéder en lecture/écriture, sélectionnez Read/write (Lecture/écriture).

  7. Sous Deletion rule (Règle de suppression), indiquez si vous souhaitez supprimer le disque lorsque la VM est supprimée. Pour conserver le disque lorsque la VM est supprimée, sélectionnez Conserver le disque. Pour supprimer le disque lorsque la VM est supprimée, sélectionnez Supprimer le disque. Si vous associez le disque à plusieurs VM, vous devez sélectionner Conserver le disque.

  8. (Facultatif) Sous l'en-tête Nom de l'appareil, sélectionnez l'option Utiliser un nom d'appareil personnalisé. Le nom que vous saisissez est utilisé pour générer un lien symbolique pour le disque, ce qui facilite l'identification du disque.

  9. Pour appliquer les modifications au disque, cliquez sur OK.

  10. Cliquez sur Enregistrer pour appliquer vos modifications et associer le disque à la VM.

gcloud

Pour associer un disque à une VM, utilisez la commande gcloud compute instances attach-disk. Utilisez l'option mode pour spécifier le mode d'association de disque.

gcloud compute instances attach-disk VM_NAME \
    --disk DISK_NAME --device-name=DEVICE_NAME
    --mode DISK_ATTACHMENT_MODE

Remplacez les éléments suivants :

  • VM_NAME : le nom de la VM à laquelle vous ajoutez le disque persistant zonal.
  • DISK_NAME : le nom du nouveau disque que vous associez à la VM.
  • DEVICE_NAME : (facultatif) le nom utilisé par le système d'exploitation invité pour identifier le disque.
  • DISK_ATTACHMENT_MODE : (facultatif) comment associer le disque à la VM. Pour le mode lecture seule, définissez la valeur sur ro. Pour le mode lecture-écriture, définissez-la sur rw ou omettez-la, car rw est la valeur par défaut.

Terraform

Pour associer le disque à une VM, utilisez la ressource google_compute_instance.

resource "google_compute_instance" "test_node" {
  name         = "test-node"
  machine_type = "f1-micro"
  zone         = "us-west1-a"

  boot_disk {
    initialize_params {
      image = "debian-cloud/debian-11"
    }
  }
  attached_disk {
    source      = google_compute_disk.default.id
    device_name = google_compute_disk.default.name
  }

  network_interface {
    network = "default"
    access_config {
      # Ephemeral IP
    }
  }

  # Ignore changes for persistent disk attachments
  lifecycle {
    ignore_changes = [attached_disk]
  }


}

Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.

REST

Pour associer un disque à une VM, envoyez une requête POST à la méthode compute.instances.attachDisk et incluez l'URL du disque que vous souhaitez associer.

Pour spécifier le mode d'attachement du disque, utilisez le paramètre mode.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/attachDisk

{
   "source": "/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME",
   "deviceName": DEVICE_NAME,
   "mode" : "DISK_ATTACHMENT_MODE"
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet.
  • ZONE : la zone dans laquelle se trouvent l'instance et le disque.
  • VM_NAME: nom de la VM à laquelle vous souhaitez associer le disque.
  • DISK_NAME : nom du disque à associer.
  • DEVICE_NAME : (facultatif) nom utilisé par le système d'exploitation invité pour créer un lien symbolique, qui permet d'identifier le disque.
  • DISK_ATTACHMENT_MODE: facultatif: méthode d'association du disque à la VM. Pour le mode lecture seule, utilisez READ_ONLY. Pour le mode lecture-écriture, définissez-la sur READ_WRITE ou omettez-la, car READ_WRITE est la valeur par défaut.

Après avoir associé un disque à une VM, connectez-vous à la VM et autorisez le système d'exploitation (OS) de la VM à utiliser le disque:

  • Si vous avez associé un disque vierge, formatez-le et installez-le.
  • Si vous avez connecté un disque non vide, montez-le.

Découvrez comment formater et installer vos nouveaux disques sur des VM Linux ou Windows.

Étape suivante