

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.

# Ajout automatique de nœuds dans OpsWorks Puppet Enterprise
<a name="opspup-unattend-assoc"></a>

**Important**  
Le AWS OpsWorks for Puppet Enterprise service a atteint sa fin de vie le 31 mars 2024 et a été désactivé pour les nouveaux clients et 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. 

Cette rubrique explique comment ajouter automatiquement des nœuds Amazon Elastic Compute Cloud (Amazon EC2) à votre serveur OpsWorks pour Puppet Enterprise. Dans la section [Ajouter des nœuds à gérer par le serveur maître Puppet](opspup-addnodes.md), vous avez appris à utiliser la commande `associate-node` pour ajouter un nœud à la fois à votre serveur Puppet Enterprise. Le code présenté dans cette rubrique montre comment ajouter automatiquement des nœuds à l'aide de la méthode sans surveillance. La méthode recommandée pour associer de nouveaux nœuds sans surveillance (ou automatique) consiste à configurer les données EC2 utilisateur Amazon. Par défaut, un serveur OpsWorks pour Puppet Enterprise est déjà [https://puppet.com/docs/pe/2019.8/installing_agents.html](https://puppet.com/docs/pe/2019.8/installing_agents.html)disponible pour les systèmes d'exploitation des nœuds Ubuntu, Amazon Linux et RHEL.

Pour plus d'informations sur la façon de dissocier un nœud, consultez [Dissocier un nœud d'un serveur OpsWorks for Puppet Enterprise](opspup-disassociate-node.md) ce guide et la documentation de [https://docs.aws.amazon.com/opsworks-cm/latest/APIReference/API_DisassociateNode.html](https://docs.aws.amazon.com/opsworks-cm/latest/APIReference/API_DisassociateNode.html)l'API OpsWorks for Puppet Enterprise.

## Étape 1 : créer un rôle IAM à utiliser comme profil d'instance
<a name="opspup-create-instance-profile"></a>

Créez un rôle Gestion des identités et des accès AWS (IAM) à utiliser comme profil d' EC2 instance et associez la politique suivante au rôle IAM. Cette politique permet à l'`opsworks-cm`API de communiquer avec l' EC2 instance lors de l'enregistrement du nœud. Pour plus d'informations sur les profils d'instance, consultez la section [Utilisation des profils d'instance](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) dans la EC2 documentation Amazon. Pour plus d'informations sur la création d'un rôle IAM, consultez la section [Création d'un rôle IAM dans la console](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#create-iam-role-console) dans la documentation Amazon EC2 .

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "opsworks-cm:AssociateNode",
                "opsworks-cm:DescribeNodeAssociationStatus",
                "opsworks-cm:DescribeServers",
                "ec2:DescribeTags"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}
```

------

## Étape 2 : Création d'instances en utilisant un script d'association sans surveillance
<a name="opspup-unattend-script"></a>

Pour créer des EC2 instances, vous pouvez copier le script de données utilisateur inclus dans le [kit de démarrage](opspup-starterkit.md) dans la `userdata` section des instructions relatives aux EC2 instances, dans les configurations de lancement du groupe Amazon EC2 Auto Scaling ou dans un CloudFormation modèle. Le script n'est pris en charge que pour EC2 les instances exécutant les systèmes d'exploitation Ubuntu et Amazon Linux. Pour plus d'informations sur l'ajout de scripts aux données utilisateur, consultez [Exécuter des commandes sur votre instance Linux au lancement](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html) dans la EC2 documentation Amazon. Le moyen le plus simple de créer un nouveau nœud consiste à utiliser l'[assistant de lancement d' EC2instance Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/launching-instance.html). Cette procédure pas à pas utilise l'exemple de configuration du module du serveur Web Apache décrit dans[Commencer à utiliser OpsWorks pour Puppet Enterprise](gettingstarted-opspup.md).

1. Le script de données utilisateur dans le Starter Kit exécute la commande d'API `opsworks-cm` [https://docs.aws.amazon.com/opsworks-cm/latest/APIReference/API_AssociateNode.html](https://docs.aws.amazon.com/opsworks-cm/latest/APIReference/API_AssociateNode.html) pour associer un nouveau nœud à votre maître Puppet. Dans cette version, il installe également la version actuelle de AWS CLI on the node pour vous, au cas où elle n'exécute pas déjà la up-to-date version la plus récente. Enregistrez ce script à un emplacement approprié (ex. : `userdata.sh`).

   Par défaut, le nom du nouveau nœud enregistré correspond à l'ID de l'instance.

1. Suivez la procédure décrite dans la [section Lancement d'une instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/launching-instance.html) dans la EC2 documentation, avec les modifications ici. Dans l'assistant de lancement d' EC2 instance, choisissez une AMI Amazon Linux.

1. Sur la page **Configure Instance Details**, sélectionnez **myPuppetinstanceprofile**, le rôle que vous avez créé à la section [Étape 1 : créer un rôle IAM à utiliser comme profil d'instance](#opspup-create-instance-profile), comme étant votre rôle IAM.

1. Dans la zone **Advanced Details**, chargez le script `userdata.sh` que vous avez créé à l'étape 1.

1. Aucune modification n'est nécessaire sur la page **Add Storage**. Accédez à la page **Add Tags**.

   En appliquant des balises à votre EC2 instance, vous pouvez personnaliser le comportement de`userdata.sh`. Dans cet exemple, appliquez le rôle `apache_webserver` à votre nœud en ajoutant la balise suivante : **pp\$1role** avec la valeur **apache\$1webserver**.

   En affectant la valeur `pp_role` au nœud, vous définissez des valeurs de données qui sont stockées de manière permanente dans le certificat de l'agent du nœud, ce qui permet de classer le nœud parmi les nœuds de confiance. Pour plus d'informations, consultez la section [Extension requests (permanent certificate data) [Extension des requêtes (données de certificat permanentes)]](https://puppet.com/docs/puppet/5.1/ssl_attributes_extensions.html#extension-requests-permanent-certificate-data)) dans la documentation de la plate-forme Puppet.

1. Sur la page **Configurer le groupe de sécurité**, choisissez **Ajouter une règle**, puis choisissez le type **HTTP** pour ouvrir le port 8080 pour le serveur Web Apache dans cet exemple.

1. Sélectionnez **Review and Launch**, puis **Launch**. Lorsque votre nouveau nœud démarre, il applique la configuration Apache du module d'exemple dans lequel vous l'avez configuré[Exemple de configuration du kit de démarrage Apache](opspup-starterkit.md#opspup-post-launch-web-server).

1. Lorsque vous ouvrez la page Web liée au DNS public de votre nouveau nœud, vous devriez voir un site Web hébergé par votre serveur Web Apache géré par Puppet.