

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.

# Installation d'une fonctionnalité de Windows : IIS
<a name="cookbooks-101-opsworks-install-software-feature"></a>

**Important**  
Le AWS OpsWorks Stacks service a pris fin le 26 mai 2024 et a été désactivé tant pour les nouveaux clients que pour les clients existants. Nous recommandons vivement aux clients de migrer leurs charges de travail vers d'autres solutions dès que possible. Si vous avez des questions sur la migration, contactez l' AWS Support équipe sur [AWS Re:Post](https://repost.aws/) ou via le [AWS Support](https://aws.amazon.com/support) Premium.

 Les fonctionnalités Windows sont un ensemble de composants système optionnels, notamment les frameworks .NET et Internet Information Services (IIS). Cette rubrique décrit comment implémenter un livre de recettes pour installer une fonctionnalité couramment utilisée, les services Internet (IIS).

**Note**  
[Installation d'un package](cookbooks-101-opsworks-install-software-package.md) montre comment installer un logiciel fourni dans un package d'installation, par exemple un fichier MSI, que vous devez télécharger sur l'instance et exécuter. [Livres de recettes IIS](https://github.com/opscode-cookbooks/iis) 

[Exécution d'une recette sur une instance Windows](cookbooks-101-opsworks-opsworks-windows.md) montre comment utiliser une ressource `powershell_script` pour installer une fonctionnalité de Windows. Cet exemple montre une approche alternative : utilisez la `windows_feature` ressource du [livre de recettes Chef Windows](https://github.com/opscode-cookbooks/windows). Ce livre contient un ensemble de ressources qui utilisent [la maintenance et le déploiement des images de déploiement](https://technet.microsoft.com/en-us/library/dd744256%28v=ws.10%29.aspx) afin d'effectuer diverses tâches sous Windows, dont l'installation des fonctionnalités.

**Note**  
Chef dispose également d'un livre de recettes IIS, que vous pouvez utiliser pour gérer IIS. Pour plus d'informations, consultez [Livre de recettes IIS](https://github.com/opscode-cookbooks/iis).

**Pour configurer le livre de recettes**

1. Accédez au [ GitHub référentiel de livres de recettes Windows et téléchargez le livre](https://github.com/opscode-cookbooks/windows) de `windows` recettes.

   Cet exemple suppose que vous téléchargiez le référentiel `windows` comme fichier .zip, mais vous pouvez également cloner le référentiel si vous le souhaitez.

1. Accédez au [ GitHub référentiel de livres de recettes chef\$1handler et téléchargez le livre de recettes](https://github.com/opscode-cookbooks/chef_handler). `chef-handler`

   Le livre de recettes `windows` dépend de `chef_handler` ; vous ne l'utiliserez pas directement. Cet exemple suppose que vous téléchargiez le référentiel `chef_handler` comme fichier .zip, mais vous pouvez également cloner le référentiel si vous le souhaitez.

1. Procédez à l'extraction des livres de recettes `windows` et `chef_handler` et transférez-les dans les répertoires de votre répertoire de livres de recettes nommés `windows` et `chef_handler`, respectivement.

1. Créez un répertoire dans votre répertoire de livres de recettes nommé `install-iis` et accédez à celui-ci.

1. Ajoutez un fichier `metadata.rb` à `install-iis` avec le contenu suivant.

   ```
   name "install-iis"
   version "0.1.0"
   
   depends "windows"
   ```

   La directive `depends` vous permet d'utiliser les ressources des livres de recettes `windows` dans vos recettes.

1. Ajoutez un répertoire `recipes` à `install-iis` et ajoutez un fichier nommé `default.rb` dans ce répertoire qui contient le code de recette suivant.

   ```
   %w{ IIS-WebServerRole IIS-WebServer }.each do |feature|
     windows_feature feature do
       action :install
     end
   end
   
   service 'w3svc' do
     action [:start, :enable]
   end
   ```

   La recette utilise la ressource `windows` du livre de recettes `windows_feature` pour installer les éléments suivants :

   1. Le [rôle de serveur web IIS](https://technet.microsoft.com/en-us/library/cc770634.aspx).

   1. Le [serveur web IIS](https://technet.microsoft.com/en-us/library/cc753433%28v=ws.10%29.aspx).

   La recette utilise ensuite une ressource [https://docs.chef.io/chef/resources.html#service](https://docs.chef.io/chef/resources.html#service) pour démarrer et activer le service IIS (W3SVC).
**Note**  
Pour obtenir la liste complète des fonctionnalités Windows disponibles, [utilisez RDP pour vous connecter à l'instance](workinginstances-rdp.md), ouvrez une fenêtre d'invite de commande et exécutez la commande suivante. Notez que la liste est relativement longue.  

   ```
   dism /online /Get-Features
   ```

1. Créez une archive `.zip` qui contient les livres de recettes `install-iis`, `chef_handler` et `windows`, puis chargez l'archive dans un compartiment S3. Rendez l'archive publique et enregistrez l'URL pour une utilisation ultérieure. Cet exemple suppose que l'archive se nomme `install-iis.zip`. Pour de plus amples informations, veuillez consulter [Référentiels de livres de recettes](workingcookbook-installingcustom-repo.md).

   Le contenu livré aux compartiments Amazon S3 peut contenir du contenu client. Pour plus d'informations sur la suppression de données sensibles, consultez [How Do I Empty an S3 Bucket?](https://docs.aws.amazon.com/AmazonS3/latest/userguide/empty-bucket.html) (Comment puis-je vider un compartiment S3 ?) ou [How Do I Delete an S3 Bucket?](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-bucket.html) (Comment supprimer un compartiment S3 ?).

Créez une pile pour cet exemple, comme suit. Vous pouvez aussi utiliser une pile Windows existante. Il vous suffit de mettre à jour les livres de recettes, comme décrit plus tard.

**Création d’une pile**

1. Ouvrez la [console OpsWorks Stacks](https://console.aws.amazon.com/opsworks/) et choisissez **Add Stack (Ajouter une pile)**. Spécifiez les paramètres suivants, acceptez les valeurs par défaut pour les autres paramètres et choisissez **Add Stack (Ajouter une pile)**.
   + **Nom** — InstallIIS
   + **Région** — Ouest des États-Unis (Oregon)

     Cet exemple fonctionne dans n'importe quelle région, mais nous vous recommandons d'utiliser US West (Oregon) pour les didacticiels.
   + **Système d'exploitation par défaut** : Microsoft Windows Server 2012 R2

1. Choisissez **Add a layer (Ajouter une couche)** et [ajoutez une couche personnalisée](workinglayers-custom.md) à la pile avec les paramètres suivants.
   + **Nom** — IIS
   + **Nom court** — iis

1. [Ajoutez une instance 24/7](workinginstances-add.md) avec les paramètres par défaut de la couche IIS et [démarrez-la](workinginstances-starting.md).

Vous pouvez maintenant installer le livre de recettes et exécuter la recette.

**Pour installer le livre de recettes et exécuter la recette**

1. [Modifiez la pile pour activer les livres personnalisés](workingcookbook-installingcustom-enable.md) et spécifiez les paramètres suivants.
   + **Type de référentiel** — **S3 Archive**
   + **URL du référentiel : URL** de l'archive du livre de recettes que vous avez enregistrée précédemment.

   Acceptez les valeurs par défaut pour les autres paramètres, puis choisissez **Save (Enregistrer)** pour mettre à jour la configuration de la pile.

1. [Exécutez la commande de pile **Update Custom Cookbooks (Mettre à jour les livres de recettes personnalisées)**](workingstacks-commands.md), qui installe la dernière version de vos livres de recettes personnalisées sur les instances en ligne de la pile. Si une version antérieure de vos livres de recettes est présente, cette commande la remplace.

1. Exécutez la recette à l'aide de la commande de pile **Execute Recipes (Exécuter les recettes)** après avoir défini **Recipes to execute (Recettes à exécuter)** sur **install-iis::default**. Cette commande lance une exécution de Chef, qui exécute les recettes spécifiées.
**Note**  
Cet exemple utilise **Execute Recipes** pour des raisons pratiques, mais OpsWorks Stacks [exécute généralement vos recettes automatiquement](workingcookbook-assigningcustom.md) en les affectant à l'événement du cycle de vie approprié. Vous pouvez exécuter ces recettes en déclenchant manuellement l'événement. Vous pouvez utiliser une commande de pile pour déclencher des événements Setup et Configure et une [commande de déploiement](workingapps-deploying.md) pour déclencher des événements Deploy et Undeploy.

1. Pour vérifier l'installation, [utilisez RDP afin de vous connecter à l'instance](workinginstances-rdp.md) et ouvrez l'Explorateur Windows. Le système de fichiers doit maintenant comporter un répertoire `C:\inetpub`. Si vous vérifiez la liste des services de l'application du panneau de configuration des outils administratifs, IIS doit être vers le bas. Cependant, il sera nommé World Wide Web Publishing Service, et non IIS.