[AWS] EC2

Introduction

EC2 pour Elastic Compute Cloud est un service web d'Amazon permettant de déployer des instances dîtes as a service.

ec2-1.webp

Installation des prérequis

Deux paquets sont nécessaire à la manipulation des instances et des fichiers JSON pour AWS : aws-cli et jq.

Ils sont tous deux à installer selon votre OS.

Types d'instances

La liste complète des types d'instances est disponible ici : https://aws.amazon.com/fr/ec2/instance-types/

Liste AMI

Pour explorer la liste des AMI : https://us-east-1.console.aws.amazon.com/ec2/home?region=us-east-1#LaunchInstances:

Images ID
AMI Amazon Linux 2023 ami-0f34c5ae932e6f0e4
Ubuntu 22.04 ami-053b0d53c279acc90
Debian 11 ami-01e5ff16fd6e8c542
RHEL 9 ami-02978b79564e08f2f

Déploiement en CLI

Création d'une clé d'accès SSH

aws ec2 create-key-pair --key-name <ACCESS_KEY_LABEL> --query 'KeyMaterial' --output text > <KEY.pem>

Configuration des accès IAM

Depuis la console IAM, créer un utilisateur CLI ayant les droits puis récupérer l'ACCESS KEY ID ainsi que l'ACCESS SECRET KEY (affichable uniquement à la création) :

Puis, configurer les paramètres d'AWS grâce aux commandes suivantes :

aws configure set aws_access_key_id <ACCESS_KEY_ID>
aws configure set aws_secret_access_key <ACCESS_SECRET_KEY>

La liste des régions est consultable à cette adresse :

Ex : us-east-1

aws configure set default.region <REGION>
aws configure set output json

Déploiement de l'instance

aws ec2 run-instances --image-id <AMI_ID> --instance-type <INSTANCE_TYPE> --security-group-ids <SG_ID> --key-name <ACCESS_KEY_LABEL> > <OUTPUT>.json

Informations sur l'instance

Avec l'ID de l'instance stockée dans le fichier json, il est possible d'obtenir l'adresse IP public de l'instance grâce à la commande suivante :

aws ec2 describe-instances --instance-ids $( jq -r '.Instances[0].InstanceId' <OUTPUT>.json ) | jq -r '.Reservations[0].Instances[0].PublicIpAddress'


Revision #10
Created 27 July 2023 14:45:39 by Elieroc
Updated 5 December 2023 17:03:53 by Elieroc