IBM Cloud Docs
Création d'une image à partir d'un volume

Création d'une image à partir d'un volume

Vous pouvez créer une image à partir d'un volume connecté à une instance de serveur virtuel disponible en tant que volume d'amorçage dans la console, à partir de l'interface de ligne de commande ou à l'aide de l'API.

Scénarios de création d'une image à partir d'un volume

Vous pouvez créer une image à partir d'un volume de plusieurs façons.

  • Sélectionnez une instance et créez une image à partir du volume d'amorçage de cette instance. La nouvelle image hérite du chiffrement du volume de démarrage (géré par le client ou par IBM ).

  • Sélectionnez une instance, créez une image à partir du volume de démarrage de cette instance et spécifiez un chiffrement différent. Par exemple, si le volume de démarrage a été chiffré avec le chiffrement géré par IBM, vous pouvez sélectionner le chiffrement géré par le client pour la nouvelle image.

  • Créer une image à partir d'un volume d'amorçage de la liste des volumes Block Storage. Le volume doit être un volume de démarrage attaché à une instance de serveur virtuel.

Selon la taille de l'image que vous créez, le travail peut prendre de 5 minutes à 1.5 heures. Vous pouvez annuler un travail dont la mise en file d'attente est trop longue. Pour plus d'informations, voir Remarques sur les performances.

Création d'une image à partir d'un volume dans la console

Vous pouvez créer une image à partir d'un volume connecté à une instance de serveur virtuel disponible en tant que volume d'amorçage dans la console.

Pour créer une image du volume d'amorçage, l'instance de serveur virtuel associée doit être arrêtée.

  1. Dans la console IBM Cloud console, cliquez sur l'icône Menu de navigation menu > Infrastructure Icône VPC > Compute > Images.

  2. Dans l'onglet Images personnalisées, cliquez sur Créer. L'image personnalisée pour la page VPC s'affiche.

  3. Remplissez les champs obligatoires de la page Importer des images personnalisées, puis continuez avec l'une des options Source.

    Importer des champs d'interface utilisateur d'images personnalisées
    Zone Valeur
    Emplacement Sélectionnez la zone géographique et l'emplacement où vous souhaitez que votre image personnalisée soit disponible pour la mise à disposition.
    Zone géographique Faites une sélection dans la liste.
    Région Faites une sélection dans la liste.
    Détails
    Nom Un nom est requis pour votre image personnalisée.
    Groupe de ressources Sélectionnez un groupe de ressources pour l'image. Cette sélection ne peut pas être modifiée ultérieurement.
    Balises Vous pouvez affecter un libellé à cette ressource de sorte à pouvoir facilement filtrer les ressources dans votre liste de ressources.
    Etiquettes de gestion des accès Comme le nom l'indique, ces balises peuvent aider à organiser le contrôle d'accès sans nécessiter de mises à jour des règles IAM. Pour plus d'informations, voir Contrôle de l'accès aux ressources à l'aide d'étiquettes.
    Source Sélectionnez la source de l'image personnalisée en choisissant le volume de démarrage de l'instance de serveur virtuel (par défaut) ou le volume de démarrage Block Storage.
  4. Choisissez votre source d'image:

    • Sélectionnez le volume d'amorçage de l'instance de serveur virtuel comme source de votre image personnalisée pour afficher la liste des instances disponibles.

      • Sélectionnez l'instance dans la liste.
      • Si l'instance est en cours d'exécution et que le sélecteur de volume est désactivé, cliquez sur l'icône Actions icône Actions et sélectionnez Arrêter.
    • Sélectionnez un Volume d'amorçage Block Storage comme source de votre image personnalisée pour afficher la liste des volumes d'amorçage disponibles.

      • Sélectionnez le volume dans la liste.
      • Si le sélecteur de volume est désactivé, cliquez sur l'icône Actions icône Actions et sélectionnez Arrêter l'instance connectée.
  5. Sélectionnez votre type de chiffrement, IBMou Chiffrement géré par le client.

    • La sélection par défaut est Géré par le fournisseur. Ce chiffrement utilise des clés gérées par IBM. Vous ne pouvez pas le supprimer par la suite.
    • Si vous souhaitez créer une image qui utilise vos propres clés pour le chiffrement, sélectionnez le service de gestion des clés dans lequel votre clé racine client (CRK) qui protège votre phrase passe est stockée: Key Protect ou Hyper Protect Crypto Services. Vous pouvez ensuite spécifier votre clé de deux manières.
      • Localiser par instance
        1. Sélectionnez votre instance de service de gestion de clés dans la liste.
        2. Sélectionnez votre clé. Si vous n'avez pas de clé disponible, cliquez sur Créer pour en créer une.
      • Localiser par CRN
        1. Saisissez le CRN de votre clé de cryptage.
  6. Options avancées: Vous pouvez utiliser le bouton à bascule pour activer la gestion du cycle de vie des images. En sélectionnant cette option, vous pouvez gérer quand votre image devient deprecated et obsolete. Vous pouvez planifier un seul changement de statut ou planifier le cycle de vie complet des images. Vous pouvez planifier des changements de statut en utilisant la date et l'heure du calendrier ou le nombre de jours. La date d'obsolescence doit toujours être postérieure à la date d'obsolescence. Pour plus d'informations, voir Cycle de vie d'une image personnalisée.

  7. Dans le panneau de droite, cliquez sur Créer une image personnalisée.

Affichage et utilisation de votre image personnalisée

Lorsque l'image est créée, elle apparaît dans la liste des images personnalisées.

  1. Dans Console IBM Cloud, accédez à menu icône de menu > Infrastructure VPC Icône VPC > Calcul > Images.
  2. Dans l'onglet Images personnalisées, cliquez sur le nom de l'image pour voir le volume à partir duquel elle a été créée.
  3. Passez en revue les détails de l'image. Cliquez sur le lien dans la section Source pour accéder au volume source.

Pour utiliser cette image lorsque vous créez une instance, sélectionnez-la comme type de système d'exploitation.

  1. Dans Console IBM Cloud, accédez à menu icône de menu > Infrastructure VPCIcône VPC > Calcul > Instances de serveur virtuel.
  2. Cliquez sur Créer. Pour plus d'informations sur l'approvisionnement d'une nouvelle instance de serveur virtuel, voir Création d'instances de serveur virtuel dans la console. Pour le Système d'exploitation, sélectionnez la vignette Image personnalisée.
  3. Cliquez sur Select custom image et sélectionnez l'image du volume que vous avez créé.

Création d'une image à partir d'un volume à l'aide de l'interface de ligne de commande

Utilisez l'interface CLI pour créer une image à partir d'un volume attaché à une instance de serveur virtuel disponible en tant que volume de démarrage principal ou secondaire.

Avant de commencer

  1. Assurez-vous d'avoir téléchargé, installé et initialisé les plug-in de l'interface de ligne de commande suivants :

    • CLI IBM Cloud
    • Le plug-in infrastructure-service

    Pour plus d'informations, voir la référence de l'interface de ligne de commande.

  2. Assurez-vous que vous avez créé un IBM Cloud VPC.

Créer une image à partir d'un volume de démarrage attaché à une instance

  1. Pour localiser l'instance à partir de laquelle vous souhaitez créer une image, répertoriez les instances dans la région. Notez l'ID d'instance dans la sortie de la commande.

    ibmcloud is instances
    
  2. Arrêtez l'instance en cours d'exécution avant de créer l'image à partir du volume.

    ibmcloud is instance-stop INSTANCE_ID
    
  3. Exécutez la commande image-create pour créer une image d'un volume d'amorçage. Spécifiez l'ID du volume source.

    ibmcloud is image-create IMAGE_NAME [--source-volume VOLUME_ID]
    

    Voir l'exemple suivant :

    $ ibmcloud is image-create test-ifv-vol1 --source-volume ecc68c2f-96a1-4862-bc86-14f47e5d9ed8
    
    Creating image test-ifv-vol1 in resource group  under account Test Account as user test.user@ibm.com...
    ID                 5b2fd4ee-c636-44c4-9673-453fca36832e
    Name               test-ifv-vol1
    CRN                crn:v1:bluemix:public:is:us-south:a/a123456::image:5b2fd4ee-c636-44c4-9673-453fca36832e
    Status             pending
    Status reason      Code                   Message                                                More info
                       image_request_queued   The image request is accepted and waiting for system   -
                                              resources to become available.
    Operating system   Name             Architecture   Vendor   Version                 Dedicated host only
                       centos-8-amd64   amd64          CentOS   8.x - Minimal Install   false
    Source volume      ID                                     Name
                       ecc68c2f-96a1-4862-bc86-14f47e5d9ed8   aa-1-bx-boot-1617035447000
    Created            2021-05-20T09:43:16+08:00
    Visibility         private
    File size(GB)      -
    Encryption         none
    Resource group     f22cf48f-8836-4527-9131-1d7c73ba85e9
    

Planification des changements de statut du cycle de vie des images personnalisées à l'aide de l'interface CLI

Lorsque vous importez une image personnalisée à l'aide de l'interface de ligne de commande (CLI), vous pouvez également planifier les changements de statut de cycle de vie de l'image personnalisée IBM Cloud VPC en même temps à l'aide des options de la commande ibmcloud is image-create.

Indiquez le nom de l'image personnalisée à créer à l'aide de la variable IMAGE_NAME et de la source à l'aide de l'option --source-volume pour indiquer que la source est un volume d'amorçage existant.

Pour planifier les propriétés deprecate-at ou obsolete-at, indiquez une date au format de date et d'heure ISO 8601 (YYYY-MM-DDThh:mm:ss+hh:mm).

  • YYYY est l'année à quatre chiffres.
  • MM est le mois à deux chiffres.
  • DD est le jour à deux chiffres.
  • T sépare les informations de date et d'heure.
  • hh correspond aux heures à deux chiffres.
  • mm est le nombre de minutes à deux chiffres.
  • +hh:mm ou -hh:mm est le fuseau horaire du temps universel coordonné.

Ainsi, la date du 30 septembre 2023 à 20:00 dans le fuseau horaire de la norme centrale de l'Amérique du Nord (CST) serait 2023-09-30T20:00:00-06:00

Lorsque vous planifiez la date et l'heure, vous ne pouvez pas utiliser la date et l'heure en cours. Par exemple, s'il s'agit de 8h00 le 12 juin 2024, la date et l'heure planifiées doivent être postérieures à 8h00 le 12 juin 2024. Si vous définissez à la fois les dates et heures deprecate-at et obsolete-at, la date deprecate-at doit être postérieure à la date et à l'heure obsolete-at.

ibmcloud is image-create IMAGE_NAME [--source-volume VOLUME_ID] [--deprecate-at YYYY-MM-DDThh:mm:ss+hh:mm] [--obsolete-at YYYY-MM-DDThh:mm:ss+hh:mm]

Création d'une image à partir d'un volume avec l'API

Créez des images personnalisées à partir de volumes d'amorçage Block Storage for VPC à l'aide d'un programme en effectuant des appels aux API REST VPC. Vous pouvez répertorier toutes les instances et tous les volumes, puis utiliser les détails du volume spécifique pour créer l'image.

Avant de commencer

Avant de commencer, vérifiez que vous avez configuré votre environnement d'API.

Création d'une image à partir d'un amorçage d'une instance à l'aide de l'API

  1. Localisez l'instance et le volume d'amorçage à partir de laquelle vous souhaitez créer une image. Obtenez la liste des instances disponibles avec la méthode list instance.

    curl -X GET "$vpc_api_endpoint/v1/instances?version=2024-06-11&generation=2" -H "Authorization: Bearer $iam_token"
    
  2. Notez l'ID d'instance et utilisez-le pour extraire les détails de l'instance.

    curl -X GET "$vpc_api_endpoint/v1/instances/$instance_id?version=2024-06-11&generation=2" -H "Authorization: Bearer $iam_token"
    

    La réponse contient le nom, l'ID et d'autres détails du volume d'amorçage dans la section volume_attachments.

    "volume_attachments": [
     {
      "device": {
        "id": "a8a15363-a6f7-4f01-af60-715e85b28141"
        },
      "href": "https://us-south.iaas.cloud.ibm.com/v1/instances/e402fa1b-96f6-4aa2-a8d7-703aac843651/volume_attachments/7389-a8a15363-a6f7-4f01-af60-715e85b28141",
      "id": "a8a15363-a6f7-4f01-af60-715e85b28141",
      "name": "my-boot-volume-attachment",
      "volume": {
        "crn": "crn:[...]",
        "href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/49c5d61b-41e7-4c01-9b7a-1a97366c6916",
        "id": "49c5d61b-41e7-4c01-9b7a-1a97366c6916",
        "name": "my-boot-volume"
        }
      }
    ]
    
  3. Si l'instance est en cours d'exécution, arrêtez-la en spécifiant l'action stop dans un appel POST /instances :

    curl -X POST \
    "$vpc_api_endpoint/v1/instances/{instance-id}/gen/actions?ersion=2024-06-11&generation=2"
    -H "Authorization: Bearer $iam_token"\
    -d '{"type":"stop"}'
    
  4. A l'aide de l'ID de volume d'amorçage, créez une image. Voir l'exemple suivant :

     curl -X POST "$vpc_api_endpoint/v1/images?version=2024-06-11&generation=2"
     -H "Authorization: Bearer $iam_token"
     -d '{
          "name": "my-image",
          "source_volume": {"id": "4fec84ef-baf9-405d-bf3b-9d5a60e068f7"}
          }`
    

    Dans l'exemple de réponse, source_volume indique le volume de démarrage utilisé pour créer l'image. Remarquez également que le chiffrement de l'image apparaît sous la forme none car le volume source utilisait le chiffrement par défaut IBM-managed encryption. Si vous avez utilisé votre propre clé racine, la réponse indique user-managed à la place.

    {
     "created_at": "2021-05-20T00:05:13.873893Z",
     "crn": "crn:[...]",
     "encryption": "none",
     "file": {},
     "href": "https://us-south.iaas.cloud.ibm.com/v1/images/4fec84ef-baf9-405d-bf3b-9d5a60e068f7",
     "id": "4fec84ef-baf9-405d-bf3b-9d5a60e068f7",
     "name": "test-ifv-boot-volume",
     "operating_system": {
       "architecture": "amd64",
       "display_name": "CentOS 8.x - Minimal Install (amd64)",
       "family": "CentOS",
       "href": "https://us-south.iaas.cloud.ibm.com/v1/operating_systems/centos-8-amd64",
       "name": "centos-8-amd64",
       "vendor": "CentOS",
       "version": "8.x - Minimal Install"
       },
     "resource_group": {
       "href": "https://us-south.iaas.cloud.ibm.com/v1/resource_groups/3fad3f2204eb4998c3964d254ffcd771",
       "id": "3fad3f2204eb4998c3964d254ffcd771",
       "name": "Default"
       },
     "status": "pending",
     "status_reasons": [],
     "visibility": "private",
     "source_volume":  {
       "id": "4fec84ef-baf9-405d-bf3b-9d5a60e068f7",
       "crn": "crn:[...]",
       "href": "",
       "name": "my-boot-volume"
       }
     }
    

Création d'une image à partir d'un volume et spécification de votre propre clé de chiffrement

  1. Comme décrit dans la section précédente, recherchez l'instance et les informations sur le volume d'amorçage. Arrêtez l'instance.

  2. Obtenez votre ID d'instance de service de gestion de clés et votre CRN de clé racine.

  3. Effectuez une demande d'API pour créer une image. Indiquez l'ID volume du CRN de la clé racine, comme illustré dans l'exemple suivant.

    curl -X POST "$vpc_api_endpoint/v1/images?version=2024-06-11&generation=2"
    -H "Authorization: Bearer $iam_token"
        -d '{
             "name": "my-encrypted-image",
             "source_volume": {"id": "4fec84ef-baf9-405d-bf3b-9d5a60e068f7"}
             "encryption_key":{"crn":"crn:[...key:...]"
            },
    

    La réponse comprend des informations sur la clé racine.

    {
     "created_at": "2021-05-20T00:05:13.873893Z",
     "crn": "crn:[...]",
     "encryption_key": {
       "crn": "crn:[...key:...]"
       },
     "encryption": "user_managed",
     "file": {},
     "href": "https://us-south.iaas.cloud.ibm.com/v1/images/4fec84ef-baf9-405d-bf3b-9d5a60e068f7",
     "id": "4fec84ef-baf9-405d-bf3b-9d5a60e068f7",
     "name": "test-ifv-boot-volume",
     "operating_system": {
       "architecture": "amd64",
       "display_name": "CentOS 8.x - Minimal Install (amd64)",
       "family": "CentOS",
       "href": "https://us-south.iaas.cloud.ibm.com/v1/operating_systems/centos-8-amd64",
       "name": "centos-8-amd64",
       "vendor": "CentOS",
       "version": "8.x - Minimal Install"
       },
     "resource_group": {
       "href": "https://us-south.iaas.cloud.ibm.com/v1/resource_groups/3fad3f2204eb4998c3964d254ffcd771",
       "id": "3fad3f2204eb4998c3964d254ffcd771",
       "name": "Default"
       },
     "status": "pending",
     "status_reasons": [],
     "visibility": "private",
     "source_volume":  {
       "id": "4fec84ef-baf9-405d-bf3b-9d5a60e068f7",
       "crn": "crn:[...]",
       "href": "",
       "name": "ifv-boot-vol"
       }
     }
    

Planification des changements de statut du cycle de vie d'une image personnalisée à l'aide de l'API

Lorsque vous créez une image à partir d'un volume à l'aide de l'interface de programme d'application (API), vous pouvez planifier les changements de statut de cycle de vie de l'image personnalisée en même temps.

name ne peut pas être utilisé par une autre image dans la région et les noms commençant par ibm- sont réservés aux images fournies par le système. Spécifiez la sous-propriété source.volume pour indiquer la source de l'image à partir du volume.

Pour planifier les propriétés deprecation_at ou obsolescence_at, indiquez une date au format de date et d'heure ISO 8601 (YYYY-MM-DDThh:mm:ss+hh:mm).

  • YYYY est l'année à quatre chiffres
  • MM est le mois à deux chiffres
  • DD est le jour à deux chiffres
  • T sépare les informations de date et d'heure
  • hh est le nombre d'heures à deux chiffres
  • mm est le nombre de minutes à deux chiffres
  • +hh:mm ou -hh:mm est le fuseau horaire du temps universel coordonné

Ainsi, la date du 30 septembre 2023 à 20:00 dans le fuseau horaire de la norme centrale de l'Amérique du Nord (CST) serait 2023-09-30T20:00:00-06:00

Lorsque vous planifiez la date et l'heure, vous ne pouvez pas utiliser la date et l'heure en cours. Par exemple, s'il s'agit de 8h00 le 12 juin 2024, la date et l'heure planifiées doivent être postérieures à 8h00 le 12 juin 2024. Si vous définissez à la fois les dates et heures deprecation_at et obsolescence_at, la date obsolescence_at doit être postérieure à la date et à l'heure deprecation_at.

curl -X POST "$vpc_api_endpoint/v1/images?version=2023-02-21&generation=2"\
-H "Authorization: Bearer $iam_token"\
-d '{
      "name": "test-ifv-boot-volume",
      "source_volume": {
    	  "id": "4fec84ef-baf9-405d-bf3b-9d5a60e068f7"
      },
      "deprecation_at": "2023-03-01T06:11:28+05:30",
      "obsolescence_at": "2023-12-31T06:11:28+05:30"
    }'

Etapes suivantes