Rechercher

3.4. Téléchargement de l'image Red Hat Enterprise Linux sur AWS

download PDF

Suivez les procédures de cette section pour télécharger votre image sur AWS.

3.4.1. Installation de l'interface de programmation AWS

La plupart des procédures requises pour gérer les clusters HA dans AWS incluent l'utilisation de la CLI AWS. Suivez les étapes suivantes pour installer la CLI AWS.

Conditions préalables

  • Vous avez créé un identifiant de clé d'accès AWS et une clé d'accès secrète AWS, et vous y avez accès. Pour obtenir des instructions et des détails, voir Configuration rapide de la CLI AWS.

Procédure

  1. Installez les outils de ligne de commande AWS à l'aide de la commande dnf.

    # dnf install awscli
  2. Utilisez la commande aws --version pour vérifier que vous avez installé la CLI AWS.

    $ aws --version
    aws-cli/1.19.77 Python/3.6.15 Linux/5.14.16-201.fc34.x86_64 botocore/1.20.77
  3. Configurez le client de ligne de commande AWS en fonction de vos informations d'accès à AWS.

    $ aws configure
    AWS Access Key ID [None]:
    AWS Secret Access Key [None]:
    Default region name [None]:
    Default output format [None]:

3.4.2. Création d'un seau S3

L'importation vers AWS nécessite un bac Amazon S3. Un bac Amazon S3 est une ressource Amazon dans laquelle vous stockez des objets. Dans le cadre du processus de téléchargement de votre image, vous créez un bac S3 et déplacez ensuite votre image vers le bac. Effectuez les étapes suivantes pour créer un seau.

Procédure

  1. Lancez la console Amazon S3.
  2. Cliquez sur Create Bucket. La boîte de dialogue Create Bucket apparaît.
  3. Dans la vue Name and region:

    1. Saisissez une adresse Bucket name.
    2. Saisissez une adresse Region.
    3. Cliquez sur Next.
  4. Dans la vue Configure options, sélectionnez les options souhaitées et cliquez sur Next.
  5. Dans la vue Set permissions, modifiez ou acceptez les options par défaut et cliquez sur Next.
  6. Examinez la configuration de votre seau.
  7. Cliquez sur Create bucket.

    Note

    Vous pouvez également utiliser l'interface de commande AWS pour créer un godet. Par exemple, la commande aws s3 mb s3://my-new-bucket crée un godet S3 nommé my-new-bucket. Pour plus d'informations sur la commande mb, reportez-vous à la référence des commandes de l'interface de commande AWS.

3.4.3. Création du rôle vmimport

Effectuez la procédure suivante pour créer le rôle vmimport, nécessaire à l'importation de VM. Pour plus d'informations, reportez-vous à la section Rôle du service d'importation de VM dans la documentation Amazon.

Procédure

  1. Créez un fichier nommé trust-policy.json et incluez la politique suivante. Enregistrez le fichier sur votre système et notez son emplacement.

    {
       "Version": "2012-10-17",
       "Statement": [
          {
             "Effect": "Allow",
             "Principal": { "Service": "vmie.amazonaws.com" },
             "Action": "sts:AssumeRole",
             "Condition": {
                "StringEquals":{
                   "sts:Externalid": "vmimport"
                }
             }
          }
       ]
    }
  2. Utilisez la commande create role pour créer le rôle vmimport. Indiquez le chemin d'accès complet à l'emplacement du fichier trust-policy.json. Attribuez le préfixe file:// au chemin d'accès. Par exemple :

    $ aws iam create-role --role-name vmimport --assume-role-policy-document file:///home/sample/ImportService/trust-policy.json
  3. Créez un fichier nommé role-policy.json et incluez la politique suivante. Remplacez s3-bucket-name par le nom de votre panier S3.

    {
       "Version":"2012-10-17",
       "Statement":[
          {
             "Effect":"Allow",
             "Action":[
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:ListBucket"
             ],
             "Resource":[
                "arn:aws:s3:::s3-bucket-name",
                "arn:aws:s3:::s3-bucket-name/*"
             ]
          },
          {
             "Effect":"Allow",
             "Action":[
                "ec2:ModifySnapshotAttribute",
                "ec2:CopySnapshot",
                "ec2:RegisterImage",
                "ec2:Describe*"
             ],
             "Resource":"*"
          }
       ]
    }
  4. Utilisez la commande put-role-policy pour attacher la politique au rôle que vous avez créé. Indiquez le chemin complet du fichier role-policy.json. Par exemple :

    $ aws iam put-role-policy --role-name vmimport --policy-name vmimport --policy-document file:///home/sample/ImportService/role-policy.json

3.4.4. Conversion et transfert de l'image vers S3

Suivez la procédure suivante pour convertir et pousser votre image vers S3. Les exemples sont représentatifs ; ils convertissent une image au format qcow2 en format raw. Amazon accepte les images aux formats OVA, VHD, VHDX, VMDK et raw. Voir Comment fonctionne l'importation/exportation de VM pour plus d'informations sur les formats d'image acceptés par Amazon.

Procédure

  1. Exécutez la commande qemu-img pour convertir votre image. Par exemple :

    # qemu-img convert -f qcow2 -O raw rhel-9.0-sample.qcow2 rhel-9.0-sample.raw
  2. Pousser l'image vers S3.

    $ aws s3 cp rhel-9.0-sample.raw s3://s3-bucket-name
    Note

    Cette procédure peut prendre quelques minutes. Une fois la procédure terminée, vous pouvez vérifier que votre image a bien été téléchargée dans votre panier S3 à l'aide de la console AWS S3.

3.4.5. Importation d'une image en tant qu'instantané

La procédure suivante permet d'importer une image en tant qu'instantané.

Procédure

  1. Créez un fichier pour spécifier un répertoire et un chemin d'accès pour votre image. Nommez le fichier containers.json. Dans l'exemple qui suit, remplacez s3-bucket-name par le nom de votre godet et s3-key par votre clé. Vous pouvez obtenir la clé de l'image à l'aide de la console Amazon S3.

    {
        "Description": "rhel-9.0-sample.raw",
        "Format": "raw",
        "UserBucket": {
            "S3Bucket": "s3-bucket-name",
            "S3Key": "s3-key"
        }
    }
  2. Importez l'image en tant qu'instantané. Cet exemple utilise un fichier Amazon S3 public ; vous pouvez utiliser la console Amazon S3 pour modifier les paramètres d'autorisation de votre panier.

    aws ec2 import-snapshot --disk-container file://containers.json

    Le terminal affiche un message tel que le suivant. Notez le ImportTaskID dans le message.

    {
        "SnapshotTaskDetail": {
            "Status": "active",
            "Format": "RAW",
            "DiskImageSize": 0.0,
            "UserBucket": {
                "S3Bucket": "s3-bucket-name",
                "S3Key": "rhel-9.0-sample.raw"
            },
            "Progress": "3",
            "StatusMessage": "pending"
        },
        "ImportTaskId": "import-snap-06cea01fa0f1166a8"
    }
  3. Suivez la progression de l'importation à l'aide de la commande describe-import-snapshot-tasks. Inclure la commande ImportTaskID.

    $ aws ec2 describe-import-snapshot-tasks --import-task-ids import-snap-06cea01fa0f1166a8

    Le message renvoyé indique l'état actuel de la tâche. Lorsqu'elle est terminée, Status affiche completed. Dans l'état, notez l'ID de l'instantané.

3.4.6. Création d'une AMI à partir de l'instantané téléchargé

Dans EC2, vous devez choisir une Amazon Machine Image (AMI) lorsque vous lancez une instance. Suivez la procédure suivante pour créer une AMI à partir de votre instantané téléchargé.

Procédure

  1. Accédez au tableau de bord AWS EC2.
  2. Sous Elastic Block Store, sélectionnez Snapshots.
  3. Recherchez l'identifiant de votre instantané (par exemple, snap-0e718930bd72bcda0).
  4. Cliquez avec le bouton droit de la souris sur l'instantané et sélectionnez Create image.
  5. Nommez votre image.
  6. Sous Virtualization type, choisissez Hardware-assisted virtualization.
  7. Cliquez sur Create. Dans la note concernant la création d'images, il y a un lien vers votre image.
  8. Cliquez sur le lien de l'image. Votre image apparaît sous Images>AMIs.

    Note

    Vous pouvez également utiliser la commande AWS CLI register-image pour créer une AMI à partir d'un instantané. Voir register-image pour plus d'informations. Voici un exemple.

    $ aws ec2 register-image \
        --name "myimagename" --description "myimagedescription" --architecture x86_64 \
        --virtualization-type hvm --root-device-name "/dev/sda1" --ena-support \
        --block-device-mappings "{\"DeviceName\": \"/dev/sda1\",\"Ebs\": {\"SnapshotId\": \"snap-0ce7f009b69ab274d\"}}"

    Vous devez spécifier le volume de périphérique racine /dev/sda1 en tant que root-device-name. Pour obtenir des informations conceptuelles sur le mappage des périphériques pour AWS, voir Exemple de mappage des périphériques en bloc.

3.4.7. Lancement d'une instance à partir de l'AMI

Suivez la procédure suivante pour lancer et configurer une instance à partir de l'AMI.

Procédure

  1. Dans le tableau de bord AWS EC2, sélectionnez Images puis AMIs.
  2. Cliquez avec le bouton droit de la souris sur votre image et sélectionnez Launch.
  3. Choisissez un site Instance Type qui répond ou dépasse les exigences de votre charge de travail.

    Voir Amazon EC2 Instance Types pour plus d'informations sur les types d'instances.

  4. Cliquez sur Next: Configure Instance Details.

    1. Saisissez l'adresse Number of instances que vous souhaitez créer.
    2. Pour Network, sélectionnez le VPC que vous avez créé lors de la configuration de votre environnement AWS. Sélectionnez un sous-réseau pour l'instance ou créez-en un nouveau.
    3. Sélectionnez Enable pour Auto-assign Public IP.

      Note

      Il s'agit des options de configuration minimales nécessaires pour créer une instance de base. Examinez les options supplémentaires en fonction des exigences de votre application.

  5. Cliquez sur Next: Add Storage. Vérifiez que le stockage par défaut est suffisant.
  6. Cliquez sur Next: Add Tags.

    Note

    Les balises peuvent vous aider à gérer vos ressources AWS. Pour plus d'informations sur les balises, consultez la section Baliser vos ressources Amazon EC2.

  7. Cliquez sur Next: Configure Security Group. Sélectionnez le groupe de sécurité que vous avez créé lors de la configuration de votre environnement AWS.
  8. Cliquez sur Review and Launch. Vérifiez vos sélections.
  9. Cliquez sur Launch. Vous êtes invité à sélectionner une paire de clés existante ou à créer une nouvelle paire de clés. Sélectionnez la paire de clés que vous avez créée lors de la configuration de votre environnement AWS.

    Note

    Vérifiez que les droits d'accès à votre clé privée sont corrects. Utilisez les options de la commande chmod 400 <keyname>.pem pour modifier les autorisations, si nécessaire.

  10. Cliquez sur Launch Instances.
  11. Cliquez sur View Instances. Vous pouvez nommer la ou les instances.

    Vous pouvez maintenant lancer une session SSH vers votre/vos instance(s) en sélectionnant une instance et en cliquant sur Connect. Utilisez l'exemple fourni pour A standalone SSH client.

    Note

    Vous pouvez également lancer une instance à l'aide de la CLI AWS. Pour plus d'informations, voir Lancer, lister et terminer les instances Amazon EC2 dans la documentation d'Amazon.

3.4.8. Attacher des abonnements Red Hat

Pour attacher votre abonnement Red Hat à une instance RHEL, suivez les étapes suivantes.

Conditions préalables

  • Vous devez avoir activé vos abonnements.

Procédure

  1. Enregistrez votre système.

    # subscription-manager register --auto-attach
  2. Joignez vos abonnements.

3.4.9. Configuration de l'enregistrement automatique sur AWS Gold Images

Pour accélérer et faciliter le déploiement des machines virtuelles RHEL 8 sur Amazon Web Services (AWS), vous pouvez configurer les images Gold de RHEL 8 pour qu'elles soient automatiquement enregistrées dans le gestionnaire d'abonnements Red Hat (RHSM).

Conditions préalables

  • Vous avez téléchargé la dernière Gold Image RHEL 8 pour AWS. Pour plus d'informations, voir Utilisation des Gold Images sur AWS.

    Note

    Un compte AWS ne peut être rattaché qu'à un seul compte Red Hat à la fois. Par conséquent, assurez-vous qu'aucun autre utilisateur n'a besoin d'accéder au compte AWS avant de l'attacher à votre compte Red Hat.

Procédure

  1. Téléchargez l'image Gold sur AWS. Pour obtenir des instructions, voir Téléchargement de l'image Red Hat Enterprise Linux vers AWS.
  2. Créez des machines virtuelles à l'aide de l'image téléchargée. Elles seront automatiquement abonnées au RHSM.

Vérification

  • Dans une VM RHEL 9 créée à l'aide des instructions ci-dessus, vérifiez que le système est enregistré dans le RHSM en exécutant la commande subscription-manager identity. Sur un système enregistré avec succès, cette commande affiche l'UUID du système. Par exemple :

    # subscription-manager identity
    system identity: fdc46662-c536-43fb-a18a-bbcb283102b7
    name: 192.168.122.222
    org name: 6340056
    org ID: 6340056
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.