décembre 21, 2025
14 min de lecture

Questions d'entretien pour Ingénieur Cloud Junior AWS : Guide Complet

interview
career-advice
job-search
entry-level
Questions d'entretien pour Ingénieur Cloud Junior AWS : Guide Complet
MB

Milad Bonakdar

Auteur

Maîtrisez les fondamentaux d'AWS avec des questions d'entretien complètes couvrant EC2, S3, VPC, IAM et les concepts clés du cloud pour les postes d'ingénieur cloud junior.


Introduction

AWS (Amazon Web Services) est la plateforme cloud leader, offrant plus de 200 services pour le calcul, le stockage, la mise en réseau, et bien plus encore. En tant qu'ingénieur cloud junior, vous aurez besoin de connaissances fondamentales sur les services AWS essentiels et les concepts cloud pour construire et gérer l'infrastructure cloud.

Ce guide couvre les questions d'entretien essentielles pour les ingénieurs cloud AWS juniors, en se concentrant sur EC2, S3, VPC, IAM et les concepts cloud fondamentaux.


AWS EC2 (Elastic Compute Cloud)

1. Qu'est-ce qu'AWS EC2 et quels sont ses principaux avantages ?

Réponse : EC2 (Elastic Compute Cloud) fournit des serveurs virtuels redimensionnables dans le cloud.

Principaux avantages :

  • Élasticité : Augmenter/diminuer la capacité en fonction de la demande
  • Paiement à l'utilisation : Ne payer que ce que vous utilisez
  • Variété : Plusieurs types d'instances pour différentes charges de travail
  • Global : Déploiement dans plusieurs régions du monde
  • Intégration : Fonctionne de manière transparente avec d'autres services AWS

Cas d'utilisation courants :

  • Hébergement web
  • Serveurs d'applications
  • Environnements de développement/test
  • Traitement par lots
  • Calcul haute performance

Fréquence : Très courant Difficulté : Facile


2. Expliquez la différence entre arrêter et mettre fin à une instance EC2.

Réponse :

Arrêter une instance :

  • L'instance est arrêtée mais pas supprimée
  • Le volume racine EBS persiste
  • Vous êtes facturé pour le stockage EBS
  • Peut être redémarrée plus tard avec la même configuration
  • L'adresse IP élastique reste associée
  • L'ID de l'instance reste le même

Mettre fin à une instance :

  • L'instance est définitivement supprimée
  • Le volume racine EBS est supprimé (sauf configuration contraire)
  • Pas de frais après la suppression
  • Ne peut pas être redémarrée
  • L'adresse IP élastique est dissociée
  • L'ID de l'instance ne peut pas être réutilisé
# Exemples AWS CLI

# Arrêter une instance
aws ec2 stop-instances --instance-ids i-1234567890abcdef0

# Démarrer une instance arrêtée
aws ec2 start-instances --instance-ids i-1234567890abcdef0

# Mettre fin à une instance
aws ec2 terminate-instances --instance-ids i-1234567890abcdef0

Fréquence : Très courant Difficulté : Facile


AWS S3 (Simple Storage Service)

3. Qu'est-ce qu'Amazon S3 et quelles sont les différentes classes de stockage ?

Réponse : S3 est un stockage d'objets pour stocker et récupérer n'importe quelle quantité de données depuis n'importe où.

Classes de stockage :

ClasseCas d'utilisationDisponibilitéCoût
S3 StandardDonnées fréquemment consultées99,99 %Le plus élevé
S3 Intelligent-TieringModèles d'accès inconnus/changeants99,9 %Auto-optimisé
S3 Standard-IAConsulté peu fréquemment99,9 %Inférieur
S3 One Zone-IAPeu fréquent, non critique99,5 %IA la plus basse
S3 Glacier InstantArchive, récupération instantanée99,9 %Très bas
S3 Glacier FlexibleArchive, récupération en quelques minutes/heures99,99 %Très bas
S3 Glacier Deep ArchiveArchive à long terme, récupération en 12 heures99,99 %Le plus bas
# Créer un bucket S3
aws s3 mb s3://mon-bucket-nom

# Télécharger un fichier
aws s3 cp monfichier.txt s3://mon-bucket-nom/

# Lister les objets
aws s3 ls s3://mon-bucket-nom/

# Télécharger un fichier
aws s3 cp s3://mon-bucket-nom/monfichier.txt ./

Fréquence : Très courant Difficulté : Facile-Moyen


AWS VPC (Virtual Private Cloud)

4. Qu'est-ce qu'AWS VPC et quels sont ses composants clés ?

Réponse : VPC est un réseau virtuel logiquement isolé où vous lancez des ressources AWS.

Composants clés :

Loading diagram...

Composants :

  1. Sous-réseaux : Segments de la plage d'adresses IP du VPC

    • Public : Possède une route vers la passerelle Internet
    • Privé : Pas d'accès direct à Internet
  2. Passerelle Internet : Permet l'accès à Internet

  3. Passerelle NAT : Permet l'accès à Internet du sous-réseau privé (uniquement sortant)

  4. Tables de routage : Contrôler le routage du trafic

  5. Groupes de sécurité : Pare-feu au niveau de l'instance (avec état)

  6. ACL réseau : Pare-feu au niveau du sous-réseau (sans état)

Fréquence : Très courant Difficulté : Moyen


5. Quelle est la différence entre les groupes de sécurité et les ACL réseau ?

Réponse :

CaractéristiqueGroupe de sécuritéACL réseau
NiveauInstanceSous-réseau
ÉtatAvec étatSans état
RèglesAutoriser uniquementAutoriser et refuser
Trafic de retourAutomatiqueDoit être explicitement autorisé
ApplicationSélective (par instance)Toutes les instances du sous-réseau
Évaluation des règlesToutes les règlesRègles dans l'ordre

Exemple :

# Créer un groupe de sécurité
aws ec2 create-security-group \
  --group-name web-sg \
  --description "Groupe de sécurité du serveur web" \
  --vpc-id vpc-1234567890abcdef0

# Ajouter une règle entrante (autoriser HTTP)
aws ec2 authorize-security-group-ingress \
  --group-id sg-0123456789abcdef0 \
  --protocol tcp \
  --port 80 \
  --cidr 0.0.0.0/0

# Ajouter une règle entrante (autoriser SSH à partir d'une IP spécifique)
aws ec2 authorize-security-group-ingress \
  --group-id sg-0123456789abcdef0 \
  --protocol tcp \
  --port 22 \
  --cidr 203.0.113.0/24

Fréquence : Très courant Difficulté : Moyen


AWS IAM (Identity and Access Management)

6. Expliquez les utilisateurs, les groupes et les rôles IAM.

Réponse : IAM contrôle l'accès aux ressources AWS.

Utilisateurs IAM :

  • Identité individuelle avec des informations d'identification
  • Informations d'identification à long terme (mot de passe, clés d'accès)
  • Utiliser pour les personnes ou les applications

Groupes IAM :

  • Collection d'utilisateurs
  • Attacher des politiques aux groupes
  • Les utilisateurs héritent des autorisations du groupe

Rôles IAM :

  • Informations d'identification temporaires
  • Assumé par les utilisateurs, les applications ou les services
  • Pas d'informations d'identification à long terme
  • Utiliser pour les instances EC2, les fonctions Lambda, l'accès entre comptes
// Exemple de politique IAM (S3 en lecture seule)
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::mon-bucket",
        "arn:aws:s3:::mon-bucket/*"
      ]
    }
  ]
}

Meilleures pratiques :

  • Utiliser des rôles pour les instances EC2 (pas de clés d'accès)
  • Suivre le principe du moindre privilège
  • Activer l'authentification MFA pour les utilisateurs privilégiés
  • Faire pivoter régulièrement les informations d'identification
  • Utiliser des groupes pour la gestion des autorisations

Fréquence : Très courant Difficulté : Moyen


Concepts de base d'AWS

7. Que sont les régions et les zones de disponibilité AWS ?

Réponse :

Région AWS :

  • Emplacement géographique (par exemple, us-east-1, eu-west-1)
  • Contient plusieurs zones de disponibilité
  • Isolée des autres régions
  • Choisir en fonction de : latence, conformité, coût

Zone de disponibilité (AZ) :

  • Un ou plusieurs centres de données dans une région
  • Isolée des pannes dans d'autres AZ
  • Connectée avec une mise en réseau à faible latence
  • Déployer sur plusieurs AZ pour une haute disponibilité
Loading diagram...

Exemple de haute disponibilité :

# Lancer des instances dans plusieurs AZ
aws ec2 run-instances \
  --image-id ami-0abcdef1234567890 \
  --instance-type t2.micro \
  --subnet-id subnet-1a \
  --count 1

aws ec2 run-instances \
  --image-id ami-0abcdef1234567890 \
  --instance-type t2.micro \
  --subnet-id subnet-1b \
  --count 1

Fréquence : Très courant Difficulté : Facile


8. Qu'est-ce qu'une AMI (Amazon Machine Image) ?

Réponse : AMI est un modèle pour créer des instances EC2.

Contient :

  • Système d'exploitation
  • Serveur d'applications
  • Applications
  • Paramètres de configuration

Types :

  • Fourni par AWS : Amazon Linux, Ubuntu, Windows
  • Marketplace : AMI tierces
  • Personnalisé : Vos propres AMI

Création d'une AMI personnalisée :

# Créer une AMI à partir d'une instance en cours d'exécution
aws ec2 create-image \
  --instance-id i-1234567890abcdef0 \
  --name "Mon-Serveur-Web-AMI" \
  --description "Serveur web avec Apache configuré"

# Lancer une instance à partir d'une AMI
aws ec2 run-instances \
  --image-id ami-0abcdef1234567890 \
  --instance-type t2.micro \
  --key-name ma-paire-de-clés

Cas d'utilisation :

  • Déploiements standardisés
  • Sauvegarde et récupération
  • Auto Scaling
  • Déploiement multi-région

Fréquence : Courant Difficulté : Facile-Moyen


Stockage AWS

9. Qu'est-ce qu'EBS et quels sont les différents types de volumes ?

Réponse : EBS (Elastic Block Store) fournit un stockage de blocs persistant pour les instances EC2.

Types de volumes :

TypeCas d'utilisationPerformanceCoût
gp3 (SSD à usage général)La plupart des charges de travail3 000-16 000 IOPSSSD le plus bas
gp2 (SSD à usage général)Hérité, usage généralJusqu'à 16 000 IOPSBas
io2/io1 (IOPS provisionnés)Bases de données, applications critiquesJusqu'à 64 000 IOPSLe plus élevé
st1 (HDD optimisé pour le débit)Big data, entrepôts de donnéesDébit élevéBas
sc1 (HDD froid)Accès peu fréquentCoût le plus basLe plus bas

Création et attachement d'EBS :

# Créer un volume EBS
aws ec2 create-volume \
  --availability-zone us-east-1a \
  --size 100 \
  --volume-type gp3 \
  --iops 3000 \
  --throughput 125

# Attacher à l'instance
aws ec2 attach-volume \
  --volume-id vol-1234567890abcdef0 \
  --instance-id i-1234567890abcdef0 \
  --device /dev/sdf

# Formater et monter (sur l'instance)
sudo mkfs -t ext4 /dev/sdf
sudo mkdir /data
sudo mount /dev/sdf /data

# Rendre permanent (ajouter à /etc/fstab)
echo "/dev/sdf /data ext4 defaults,nofail 0 2" | sudo tee -a /etc/fstab

Instantanés EBS :

# Créer un instantané
aws ec2 create-snapshot \
  --volume-id vol-1234567890abcdef0 \
  --description "Sauvegarde avant la mise à niveau"

# Restaurer à partir d'un instantané
aws ec2 create-volume \
  --snapshot-id snap-1234567890abcdef0 \
  --availability-zone us-east-1a \
  --volume-type gp3

# Copier l'instantané vers une autre région
aws ec2 copy-snapshot \
  --source-region us-east-1 \
  --source-snapshot-id snap-1234567890abcdef0 \
  --destination-region us-west-2

Principales caractéristiques :

  • Persistant : Les données survivent à la suppression de l'instance
  • Instantanés : Sauvegardes ponctuelles vers S3
  • Chiffrement : Au repos et en transit
  • Redimensionnable : Augmenter la taille sans interruption de service
  • Multi-attachement : Les volumes io2 peuvent être attachés à plusieurs instances

Meilleures pratiques :

  • Utiliser gp3 pour la plupart des charges de travail (meilleur rapport prix/performance)
  • Activer le chiffrement par défaut
  • Instantanés réguliers pour les sauvegardes
  • Supprimer les volumes inutilisés pour réduire les coûts

Fréquence : Très courant Difficulté : Facile-Moyen


10. Expliquez les politiques de bucket S3 et en quoi elles diffèrent des politiques IAM.

Réponse : Les deux contrôlent l'accès à S3, mais ils fonctionnent différemment :

Politiques IAM :

  • Attaché aux utilisateurs, groupes ou rôles
  • Contrôler ce que les identités peuvent faire
  • Géré de manière centralisée dans IAM

Politiques de bucket S3 :

  • Attaché aux buckets S3
  • Contrôler l'accès aux buckets spécifiques
  • Peut accorder un accès entre comptes
  • Peut restreindre par adresse IP

Exemple de politique IAM :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:PutObject"
      ],
      "Resource": "arn:aws:s3:::mon-bucket/*"
    }
  ]
}

Exemple de politique de bucket S3 :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "PublicReadGetObject",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::mon-bucket-public/*"
    },
    {
      "Sid": "RestrictByIP",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "s3:*",
      "Resource": [
        "arn:aws:s3:::mon-bucket",
        "arn:aws:s3:::mon-bucket/*"
      ],
      "Condition": {
        "NotIpAddress": {
          "aws:SourceIp": "203.0.113.0/24"
        }
      }
    }
  ]
}

Appliquer une politique de bucket :

# Créer un fichier de politique (politique.json)
# Ensuite, appliquez-le
aws s3api put-bucket-policy \
  --bucket mon-bucket \
  --policy file://politique.json

# Afficher la politique actuelle
aws s3api get-bucket-policy \
  --bucket mon-bucket

# Supprimer la politique
aws s3api delete-bucket-policy \
  --bucket mon-bucket

Cas d'utilisation courants :

1. Hébergement de site web public :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::mon-site-web/*"
    }
  ]
}

2. Accès entre comptes :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::123456789012:root"
      },
      "Action": "s3:*",
      "Resource": [
        "arn:aws:s3:::bucket-partagé",
        "arn:aws:s3:::bucket-partagé/*"
      ]
    }
  ]
}

3. Appliquer le chiffrement :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": "*",
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::mon-bucket/*",
      "Condition": {
        "StringNotEquals": {
          "s3:x-amz-server-side-encryption": "AES256"
        }
      }
    }
  ]
}

Quand utiliser :

  • Politique IAM : Contrôler ce que vos utilisateurs/applications peuvent faire
  • Politique de bucket : Contrôler qui peut accéder à votre bucket (y compris les comptes externes)

Fréquence : Très courant Difficulté : Moyen


Surveillance et gestion

11. Qu'est-ce que CloudWatch et comment l'utilisez-vous pour la surveillance ?

Réponse : CloudWatch est le service de surveillance et d'observabilité d'AWS.

Composants clés :

1. Métriques :

  • Points de données numériques dans le temps
  • EC2 : CPU, réseau, disque
  • RDS : Connexions, IOPS
  • Métriques personnalisées : Spécifiques à l'application
# Afficher les métriques CPU d'EC2
aws cloudwatch get-metric-statistics \
  --namespace AWS/EC2 \
  --metric-name CPUUtilization \
  --dimensions Name=InstanceId,Value=i-1234567890abcdef0 \
  --start-time 2024-11-25T00:00:00Z \
  --end-time 2024-11-25T23:59:59Z \
  --period 3600 \
  --statistics Average,Maximum

# Publier une métrique personnalisée
aws cloudwatch put-metric-data \
  --namespace MonApp \
  --metric-name PageLoadTime \
  --value 0.5 \
  --unit Seconds

2. Alarmes :

# Créer une alarme pour une CPU élevée
aws cloudwatch put-metric-alarm \
  --alarm-name alarme-cpu-élevée \
  --alarm-description "Alerte lorsque la CPU dépasse 80 %" \
  --metric-name CPUUtilization \
  --namespace AWS/EC2 \
  --statistic Average \
  --period 300 \
  --threshold 80 \
  --comparison-operator GreaterThanThreshold \
  --evaluation-periods 2 \
  --dimensions Name=InstanceId,Value=i-1234567890abcdef0 \
  --alarm-actions arn:aws:sns:us-east-1:123456789012:mon-sujet

3. Journaux :

# Créer un groupe de journaux
aws logs create-log-group \
  --log-group-name /aws/application/monapp

# Créer un flux de journaux
aws logs create-log-stream \
  --log-group-name /aws/application/monapp \
  --log-stream-name instance-1

# Mettre des événements de journal
aws logs put-log-events \
  --log-group-name /aws/application/monapp \
  --log-stream-name instance-1 \
  --log-events \
    timestamp=1234567890000,message="Application démarrée" \
    timestamp=1234567891000,message="Traitement de la requête"

# Interroger les journaux
aws logs filter-log-events \
  --log-group-name /aws/application/monapp \
  --filter-pattern "ERROR" \
  --start-time 1234567890000

4. Tableaux de bord :

# Créer un tableau de bord avec boto3
import boto3
import json

cloudwatch = boto3.client('cloudwatch')

dashboard_body = {
    "widgets": [
        {
            "type": "metric",
            "properties": {
                "metrics": [
                    ["AWS/EC2", "CPUUtilization", {"stat": "Average"}]
                ],
                "period": 300,
                "stat": "Average",
                "region": "us-east-1",
                "title": "Utilisation CPU EC2"
            }
        },
        {
            "type": "metric",
            "properties": {
                "metrics": [
                    ["AWS/RDS", "DatabaseConnections"]
                ],
                "period": 300,
                "stat": "Sum",
                "region": "us-east-1",
                "title": "Connexions RDS"
            }
        }
    ]
}

cloudwatch.put_dashboard(
    DashboardName='MonAppTableauDeBord',
    DashboardBody=json.dumps(dashboard_body)
)

Scénarios de surveillance courants :

Surveiller une instance EC2 :

# Les métriques CPU, réseau, disque sont automatiques
# Pour la mémoire, il faut l'agent CloudWatch

# Installer l'agent CloudWatch
wget https://s3.amazonaws.com/amazoncloudwatch-agent/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm
sudo rpm -U ./amazon-cloudwatch-agent.rpm

# Configurer l'agent (crée un fichier de configuration)
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard

# Démarrer l'agent
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl \
  -a fetch-config \
  -m ec2 \
  -s \
  -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json

Surveiller les journaux d'application :

# Application Python avec journalisation CloudWatch
import boto3
import logging
from datetime import datetime

class CloudWatchHandler(logging.Handler):
    def __init__(self, log_group, log_stream):
        super().__init__()
        self.client = boto3.client('logs')
        self.log_group = log_group
        self.log_stream = log_stream
        
    def emit(self, record):
        log_entry = self.format(record)
        self.client.put_log_events(
            logGroupName=self.log_group,
            logStreamName=self.log_stream,
            logEvents=[{
                'timestamp': int(datetime.now().timestamp() * 1000),
                'message': log_entry
            }]
        )

# Utilisation
logger = logging.getLogger()
logger.addHandler(CloudWatchHandler('/aws/monapp', 'instance-1'))
logger.info("Application démarrée")

Meilleures pratiques :

  • Configurer des alarmes pour les métriques critiques
  • Utiliser des groupes de journaux pour organiser les journaux
  • Créer des tableaux de bord pour une vue d'ensemble rapide
  • Définir des politiques de rétention pour contrôler les coûts
  • Utiliser des filtres de métriques pour l'analyse des journaux

Fréquence : Très courant Difficulté : Moyen


Conclusion

Se préparer à un entretien d'ingénieur cloud AWS junior nécessite de comprendre les services de base et les concepts cloud. Concentrez-vous sur :

  1. EC2 : Types d'instances, cycle de vie, sécurité
  2. S3 : Classes de stockage, politiques de bucket, versionnage
  3. VPC : Mise en réseau, sous-réseaux, groupes de sécurité
  4. IAM : Utilisateurs, rôles, politiques, moindre privilège
  5. Concepts de base : Régions, AZ, AMI

Entraînez-vous à utiliser la console AWS et la CLI pour acquérir une expérience pratique. Bonne chance !

Newsletter subscription

Conseils de carrière hebdomadaires qui fonctionnent vraiment

Recevez les dernières idées directement dans votre boîte de réception

Decorative doodle

Arrêtez de Postuler. Commencez à Être Embauché.

Transformez votre CV en un aimant à entretiens avec l'optimisation alimentée par l'IA en laquelle les chercheurs d'emploi du monde entier font confiance.

Commencer gratuitement

Partager cet article

Faites Compter Vos 6 Secondes

Les recruteurs scannent les CV pendant seulement 6 à 7 secondes en moyenne. Nos modèles éprouvés sont conçus pour capter l'attention instantanément et les inciter à continuer la lecture.