Concepts avancés

Création d’une Amazon Machine Image (AMI) VPX dans SC2S

Contributeurs

Auteur : Jill Fetscher, Architecte

SC2S est une instanciation AWS isolée (air-gapped) sans accès à l’AWS Marketplace. Toutes les Amazon Machine Images (AMI) doivent être téléchargées manuellement dans l’environnement à l’aide de l’outil vmimport. En raison de la nature de l’appliance Citrix ADC VPX, le fichier image est trop volumineux pour utiliser l’outil vmimport. L’AMI VPX doit être créée de manière à être amorçable pour une utilisation future. Nous avons créé la méthode suivante spécifiquement pour SC2S, mais elle peut être utilisée pour de futurs cas d’utilisation de cette nature, où aucun Marketplace n’existe, ou aucune offre d’AMI VPX n’est disponible sur le Marketplace.

Créer un VPX dans SC2S : Étapes côté bas (AWS commercial)

  1. Créez un VPC et un sous-réseau dans UC2S (commercial) en utilisant le même bloc CIDR que le VPC où réside le Citrix ADC dans SC2S. (par exemple, créez un VPC de taille 10.0.0.0/16, avec un seul sous-réseau public de taille 10.0.0.0/24 à l’aide de l’assistant VPC.)

    Cela peut être fait de deux manières :

    • Créez un VPC de test dans SC2S avec le CIDR et le sous-réseau de base
    • Copiez le CIDR et le sous-réseau utilisés dans SC2S

    Remarque :

    Pour C2S, la création de VPC est effectuée via un service et un espace IP est automatiquement alloué à partir du super-réseau. Dans ce cas, la deuxième méthode est nécessaire. Pour GovCloud, attendez d’autres instructions ou téléchargez la dernière version de VPX depuis le Marketplace.

    image du tableau de bord VPC

    image de l'assistant de configuration VPC, étape 1

    image de l'assistant VPC, étape 2

  2. Déployez une instance EC2 à partir de l’AMI Citrix ADC dans AWS Marketplace. L’instance doit être sous licence client. Utilisez une instance non basée sur Nitro (par exemple, m4.xlarge).

    image de l’étape 1, choisir l’AMI(/fr-fr/advanced-concepts/media/vpx-ami-section-1-step-2-1.png)

    image de l’étape 2, choisir le type d’instance(/fr-fr/advanced-concepts/media/vpx-ami-section-1-step-2-2.png)

    Choisissez le VPC que vous avez créé lors des étapes précédentes. Désactivez Attribuer automatiquement une IP publique. image de l’étape 3, configurer les détails de l’instance(/fr-fr/advanced-concepts/media/vpx-ami-section-1-step-2-3.png)

    Nommez l’instance avec un nom facilement reconnaissable. Nous allons créer de nombreuses instances lors des étapes suivantes et il est nécessaire d’identifier chaque instance pour une configuration ultérieure.

    Le groupe de sécurité se remplit automatiquement. Cliquez sur Suivant pour les étapes restantes du lancement de l’instance.

    image de l’assistant(/fr-fr/advanced-concepts/media/vpx-ami-section-1-step-2-4.png)

  3. Créez un hôte bastion Windows Server 2019 ou 2016 Base pour atteindre votre instance VPX.

    Cette instance peut être un m4.xlarge, et doit être construite dans le même VPC et la même AZ que le Citrix ADC, avec une IP publique attribuée automatiquement. Le volume racine nécessite un minimum de 45 GiB, SSD à usage général (gp2).

    Remarque :

    Si l’environnement permet la création d’adresses IP élastiques (EIP), vous pouvez ignorer la création de l’hôte bastion, et l’instance VPX peut être connectée directement depuis le réseau ou Internet. Nous recommandons l’utilisation d’un hôte bastion à des fins de sécurité et en raison du manque de disponibilité des EIP dans les environnements isolés.

    image de l’étape 1, choisir l’AMI(/fr-fr/advanced-concepts/media/vpx-ami-section-1-step-3-1.png)

    Nommez l’instance de manière reconnaissable (par exemple, SC2S : WS2016 Bastion Low).

    image de l’étape 5, ajouter des balises(/fr-fr/advanced-concepts/media/vpx-ami-section-1-step-3-2.png)

    Pour simplifier, créez un groupe de sécurité pour autoriser Tout le trafic. Vous pourrez restreindre ce groupe de sécurité plus tard.

    image de l’étape 6, configurer le groupe de sécurité(/fr-fr/advanced-concepts/media/vpx-ami-section-1-step-3-3.png)

    Une fois l’instance prête, connectez-vous à la machine via RDP en utilisant l’adresse IP publique. Téléchargez ensuite PuTTY et WinSCP, et copiez la paire de clés utilisée pour créer l’instance VPX. Cela nécessite la conversion du fichier .pem en .ppk, à l’aide de PuTTYgen. Dans le Gestionnaire de serveur, désactivez le Pare-feu Windows et la Sécurité renforcée d’Internet Explorer. À l’aide de PuTTY, vérifiez que vous pouvez vous connecter en SSH à l’appliance Citrix ADC nouvellement déployée. Notez le mot de passe nsroot de l’instance. Par défaut, il s’agit de l’ID d’instance AWS. Notez l’adresse IP privée de l’instance, car elle sera nécessaire à une étape ultérieure. À ce stade, vous disposez d’une appliance Citrix ADC fonctionnelle.

    Remarque :

    Ne configurez pas ce VPX ! Connectez-vous simplement en tant que nsroot pour vérifier la fonctionnalité.

  4. Arrêtez l’instance Citrix ADC depuis la console AWS. Détachez le volume racine EBS de l’instance Citrix ADC.

    nouvelle image EC2

    Pour détacher le volume racine, cliquez sur le périphérique racine /dev/sda1, puis sur l’ID du volume. Dans l’onglet Volume, sélectionnez le volume, nommez-le de manière reconnaissable (par exemple, SC2S: Commercial Root Vol), et notez l’ID du volume. Cliquez sur Actions > Détacher le volume > OK. L’état du volume doit maintenant être Disponible.

    image des détails de l'instance

  5. Déployez une nouvelle instance Amazon Linux EC2 (Amazon Linux 2 AMI (HVM), type de volume SSD, 64 bits, basée sur EBS, compatible ENA). Cette instance doit être du même type que l’instance VPX précédemment déployée (par exemple m4.xlarge), et doit se trouver dans le même VPC et sous-réseau, avec le paramètre « Attribution automatique d’IP publique » désactivé. Nommez l’instance de manière reconnaissable (par exemple SC2S: Linux Low). Configurez le groupe de sécurité pour autoriser tout le trafic pour l’instant. Une fois l’instance lancée, arrêtez-la.

    image d'ajout de balises

  6. Attachez le volume racine EBS détaché du VPX à l’instance Linux EC2.

    nouvelle image EC2

    Choisissez l’instance Linux que vous avez créée en cliquant sur Instance > Attacher.

    image d'attachement de volume

  7. Créez un volume d’une capacité supérieure à celle du volume racine VPX. La capacité du volume racine du VPX est de 30 GiB. Créez le volume avec une capacité de 35 GiB. Définissez le type de volume sur SSD à usage général (gp2) et nommez-le de manière reconnaissable (par exemple, SC2S: Copy Low Vol). Attachez le nouveau volume à l’instance Linux.

    créer et attacher des volumes

    créer et attacher des volumes

    créer et attacher des volumes

  8. Allumez l’instance Linux et connectez-vous-y via SSH depuis l’hôte bastion en utilisant le fichier de clé privée. Connectez-vous en tant que ec2-user*.

  9. Créez une partition sur le NOUVEAU volume EBS.

    Remarque :

    Dans cet exemple, le volume racine VPX SC2S: Commercial Root Vol est /dev/sdf et le volume de 35 GiB nouvellement créé SC2S: Copy Low Vol est /dev/sdg. La partition doit être créée uniquement sur SC2S: Copy Low Vol. Dans la console AWS, ces périphériques de bloc sont désignés par des liens symboliques. Dans l’instance Linux, /dev/sdf et /dev/sdg sont respectivement appelés /dev/xvdf et /dev/xvdg.

    Dans l’interface de ligne de commande Linux, vérifiez qu’il n’y a pas de système de fichiers. La réponse doit être data uniquement.

    sudo file –s /dev/xvdg
    <!--NeedCopy-->
    

    Créez un système de fichiers.

    sudo mkfs -t xfs /dev/xvdg
    <!--NeedCopy-->
    

    Créez un point de montage et montez le périphérique.

    sudo mkdir /copy
    <!--NeedCopy-->
    
    sudo mount  /dev/svdg /copy
    <!--NeedCopy-->
    

    Vérifiez que le périphérique a été monté, et qu’il y a trois périphériques (par exemple xvda, xvdf et xvdg).

    lsblk
    <!--NeedCopy-->
    

    Créez la partition en utilisant fdisk, en choisissant n pour nouveau, p pour la partition principale, 1 pour le numéro de partition, et les valeurs par défaut pour le premier et le dernier secteur (ENTRÉE, ENTRÉE). Appuyez sur CTRL+C pour quitter.

    sudo fdisk /dev/xvdg
    >n
    >p
    >1
    >enter
    >enter
    >CTRL+C
    <!--NeedCopy-->
    
  10. Copiez le volume racine VPX vers le nouveau volume EBS au niveau du bloc (par exemple, copiez SC2S: Commercial Root Vol vers SC2S: Copy Low Vol). Le fichier créé ici, citrixADC.img, peut ensuite être déplacé vers l’environnement SC2S.

    sudo dd if=/dev/xvdf of=/copy/citrixADC.img status=progress
    <!--NeedCopy-->
    

    Cette copie peut prendre plusieurs heures.

    Une fois la copie du fichier terminée, vérifiez que le fichier se trouve dans le répertoire /copy, et modifiez les autorisations du fichier pour permettre la lecture, l’écriture et l’exécution.

    ls /copy
    sudo chmod 777 /copy/citrixADC.img
    <!--NeedCopy-->
    
  11. Transférez le fichier citrixADC.img via WinSCP vers un emplacement où il peut être transféré (DTO) vers le côté haut. Si nécessaire, le bastion est suffisamment grand pour y copier le fichier image.

Créer un VPX dans SC2S - Étapes côté haut

  1. Créez un VPC avec le même bloc CIDR et le même sous-réseau que ceux de l’étape 1 pour le côté bas, ou utilisez le VPC existant. Dans cet exemple, le CIDR du VPC est 10.0.0.0/16 et l’espace IP du sous-réseau est 10.0.0.0/16. Ceci est extrêmement important, car le VPX final créé doit avoir la même adresse IP que l’original provenant du Marketplace commercial.

    Image de substitution(/fr-fr/advanced-concepts/media/vpx-ami-section-2-step-1-1.png)

  2. Dans le nouveau VPC et sous-réseau, lancez une instance d’Amazon Linux (Amazon Linux 2 AMI (HVM), type de volume SSD, basé sur EBS, ENA-Enabled, 64 bits) du MÊME type d’instance que l’instance Citrix ADC déployée côté bas (par exemple m4.xlarge). Nommez l’instance de manière reconnaissable (par exemple SC2S : Linux High). Lorsque l’instance est prête, éteignez-la.

    Image de substitution(/fr-fr/advanced-concepts/media/vpx-ami-section-2-step-2-1.png)

  3. Ajoutez deux volumes EBS d’une capacité supérieure à la taille du fichier transféré (par exemple 35 GiB). Ces volumes doivent être du même type SSD (gp2) que celui créé côté bas.
    1. Le premier volume est destiné à la copie depuis le côté bas. Nommez le volume de manière reconnaissable (par exemple « SC2S : Copy High Vol »). Attachez ce volume à la nouvelle instance Linux dans SC2S en tant que /dev/sdf. Ceci est le lien symbolique pour /dev/xvdf sur l’instance.

    Image de substitution(/fr-fr/advanced-concepts/media/vpx-ami-section-2-step-3-1.png)

    1. Le deuxième volume devient le volume racine du nouveau VPX. Nommez le volume de manière reconnaissable (par exemple « SC2S : Final VPX Vol »). Attachez ce volume à la nouvelle instance Linux dans SC2S en tant que /dev/sdg. Ceci est le lien symbolique pour /dev/xvdg sur l’instance.

    Image de substitution(/fr-fr/advanced-concepts/media/vpx-ami-section-2-step-3-2.png)

    L’instance dispose maintenant de trois périphériques de bloc attachés, y compris le périphérique racine. Mettez l’instance sous tension.

    Image de substitution(/fr-fr/advanced-concepts/media/vpx-ami-section-2-step-3-3.png)

  4. Créez un hôte bastion de base Windows Server 2019 ou 2016 côté haut de la même manière que le bastion côté bas. Cette instance doit se trouver dans le VPC et le sous-réseau nouvellement créés, et doit avoir au moins 45 GiB pour les transferts de fichiers. Définissez « Attribution automatique d’IP publique » sur activé. Nommez l’instance de manière reconnaissable (par exemple « SC2S : WS2016 Bastion_High ») et configurez le groupe de sécurité pour autoriser « Tout le trafic » pour le moment.

  5. Une fois l’hôte bastion prêt, connectez-vous à la machine via RDP en utilisant l’IP publique, téléchargez PuTTY et WinSCP, et copiez la paire de clés utilisée pour créer l’instance VPX. Cela nécessite la conversion du fichier .pem en .ppk, à l’aide de PuTTYgen. Dans le Gestionnaire de serveur, désactivez le Pare-feu Windows et la Sécurité renforcée d’Internet Explorer pour le moment.

  6. Copiez le fichier citrixADC.img sur le nouvel hôte bastion.

  7. Démarrez une session PuTTY vers la nouvelle instance Linux (par exemple « SC2S : Linux High ») depuis l’hôte bastion, en utilisant la clé privée AWS avec le nom d’utilisateur ec2-user.

  8. Utilisez lsblk pour vérifier que tous les périphériques sont présents sur l’instance.

    espace réservé pour l'image

  9. Vérifiez que le périphérique /dev/xvdf n’a pas de système de fichiers, puis créez-en un.

    Remarque :

    NE créez PAS de système de fichiers sur le périphérique /dev/xvdg.

    sudo file –s /dev/xvdf
    sudo mkfs –t xfs /dev/xvdf
    <!--NeedCopy-->
    

    espace réservé pour l'image

  10. Créez un point de montage pour le périphérique, montez le périphérique et vérifiez que le point de montage du volume est /copy.

    sudo mkdir /copy
    sudo mount /dev/xvdf /copy
    lsblk
    <!--NeedCopy-->
    

    espace réservé pour l'image

  11. Créez une partition à l’aide de fdisk.

    sudo fdisk /dev/xvdf
     >n
     >p
     >1
     >enter
     >enter
     >CTRL+C
    <!--NeedCopy-->
    

    espace réservé pour l'image

  12. Modifiez les autorisations sur le répertoire /copy.

    sudo chmod 777 /copy
    <!--NeedCopy-->
    

    espace réservé pour l'image

  13. À l’aide de WinSCP sur l’hôte bastion, connectez-vous à l’instance Linux. Copiez le fichier citrixADC.img dans le répertoire /copy. Une fois le fichier copié, modifiez les autorisations pour autoriser la lecture, l’écriture et l’exécution pour tous depuis la console WinSCP.

  14. Dans l’interface de ligne de commande Linux, copiez le fichier image sur le périphérique /dev/xvdg à l’aide de la commande suivante :

    sudo dd if=/copy/citrixADC.img of=/dev/xvdg status=progress
    <!--NeedCopy-->
    

    espace réservé pour l'image

  15. Une fois la copie terminée, exécutez la commande lsblk pour vérifier que les partitions du Citrix ADC apparaissent sur le périphérique /dev/xvdg.

    lsblk
    <!--NeedCopy-->
    

    espace réservé pour l'image

  16. Éteignez l’instance Linux et détachez le volume /dev/xvdg (/dev/sdg) (par exemple « SC2S : Volume VPX final »).

    espace réservé pour l'image

    espace réservé pour l'image

  17. Déployez une nouvelle instance Linux du MÊME type d’instance que le VPX côté bas, dans le même VPC et sous-réseau que celui créé côté haut (AMI Amazon Linux 2 (HVM), type de volume SSD, basé sur EBS, compatible ENA, 64 bits, m4.xlarge, groupe de sécurité configuré pour autoriser « Tout le trafic »). Pendant la configuration, définissez l’adresse IP sur la MÊME que celle du VPX côté bas, qui a été notée dans la section précédente de ce document. Une fois l’instance prête, éteignez-la.

    espace réservé pour l'image

  18. Détachez le volume racine de l’instance Linux nouvellement déployée et attachez l’instance détachée (par exemple « SC2S : Volume VPX final »). Lors de l’attachement, spécifiez le périphérique comme volume racine (c’est-à-dire, /dev/xvda).

    espace réservé pour l'image

  19. Mettez l’instance sous tension. À l’aide de l’hôte bastion côté haut, connectez-vous via PuTTY/SSH à l’instance pour vérifier la fonctionnalité du VPX. Connectez-vous en tant que nsroot avec le mot de passe de l’ID d’instance noté dans la section précédente de ce document, et exécutez une commande simple.

    sh version
    <!--NeedCopy-->
    

    espace réservé pour l'image

Création d’une AMI à partir de l’instance VPX lancée

  1. Connectez-vous à l’instance Citrix ADC. Accédez au shell pour effectuer les modifications nécessaires en tant que root.

    shell
    <!--NeedCopy-->
    

    espace réservé pour l'image

  2. Supprimez manuellement et de manière forcée et récursive les répertoires et fichiers suivants du logiciel ADC. Pour supprimer manuellement les fichiers et répertoires, ajoutez rm –rf devant chacun d’eux. ‘/nsconfig/ns.conf’ ‘/nsconfig/ssh/’ ‘/nsconfig/ssl/’ ‘/nsconfig/aws_bootstrap’ ‘/nsconfig/rainman.conf’ ‘/var/nslog’ ‘/var/log/messages’ ‘/var/log/.log’ ‘/var/core/’ ‘/nsconfig/.AWS/’ ‘/var/db’ ‘/etc/resolv.conf’ ‘/flash/BUILD’ ‘/mpsconfig/pgxl/.ssh/id_rsa.pub’ ‘/var/pubkey/nsroot/.ssh/authorized_keys’ ‘/var/pubkey/root/.ssh/authorized_keys’

    Espace réservé pour l'image : rm -rf

    ou exécutez ce script :

    #!/bin/sh -x
    rm -rf    /nsconfig/ns.conf*
    rm -rf    /nsconfig/ssh/*
    rm -rf    /nsconfig/ssl/*
    rm -rf    /nsconfig/aws_bootstrap
    rm -rf    /nsconfig/rainman.conf
    rm -rf    /var/nslog
    rm -rf    /var/log/messages*
    rm -rf    /var/log/*.log
    rm -rf    /var/core/*
    rm -rf    /nsconfig/.AWS/
    rm -rf    /var/db
    rm -rf    /etc/resolv.conf
    rm -rf    /flash/BUILD
    rm -rf    /mpsconfig/pgxl/.ssh/id_rsa.pub
    rm -rf    /var/pubkey/nsroot/.ssh/authorized_keys
    rm -rf    /var/pubkey/root/.ssh/authorized_keys
    <!--NeedCopy-->
    
  3. Modifiez les autorisations du répertoire /flash/nsconfig à 755.

    chmod 755 /flash/nsconfig
    <!--NeedCopy-->
    

    Espace réservé pour l'image

  4. Vérifiez qu’il ne reste aucune clé résiduelle. Si c’est le cas, supprimez-les de manière forcée et récursive.

    find / -type f -name “authorized*”
    rm -rf <filename>
    <!--NeedCopy-->
    

    Espace réservé pour l'image

  5. Vérifiez qu’aucune licence résiduelle n’existe dans /nsconfig/license. Si c’est le cas, supprimez-les de manière forcée et récursive.

    Remarque :

    Il y aura d’autres répertoires et fichiers dans ce dossier (par exemple SSL et XML), ne supprimez les fichiers de licence que s’ils sont présents.

    ls /nsconfig/license
    ls /nsconfig/license/ssl
    ls /nsconfig/license/xml
    <!--NeedCopy-->
    

    Espace réservé pour l'image

  6. Éteignez la machine depuis la console AWS. Une fois l’instance arrêtée, créez une AMI à partir de l’instance.

    Espace réservé pour l'image

    Nommez l’instance de manière reconnaissable par TOUS, car elle est partagée publiquement avec tous les administrateurs de SC2S (par exemple, « Citrix ADC VPX 13.0–47.24 »).

    Espace réservé pour l'image

  7. Une fois l’AMI prête, déployez une instance à partir de celle-ci pour vérifier son bon fonctionnement.

    Image de substitution(/fr-fr/advanced-concepts/media/vpx-ami-section-3-step-7-1.png)

  8. Définissez les autorisations sur l’AMI sur Public, afin qu’elle soit disponible pour tous les administrateurs de SC2S.

Pour passer à une nouvelle version

  • Pour les VPX Citrix ADC existants dans SC2S : Mettez à niveau le VPX à l’aide du logiciel de mise à niveau disponible sur https://citrix.com/downloads, DTO le fichier vers le côté haut. Suivez les instructions de Mettre à niveau une appliance autonome Citrix ADC pour l’installation. La méthode de mise à niveau recommandée est d’utiliser la ligne de commande.

  • Pour les nouveaux VPX Citrix ADC dans SC2S : Créez une AMI à partager publiquement. Lancez une instance à partir de l’AMI existante, mettez à niveau la machine comme décrit dans la section précédente, et effectuez les étapes de la section « Création d’une AMI à partir de l’instance VPX lancée » dans ce document.

Création d’une Amazon Machine Image (AMI) VPX dans SC2S