

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Blocs d’applications personnalisés
<a name="custom-app-blocks"></a>

Les instances de streaming de flotte Elastic utilisent les applications qui sont installées sur des fichiers de disque dur virtuel (VHD) stockés dans un compartiment Amazon S3 de votre compte. Les blocs d’applications avec mise en package personnalisée vous permettent de créer votre propre fichier VHD et de le charger dans un compartiment Amazon S3 de votre compte.

**Topics**
+ [

# Création du VHD
](create-vhd.md)
+ [

# Créez le script de configuration pour le VHD dans Amazon Applications WorkSpaces
](create-setup-script.md)
+ [

# Création d’un bloc d’applications personnalisé
](create-app-block.md)
+ [

# Mise à jour du bloc d’applications, du VHD et du script de configuration
](update-app-block.md)

# Création du VHD
<a name="create-vhd"></a>

Un VHD est un fichier unique qui, une fois monté sur le système d’exploitation, est traité comme un disque dur. Le VHD peut être monté sous forme de lettre de lecteur, sur un chemin de dossier, ou les deux. Une fois le VHD monté, vous pouvez le traiter comme n’importe quel autre disque dur, notamment en installant votre application ou en y copiant les fichiers dont l’utilisateur aura besoin.

Pour créer le bloc d’applications, vous devez créer le VHD, y installer vos applications, puis le détacher. Une fois détaché, vous pouvez tester votre VHD sur un autre PC, une instance EC2 ou un générateur d'images d' WorkSpaces applications pour vérifier que les applications fonctionnent comme prévu. Une fois que vous avez terminé, chargez-le dans un compartiment Amazon S3 de votre compte et créez le bloc d’applications.

**Note**  
Cette page décrit l'utilisation d'un disque dur virtuel pour diffuser votre application ; toutefois, l'instance de streaming WorkSpaces Applications téléchargera n'importe quel objet depuis Amazon S3. L’objet que vous stockez dans Amazon S3 peut également être un fichier zip, le programme d’installation d’une application ou l’exécutable de l’application lui-même. Vous pouvez utiliser le script de configuration pour le configurer correctement sur l’instance de streaming avant qu’un utilisateur ne lance son application.  
L'instance de streaming WorkSpaces Applications attend jusqu'à 120 secondes que le téléchargement du VHD soit terminé avant que le script de configuration ne s'exécute. Si le téléchargement du VHD n’est pas terminé dans ce délai, le téléchargement s’arrête et le script de configuration ne s’exécute pas.   
Nous recommandons une taille maximale de 1,5 gigaoctet pour le VHD. Vous pouvez éventuellement réduire la taille du VHD en le compressant. Vous devez utiliser le script de configuration pour le décompresser avant de le monter, car le fichier doit être entièrement téléchargé depuis Amazon S3 avant de pouvoir être monté et que l’application soit lancée. VHDsAugmentez le temps nécessaire au lancement de l'application et au début de la session de streaming.

**Pour créer un VHD pour Microsoft Windows**

1. À partir d’un PC Windows ou d’une instance Windows Amazon Elastic Compute Cloud (Amazon EC2), ouvrez une invite de commande avec des privilèges d’administration.

1. Lancez l’utilitaire Microsoft **diskpart** en entrant la commande suivante :

   **diskpart**

1. Créez le fichier VHD non formaté et non initialisé en saisissant la commande suivante, où *<maximum file size>* est la taille du fichier VHD, en Mo :

   **create vdisk file=C:\$1path\$1to\$1new\$1file.vhdx maximum=*<maximum file size>* type=expandable **

1. Sélectionnez le disque VHD nouvellement créé en entrant la commande suivante :

   **select vdisk file=C:\$1path\$1to\$1new\$1file.vhdx**

1. Attachez le VHD nouvellement créé en entrant la commande suivante :

   **attach vdisk**

1. Initialisez le VHD nouvellement créé en entrant la commande suivante :

   **convert mbr**

1. Créez la partition principale couvrant l’intégralité du VHD en entrant la commande suivante :

   **create partition primary**

1. Formatez la partition nouvellement créée en entrant la commande suivante :

   **format fs=ntfs quick**

1. Vous pouvez monter le VHD nouvellement créé sur une lettre de lecteur inutilisée, sur un chemin de dossier du volume racine ou sur les deux.

   Pour monter une lettre de lecteur, saisissez : **assign letter=*<unused drive letter>***

   Pour monter un dossier, saisissez : **assign mount=*C:\$1path\$1to\$1empty\$1folder\$1to\$1mount\$1***
**Note**  
Pour effectuer le montage sur un chemin de dossier, le dossier doit déjà exister et il doit être vide.

1. Vous pouvez maintenant installer votre application sur le VHD en utilisant la lettre du lecteur ou le chemin de montage de dossier choisi à l’étape 9.

Une fois que vous avez terminé d’installer vos applications sur le VHD, vous devez détacher celui-ci pour pouvoir le charger en toute sécurité dans un compartiment Amazon S3.

**Pour détacher un VHD pour Microsoft Windows**

1. Lancez l’utilitaire Microsoft diskpart en entrant la commande suivante :

   **diskpart**

1. Sélectionnez le VHD en entrant la commande suivante :

   **select vdisk file=*C:\$1path\$1to\$1new\$1file.vhdx***

1. Détachez le VHD en entrant la commande suivante :

   **detach vdisk**

1. Le VHD a maintenant été détaché et peut être testé sur un autre PC Windows, une instance Amazon EC2 ou WorkSpaces un générateur d'images d'applications.

**Pour créer un VHD pour Linux**

1. Ouvrez un terminal :
   + Pour Amazon Linux 2 : utilisez une instance EC2, le générateur d'images d' WorkSpaces applications ou une solution WorkSpaces alimentée par Amazon Linux 2
   + Pour Ubuntu Pro 24.04 LTS : utilisez une instance EC2 ou WorkSpaces alimentée par Ubuntu Pro

1. Créez le fichier VHD non formaté et non initialisé :

   **dd if=/dev/zero of=*<name of file>* bs=*<size of VHD>* count=1**

1. Ajoutez un système de fichiers au VHD créé en entrant la commande suivante :

   **sudo mkfs -t ext4 *<name of file>***
**Note**  
Un message indiquant que le fichier n’est pas un périphérique spécial de stockage en mode bloc peut s’afficher. Vous pouvez quand même choisir de continuer.

1. Créez un dossier vide à utiliser comme point de montage en entrant la commande suivante :

   **sudo mkdir */path/to/mount/point***

1. Montez le VHD nouvellement créé sur un chemin de système de fichiers en exécutant la commande suivante :

   **sudo mount -t auto -o loop *<name of file>* */path/to/mount/point***

1. Vous pouvez maintenant installer votre application sur le VHD en utilisant le chemin de montage de dossier choisi à l’étape 4.
**Note**  
Les autorisations par défaut pour les fichiers et les dossiers créés sur le VHD peuvent empêcher les utilisateurs non administrateurs de lancer des applications ou de lire des fichiers. Vérifiez les autorisations et modifiez-les si nécessaire.

Une fois que vous avez terminé d’installer vos applications sur le VHD, vous devez détacher celui-ci pour pouvoir le charger en toute sécurité dans un compartiment Amazon S3.

**Pour détacher un VHD pour Linux**

1. Ouvrez une session de terminal et entrez la commande suivante :

   **sudo umount */path/to/mount/point***

1. Le VHD a maintenant été détaché et peut être testé sur une autre instance Amazon EC2 Amazon Linux 2/Ubuntu Pro 24.04 LTS, le générateur d'images Amazon Linux WorkSpaces 2 Applications ou Amazon Linux 2/Ubuntu Personal. WorkSpaces 

# Créez le script de configuration pour le VHD dans Amazon Applications WorkSpaces
<a name="create-setup-script"></a>

WorkSpaces Les applications utilisent un script de configuration que vous fournissez pour monter le disque dur virtuel avant le lancement de l'application. Vous pouvez également utiliser le script de configuration pour effectuer d’autres tâches nécessaires au bon fonctionnement de votre application. Par exemple, vous pouvez configurer des clés de registre, enregistrer DLLs, gérer les prérequis ou modifier le profil utilisateur à partir du script de configuration. WorkSpaces Applications fournit des exemples de scripts que vous pouvez utiliser pour monter votre VHD. Vous devrez modifier ces scripts en fonction des besoins de votre VHD et de vos applications.

**Note**  
Les scripts de configuration ne sont pas nécessaires pour les blocs d'applications dotés d'un WorkSpaces package d'applications. Vous pouvez toutefois fournir des scripts de post-installation facultatifs pour personnaliser l’installation des applications.

Utilisez les liens suivants pour télécharger les exemples de scripts :
+ [Script bash pour Ubuntu Pro 24.04 LTS et Amazon Linux 2](samples/Linux-mount-vhd-script2.zip)
+ [Script Microsoft Windows PowerShell](samples/Windows-mount-vhd-script3.zip)
**Note**  
WorkSpaces Les applications et le système d'exploitation Microsoft Windows réservent les lettres de lecteur A à E. Ne montez pas VHDs ou ne partagez pas de réseau sur ces lettres de lecteur.

WorkSpaces Les applications téléchargent le script de configuration et le VHD dans un répertoire de l'instance de streaming de flotte, puis exécutent le script de configuration. Le script de configuration s’exécute sur le système d’exploitation avec tous les droits d’administrateur. Le script de configuration s'exécute dans le `SYSTEM` contexte sous Microsoft Windows et en tant qu'`root`utilisateur sur Amazon Linux 2 ou Ubuntu Pro 24.04 LTS.

Emplacement du système de fichiers pour le VHD et le script de configuration :
+ Ubuntu Pro 24.04 LTS : 

  `/opt/appstream/AppBlocks/appblock-name/`  
**`appblock-name` **  
Nom du bloc d’applications auquel correspondent le VHD et le script de configuration.
+ Amazon Linux 2 : 

  `/opt/appstream/AppBlocks/appblock-name/`  
**`appblock-name` **  
Nom du bloc d’applications auquel correspondent le VHD et le script de configuration.
+ Microsoft Windows :

  `C:\AppStream\AppBlocks\appblock-name\`  
**`appblock-name` **  
Nom du bloc d’applications auquel correspondent le VHD et le script de configuration.

WorkSpaces Les applications conservent le nom du fichier tel qu'il figure sur l'objet. Par exemple, si votre bloc d’applications est nommé `MyApps`, avec un VHD nommé `apps.vhd` et un script de configuration nommé `mount-apps.ps1`, le chemin complet d’une instance de streaming Windows est le suivant :
+ VHD

  `C:\AppStream\AppBlocks\MyApps\apps.vhd`
+ Script de configuration

  `C:\AppStream\AppBlocks\MyApps\mount-apps.ps1`

WorkSpaces Les applications capturent l'erreur standard et le résultat standard de votre script de configuration lorsqu'il s'exécute sur une instance de streaming de flotte et télécharge le résultat dans un compartiment Amazon S3 de votre compte. Vous pouvez utiliser ces journaux pour identifier et résoudre les problèmes que vous pourriez rencontrer avec votre script de configuration. Les compartiments sont nommés dans un format spécifique comme suit :

```
appstream-logs-region-code-account-id-without-hyphens-random-identifier
```

**`region-code` **  
Il s'agit du code de AWS région dans lequel la flotte élastique est créée.

**`account-id-without-hyphens` **  
L'identifiant AWS de votre compte. L'identifiant aléatoire permet de garantir qu'aucun conflit ne sera déclenché avec les autres compartiments de la région. La première partie du nom du compartiment, appstream-logs, ne change pas, quel que soit le compte ou la région.

Par exemple, si vous créez une flotte élastique dans la région USA Ouest (Oregon) (us-west-2) sous le numéro de compte 123456789012 WorkSpaces , Applications crée un compartiment Amazon S3 au sein de votre compte dans cette région avec le nom indiqué. Seul un administrateur disposant d’autorisations suffisantes peut supprimer ce compartiment.

```
appstream-logs-us-west-2-1234567890123-abcdefg
```

Le chemin d’accès au dossier dans lequel les fichiers journaux sont stockés dans le compartiment S3 de votre compte est structuré comme suit :

```
bucket-name/fleet-name/instance-id/appblock-name/
```

**`bucket-name` **  
Nom du compartiment Amazon S3 dans lequel les journaux de script de configuration sont stockés. Le format du nom est décrit plus haut dans cette section.

**`Instance-id` **  
Identifiant unique de l’instance de streaming sur laquelle le script de configuration s’est exécuté

**`appblock-name` **  
Nom du bloc d’applications auquel correspond le script de configuration. 

L’exemple de structure de dossier suivant correspond à une session de streaming démarrée à partir de `test-fleet`. La session provient d'un Compte AWS identifiant 123456789012 et le nom du bloc d'applications est testappblock dans la région USA Ouest (Oregon) (us-west-2) :

`appstream-logs-us-west-2-1234567890123-abcdefg/test-fleet/i-084427ab4a1cff7f5/testappblock/`

Cet exemple de structure de dossiers contient un fichier journal pour la sortie standard et un fichier journal pour l’erreur standard.

**Topics**
+ [

# Exécution du script de configuration des blocs d'applications dans Amazon WorkSpaces Applications
](script-execution.md)

# Exécution du script de configuration des blocs d'applications dans Amazon WorkSpaces Applications
<a name="script-execution"></a>

Les schémas suivants indiquent à quel stade du processus le script de configuration s’exécute. L’ordre d’exécution dépend de l’activation ou non de la persistance des paramètres d’application sur la pile associée à la flotte Elastic.

**Note**  
WorkSpaces Les applications utilisent les informations de votre VPC pour télécharger le VHD et le script de configuration depuis le compartiment Amazon S3. Votre VPC doit fournir l’accès au compartiment Amazon S3. Pour plus d’informations, consultez [Fonctionnalités d'utilisation des points de terminaison VPC Amazon S3 pour les applications WorkSpaces](managing-network-vpce-iam-policy.md).

La persistance des paramètres d’application est activée :

![\[La persistance des paramètres d’application est activée.\]](http://docs.aws.amazon.com/fr_fr/appstream2/latest/developerguide/images/app-settings-enabled.png)


La persistance des paramètres d’application est désactivée :

![\[La persistance des paramètres d’application est désactivée.\]](http://docs.aws.amazon.com/fr_fr/appstream2/latest/developerguide/images/app-settings-disabled.png)


# Création d’un bloc d’applications personnalisé
<a name="create-app-block"></a>

Vous pouvez utiliser la console WorkSpaces Applications pour créer la ressource de blocage d'applications une fois que votre VHD et votre script de configuration ont été créés et téléchargés dans un compartiment S3 de votre Compte AWS. Pour en savoir plus sur le stockage du VHD et du script de configuration dans un compartiment Amazon S3, consultez [Stockage de l’icône de l’application, du script de configuration, du script de session et du VHD dans un compartiment S3](store-s3-bucket.md).

**Note**  
Vous devez disposer des autorisations IAM pour effectuer l’action `S3:GetObject` sur le VHD et les objets scripts de configuration dans le compartiment Amazon S3 afin de créer la ressource de bloc d’applications.

**Pour créer la ressource de bloc d’applications**

1. Ouvrez la console WorkSpaces Applications à l'adresse [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2).

1. Dans le menu de navigation de gauche, choisissez **Applications**, **Bloc d’applications** et **Créer un bloc d’applications.**

1. Pour la mise en package du bloc d’applications, sélectionnez **Personnalisée**.

1. Pour **Détails du bloc d’applications**, saisissez un identifiant de nom unique pour le bloc d’applications. Le cas échéant, vous pouvez également spécifier les options suivantes :
   + **Nom d’affichage** : nom convivial du bloc d’applications.
   + **Description** : description du bloc d’applications.

1. Pour **Objet disque dur virtuel dans S3**, sous **Paramètres du script**, saisissez l’URI S3 qui représente l’objet VHD ou choisissez **Parcourir S3** pour accéder à vos compartiments S3 et trouver l’objet VHD.

1. Pour **Objet script de configuration dans S3**, sous **Paramètres du script**, saisissez l’URI S3 qui représente l’objet script de configuration ou choisissez **Parcourir S3** pour accéder à vos compartiments S3 et trouver l’objet script de configuration.

1. Pour **Fichier exécutable du script de configuration** sous **Paramètres du script**, saisissez le fichier exécutable nécessaire pour votre script de configuration.
**Note**  
Si votre script de configuration peut s’exécuter directement, saisissez le nom de fichier du script de configuration. Si votre script de configuration repose sur un autre exécutable (par exemple, Microsoft PowerShell) pour s'exécuter, entrez le chemin d'accès à cet exécutable.  
Chemin d'accès PowerShell à Microsoft sous Microsoft Windows :  
`C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe`

1. Éventuellement, pour **Arguments de l’exécutable du script de configuration** sous **Paramètres du script**, saisissez les arguments qui doivent être fournis à l’exécutable du script de configuration pour exécuter votre script de configuration.
**Note**  
Si vous utilisez un PowerShell script Microsoft, vous devez spécifier le paramètre « -File » avec le nom de votre script de configuration comme argument exécutable. Assurez-vous également que la politique d’exécution autorise l’exécution de votre script. [Pour en savoir plus, consultez [About\$1Execution\$1Policies](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-7.2) et Qu'est-ce que c'est ? PowerShell](https://docs.microsoft.com/en-us/powershell/scripting/overview?view=powershell-7.2) .

1. Pour **Durée d’exécution en secondes** sous **Paramètres du script**, saisissez le délai d’expiration de votre script de configuration.
**Note**  
La durée d'exécution en secondes correspond à la durée pendant WorkSpaces laquelle les applications attendent que le script de configuration s'exécute avant de continuer. Si votre script de configuration ne se termine pas dans ce délai, un message d’erreur s’affiche à l’attention de l’utilisateur et l’application tente de démarrer. Le script de configuration est résilié une fois la durée d’exécution écoulée.

1. (Facultatif) Pour **Balises**, créez des balises pour la ressource de bloc d’applications.

1. Vérifiez les informations que vous avez saisies, puis choisissez **Créer**.

1. Si votre bloc d’applications a été créé avec succès, un message de réussite s’affiche en haut de la console. Si une erreur s’est produite, un message d’erreur descriptif s’affiche et vous devez réessayer de créer le bloc d’applications.

# Mise à jour du bloc d’applications, du VHD et du script de configuration
<a name="update-app-block"></a>

Les ressources de blocs d’applications sont immuables et ne vous permettent pas de les modifier une fois créées. Si vous devez apporter des mises à jour rétrocompatibles au VHD ou au script de configuration, il est recommandé de charger une nouvelle version du fichier dans le compartiment Amazon S3, en remplaçant la version actuelle. Les nouvelles sessions de streaming de flotte Elastic téléchargeront la dernière version des objets et les utiliseront.

Si vous devez apporter des mises à jour rétro-incompatibles au VHD ou au script de configuration, il est recommandé de les télécharger en tant que nouveaux objets dans le compartiment Amazon S3 et de créer un nouveau bloc d’applications et une nouvelle ressource d’application. Vous pourrez ensuite gérer le déploiement vers les utilisateurs lors d’une période de modification ou d’une autre interruption.