3.26 Les données d'utilisateur EC2 AWS
Dans cette leçon nous découvrons les EC2 User Data. Il est possible de personnaliser une instance EC2 lors de sa création en lui passant un script qui s'exécutera automatiquement au premier lancement. Ces scripts permettent d'installer des paquets, de mettre à jour le système, de télécharger du contenu, de configurer des services — bref tout ce qui peut être automatisé. Le script s'exécute avec les droits super-utilisateur.
Pour la démo, on résilie d'abord la première instance puis on en lance une nouvelle. On reste sur Amazon Linux 2 et le type t2.micro (Free Tier). Dans les Advanced details de l'étape de configuration, on trouve le champ User data où l'on colle le script :
#!/bin/bash
yum update -y
yum install -y httpd
systemctl start httpd
systemctl enable httpd
echo "<h1>Je suis le serveur $(hostname -f)</h1>" > /var/www/html/index.html
Le #!/bin/bash est obligatoire — il indique l'interpréteur. Le script met à jour le système avec yum update -y, installe Apache (httpd), démarre et active le service au boot, puis crée une page d'accueil personnalisée affichant le hostname de l'instance. Pour le reste de la configuration, on garde un stockage par défaut et on choisit le même groupe de sécurité que la première instance (ports 22 et 80 ouverts).
Une fois l'instance lancée et démarrée, on copie son IP publique dans le navigateur : la page "Je suis le serveur ip-172-31-x-x" s'affiche directement, sans qu'on ait eu à se connecter en SSH pour installer quoi que ce soit. On peut aussi se connecter en SSH avec la nouvelle paire de clés pour vérifier le contenu de /var/www/html/index.html. Les User Data sont un outil incontournable pour automatiser le déploiement et configurer ses instances de façon reproductible.
En résumé
Cette leçon explique comment utiliser les scripts de données utilisateurs (user data) pour automatiser et personnaliser les instances EC2 AWS lors de leur création. Ces scripts s'exécutent au premier lancement de la machine avec les droits super utilisateur et permettent d'installer des logiciels, mettre à jour le système, ou configurer des services. La leçon montre un exemple pratique : déployer Apache et afficher une page d'accueil personnalisée sur une nouvelle instance.
Points clés
- Les données utilisateurs automatisent les tâches d'installation et de configuration des instances EC2 au démarrage
- Le script doit commencer par #!/bin/bash et s'exécute avec les droits root
- Exemple de commandes : yum -y pour mettre à jour le système, httpd pour installer Apache, systemctl pour démarrer les services
- Configuration des groupes de sécurité obligatoire pour autoriser le trafic sur les ports nécessaires (80 pour HTTP, 443 pour HTTPS)
- Vérification pratique : accès SSH et consultation de la page d'accueil via l'adresse IP publique de l'instance
Questions fréquentes
Quand s'exécute le script de données utilisateurs?
Le script s'exécute au premier lancement de l'instance avec les droits super utilisateur, avant toute action manuelle.
Quel est le premier élément obligatoire d'un script de données utilisateurs?
Le shebang #!/bin/bash, qui indique l'interpréteur de commandes (shell bash) à utiliser pour exécuter le script.
Comment vérifier que le script a bien fonctionné?
En accédant via SSH à l'instance et en consultant la page web via l'adresse IP publique du serveur pour vérifier que Apache et la page personnalisée sont correctement déployés.