Importer des dispositifs virtuels

Un dispositif virtuel est un package contenant des images de disques et une configuration matérielle pour une machine virtuelle (VM).

Le format OVF est le format couramment utilisé pour les dispositifs virtuels. Lorsque vous empaquetez des dispositifs virtuels au format OVF, vous générez un package OVF. Un package OVF est un dossier qui contient un fichier descripteur .ovf ainsi qu'un ensemble d'autres ressources, par exemple des disques. Lorsqu'un package OVF est archivé dans un seul fichier, il est appelé fichier OVA.

Vous pouvez importer des VM au format OVF dans Compute Engine qu'elles soient contenues dans un package OVF ou dans un fichier OVA unique. Pour vérifier si le dispositif virtuel constitue le meilleur choix pour votre cas d'utilisation, consultez la page Choisir une méthode d'importation.

Lorsque vous importez un dispositif virtuel, le processus d'importation utilise l'information stockée dans le fichier descripteur pour créer et démarrer une instance de machine virtuelle sur Compute Engine.

Avant de commencer

Activer l'API Cloud Build

L'outil d'importation du dispositif virtuel utilise Cloud Build. Activez le service Cloud Build dans votre projet, et accordez les autorisations nécessaires au compte de service Cloud Build pour créer et gérer les ressources de calcul.

Console

  1. Activez l'API Cloud Build.

    Activer l'API Cloud Build

    Lorsque vous activez l'API Cloud Build depuis la console, Compute Engine accorde au compte de service Cloud Build les rôles suivants, de sorte que le service Cloud Build puisse importer des instances vers Compute Engine :

    • roles/iam.serviceAccountTokenCreator
    • roles/compute.admin
    • roles/iam.serviceAccountUser

    L'outil d'importation utilise également le compte de service Compute Engine par défaut. Par défaut, le compte de service Compute Engine possède le rôle d'éditeur de projet Cloud IAM. Si ce rôle est retiré, le processus d'importation peut échouer. Pour attribuer de nouveau le rôle au compte de service, consultez la section Accorder l'accès aux ressources. Pour plus d'informations sur le compte de service par défaut Compute Engine, consultez la section Compte de service Compute Engine par défaut.

gcloud

Pour configurer le service Cloud Build à l'aide de l'outil de ligne de commande gcloud, procédez comme suit :

  1. Activez Cloud Build.

    gcloud services enable cloudbuild.googleapis.com
    

    L'outil d'importation utilise également le compte de service Compute Engine par défaut. Par défaut, le compte de service Compute Engine possède le rôle d'éditeur de projet Cloud IAM. Si ce rôle est retiré, le processus d'importation peut échouer. Pour attribuer de nouveau le rôle au compte de service, consultez la section Accorder l'accès aux ressources. Pour plus d'informations sur le compte de service par défaut Compute Engine, consultez la section Compte de service Compute Engine par défaut.

  2. Ajoutez le rôle compute.admin au compte de service de l'API Cloud Build.

    gcloud projects add-iam-policy-binding [PROJECT_ID] \
      --member serviceAccount:[PROJECT_NUM]@cloudbuild.gserviceaccount.com \
      --role roles/compute.admin
    
  3. Ajoutez le rôle iam.serviceAccountUser au compte de service de l'API Cloud Build.

    gcloud projects add-iam-policy-binding [PROJECT_ID] \
      --member serviceAccount:[PROJECT_NUM]@cloudbuild.gserviceaccount.com \
      --role roles/iam.serviceAccountUser
    
  4. Ajoutez le rôle iam.serviceAccountTokenCreator au compte de service de l'API Cloud Build.

    gcloud projects add-iam-policy-binding [PROJECT_ID] \
      --member serviceAccount:[PROJECT_NUM]@cloudbuild.gserviceaccount.com \
      --role roles/iam.serviceAccountTokenCreator
    

    où :

Conditions requises

Configuration requise pour la VM source

Les conditions suivantes doivent être remplies par la VM utilisée pour créer le fichier OVF :

  • Les disques virtuels doivent être au format VMDK ou VHD.
  • Les disques virtuels doivent être configurés avec le démarrage MBR. Le standard UEFI n'est pas accepté.
  • Les disques virtuels ne doivent pas être chiffrés.

Pour vérifier que votre VM remplit les conditions requises, vous pouvez exécuter l'outil de vérification préalable.

Exigences relatives aux fichiers OVF

Le fichier OVF doit répondre aux exigences suivantes :

  • Les fichiers OVF doivent fournir la portabilité Level 1 comme décrit dans le document de spécification OVF. Les dispositifs virtuels qui atteignent la portabilité Level 2 peuvent être importés, mais les extensions personnalisées, telles que les détails spécifiques à l'hyperviseur source, sont ignorées lors du processus d'importation.
  • Le fichier OVF ne doit contenir qu'une seule VM. S'il en contient plusieurs, seule la première VM est importée.
  • Le premier disque du fichier OVF doit être amorçable.

Configurations importées par l'outil d'importation

La documentation OVF décrit le processus permettant d'empaqueter des dispositifs virtuels indépendamment du fournisseur de virtualisation. Les packages des dispositifs virtuels OVF contiennent un fichier descripteur .ovf ainsi qu'un ensemble d'autres ressources, par exemple des disques virtuels.

Lorsque vous importez un dispositif virtuel OVF vers Compute Engine, les configurations du fichier descripteur ci-dessous sont traitées et importées :

  • Disques virtuels. Informations récupérées à partir de l'élément DiskSection du package OVF.
  • Processeur et mémoire. Informations récupérées à partir de l'élément ResourceAllocationSection du package OVF.

    Si les configurations du processeur ou de la mémoire se trouvent en dehors des plages compatibles avec Compute Engine, le processus d'importation définit les valeurs à la limite maximale acceptée par Compute Engine.

  • Disque de démarrage. Informations récupérées à partir de l'élément BootDeviceSection du package OVF.

  • Système d'exploitation invité. Informations récupérées à partir de l'élément OperatingSystemSection du package OVF.

    Les informations du système d'exploitation invité sont utilisées pour installer les pilotes et les packages d'environnement invité appropriés sur l'instance importée. Si les informations relatives au système d'exploitation invité sont incorrectes dans le package OVF, l'importation échoue. Vous pouvez utiliser l'indicateur --os pour remplacer les informations relatives au système d'exploitation invité.

Les instances importées sont toujours créées avec une simple carte réseau, sans adresse IP externe. Cette carte réseau est utilisée quelles que soient les configurations réseau mentionnées dans le fichier OVF.

Limites

Lorsque vous importez un dispositif virtuel, les sections suivantes du fichier descripteur ne sont pas importées :

  • NetworkSection
  • AnnotationSection
  • ProductSection
  • EulaSection
  • StartupSection
  • DeploymentOptionSection
  • InstallSection
  • EnvironmentFilesSection
  • SharedDiskSection
  • ScaleOutSection
  • PlacementGroupSection
  • PlacementSection
  • EncryptionSection

Systèmes d'exploitation compatibles

Spécifiez l'un des systèmes d'exploitation suivants dans la section OperatingSystemSection de votre fichier descripteur :

Distributions et versions Linux

  • CentOS 6, CentOS 7
  • Debian 8, Debian 9
  • Red Hat Enterprise Linux 6, Red Hat Enterprise Linux 7
  • Ubuntu 14.04 LTS, Ubuntu 16.04 LTS

GRUB doit être installé sur le disque d'amorçage pour toutes les distributions Linux.

Versions Windows

  • Windows Server 2008 R2
  • Windows Server 2012, Windows Server 2012 R2, Windows Server 2012 R2 Core
  • Windows Server 2016, Windows Server 2016 Core
  • Windows Server 2019, Windows Server 2019 Core
  • Windows 7 SP1 x64 (compatible avec BYOL)
  • Windows 8 SP1 x64 (compatible avec BYOL)
  • Windows 10 Enterprise x64 (compatible avec BYOL)

Pour tous les systèmes d'exploitation Windows, PowerShell version 3 ou ultérieure doit être installé. Les versions de PowerShell antérieures à la version 3.0 peuvent entraîner des problèmes avec les scripts de démarrage et d'arrêt utilisés lors du processus d'importation.

Compatibilité avec BYOL

Par défaut, les fichiers OVF qui utilisent les systèmes d'exploitation Windows et Red Hat Enterprise Linux (RHEL) sont importés et configurés pour utiliser le mode de facturation à la demande OS premium, qui entraîne des frais supplémentaires.

Si vous préférez utiliser vos propres abonnements logiciels pour RHEL, vous pouvez importer des dispositifs virtuels en tant que dispositifs sous licence BYOL (bring-your-own-license).

Pour importer des dispositifs en tant que dispositifs sous licence BYOL, spécifiez l'une des valeurs BYOL suivantes pour l'indicateur [--os] lorsque vous exécutez la commande d'importation.

  • rhel-6-byol
  • rhel-7-byol
  • windows-2008r2-byol
  • windows-2012-byol
  • windows-2012r2-byol
  • windows-2016-byol
  • windows-2019-byol
  • windows-7-byol
  • windows-8-1-x64-byol
  • windows-10-byol

Importer un fichier OVA

  1. Ajoutez le dispositif virtuel dans Cloud Storage.
  2. Pour importer un fichier OVA depuis Cloud Storage vers Compute Engine, utilisez la commande gcloud compute instances import.

    gcloud compute instances import [INSTANCE_NAME] \
      --source-uri=gs:[PATH_TO_OVA_FILE]
    

    où :

    • [INSTANCE_NAME] est le nom de l'instance que vous souhaitez créer.
    • [PATH_TO_OVA_FILE] correspond au chemin d'accès du fichier OVA dans Cloud Storage.

    Par exemple, pour importer un fichier OVA Ubuntu.ova et créer une instance nommée my-instance, exécutez la commande suivante :

    gcloud compute instances import my-instance \
      --source-uri=gs://my-bucket/Ubuntu.ova
    

    Dans certains cas, une valeur peut vous être demandée pour le système d'exploitation. Pour spécifier le système d'exploitation, vous devez ajouter l'indicateur --os. Par exemple, pour importer un fichier OVA Ubuntu.ova et créer une instance nommée my-instance qui exécute Ubuntu 16.04, exécutez la commande suivante :

    gcloud compute instances import my-instance \
     --os=ubuntu-1604
     --source-uri=gs://my-bucket/Ubuntu.ova
    

Importer un fichier OVF

  1. Ajoutez le dispositif virtuel dans Cloud Storage.
  2. Pour importer un fichier OVF depuis Cloud Storage vers Compute Engine, utilisez la commande gcloud compute instances import.

    Si votre répertoire contient uniquement un fichier OVF, vous pouvez fournir soit le chemin vers le fichier descripteur soit celui vers le répertoire contenant le fichier OVF.

    • Pour importer un fichier OVF en indiquant le chemin vers le fichier descripteur, exécutez la commande suivante :

      gcloud compute instances import [INSTANCE_NAME] \
        --source-uri=gs:[PATH_TO_OVF_FILE]
      
    • Pour importer un fichier OVF en indiquant le chemin du répertoire, exécutez la commande suivante :

      gcloud compute instances import [INSTANCE_NAME] \
        --source-uri=gs:[PATH_TO_OVF_DIRECTORY]
      

    où :

    • [INSTANCE_NAME] est le nom de l'instance que vous souhaitez créer.
    • [PATH_TO_OVF_FILE] correspond au chemin d'accès du fichier OVF dans Cloud Storage.
    • [PATH_TO_OVF_DIRECTORY] correspond au chemin d'accès du répertoire qui contient le fichier OVF sur Cloud Storage.

    Par exemple, pour importer un fichier OVF Ubuntu.ovf dans le répertoire my-bucket et créer une instance nommée my-instance, exécutez la commande suivante :

    gcloud compute instances import my-instance \
      --source-uri=gs://my-bucket/
    

    Dans certains cas, une valeur peut vous être demandée pour le système d'exploitation. Pour spécifier le système d'exploitation, vous devez ajouter l'indicateur --os. Par exemple, pour importer un fichier OVF Ubuntu.ovf et créer une instance nommée my-instance qui exécute Ubuntu 16.04, exécutez la commande suivante :

    gcloud compute instances import my-instance \
     --os=ubuntu-1604 \
     --source-uri=gs://my-bucket/
    

Importer avec des paramètres personnalisés

CPU et mémoire personnalisés

Si vous souhaitez remplacer la configuration du processeur ou de la mémoire spécifiée dans le fichier OVF, renseignez les indicateurs --custom-cpu et --custom-memory.

Par exemple, pour importer une instance nommée my-instance exécutant Ubuntu 1404 et disposant de deux processeurs et de 2 048 Mo de mémoire, exécutez la commande suivante :

gcloud compute instances import my-instance \
  --os=ubuntu-1404 --source-uri=gs://my-bucket/Ubuntu.ova \
  --custom-cpu=2 --custom-memory=2048MB

Réseaux personnalisés

Si votre projet est configuré pour utiliser des réseaux personnalisés, vous devez spécifier un indicateur --network. Si le réseau est configuré en mode sous-réseau personnalisé, vous devez également spécifier des indicateurs --subnet et --zone.

Par exemple, pour importer une instance avec les propriétés suivantes :

  • Nom de l'instance : my-instance
  • Système d'exploitation : Ubuntu 1404
  • Réseau : custom-vpc network
  • Sous-réseau : company-vpc-us-east1-c
  • Zone : us-east1-c

Exécutez la commande suivante :

gcloud compute instances import my-instance --os ubuntu-1404 \
  --source-uri=gs://my-bucket/Ubuntu.ova \
  --network company-vpc \
  --subnet company-vpc-us-east1-c \
  --zone us-east1-c

Étapes suivantes

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Documentation Compute Engine