La création d'une instance Amazon Elastic Compute Cloud (Amazon EC2) à l'aide d'une fonction Lambda dans AWS implique l'automatisation du processus de création d'instance via le code. Voici un guide étape par étape pour vous aider à y parvenir :
Étape 1 :Créer un rôle IAM pour la fonction Lambda :
1. Accédez à la console IAM dans votre compte AWS.
2. Cliquez sur « Rôles » dans le volet de navigation de gauche, puis cliquez sur « Créer un rôle ».
3. Sélectionnez « AWS Lambda » comme service qui utilisera ce rôle.
4. Cliquez sur « Suivant :Autorisations » et choisissez la stratégie EC2FullAccess pour permettre à la fonction Lambda de gérer les ressources EC2.
5. Vérifiez les autorisations et cliquez sur « Suivant : Tags ».
6. (Facultatif) Ajoutez les balises souhaitées et cliquez sur « Suivant :Réviser ».
7. Fournissez un nom descriptif pour le rôle, tel que « EC2InstanceCreationRole », et cliquez sur « Créer un rôle ».
Étape 2 :Créer une fonction Lambda :
1. Accédez à la console Lambda dans votre compte AWS.
2. Cliquez sur « Créer une fonction » et choisissez « Auteur à partir de zéro ».
3. Entrez un nom pour la fonction Lambda, tel que « CreateEC2Instance ».
4. Sélectionnez "Python" ou "JavaScript" comme moteur d'exécution et cliquez sur "Créer une fonction".
5. Remplacez le code par défaut dans l'éditeur de fonctions par le code suivant :
```python
importer boto3
def lambda_handler (événement, contexte) :
# Créez un client pour interagir avec l'API EC2
ec2 =boto3.client('ec2')
# Définir les détails de l'instance pour la création
instance_details ={
'ImageId' :'ami-123456', # Remplacer par l'ID AMI souhaité
'InstanceType' :'t2.micro', # Remplacer par le type d'instance souhaité
'CompteMin' :1,
'MaxCount' :1,
'KeyName' :'your-key-name' # Remplacer par le nom de clé souhaité
}
# Créer l'instance EC2
réponse =ec2.run_instances(**instance_details)
# Renvoie l'ID d'instance de l'instance nouvellement créée
retour {
'code d'état' :200,
'corps' :réponse['Instances'][0]['InstanceId']
}
```
Pour JavaScript, remplacez la ligne 1 par :
```
const AWS =require('aws-sdk');
```
6. Dans la section « Paramètres des fonctions », développez « Autorisations » et cliquez sur « Ajouter une autorisation ».
7. Choisissez le rôle IAM créé précédemment (EC2InstanceCreationRole) et attachez la stratégie « LambdaInvokeFullAccess ».
Étape 3 :Configurer la fonction Lambda :
1. Dans la section "Code de fonction", assurez-vous que le "Handler" est défini sur "lambda_handler.lambda_handler".
2. Cliquez sur « Publier » pour enregistrer et déployer la fonction Lambda.
Étape 4 :Appelez la fonction Lambda :
1. Allez dans le menu « Actions » et sélectionnez « Invoquer ».
2. Laissez le champ « Test event » vide et cliquez sur « Invoke ».
3. Cela invoquera la fonction Lambda et créera une nouvelle instance EC2 basée sur les détails préconfigurés.
Étape 5 :Vérifier la création de l'instance :
1. Accédez à la console EC2 dans votre compte AWS.
2. Sélectionnez « Instances » dans le volet de navigation de gauche.
3. Vous verrez l'instance nouvellement créée dans la liste des instances en cours d'exécution.
En suivant ces étapes, vous avez réussi à créer une instance EC2 à l'aide d'une fonction Lambda dans AWS. Cette automatisation vous permet de créer et de gérer par programme des ressources EC2 en fonction de vos besoins et de votre logique métier.
|