DEV Community

Cover image for Automatiser l'arrêt et le démarrage des EC2 avec un Cron Job
divin komotir
divin komotir

Posted on

Automatiser l'arrêt et le démarrage des EC2 avec un Cron Job

Dans cet article, nous allons voir comment créer un script Bash qui arrête et redémarre automatiquement nos instances EC2 à l'aide d'un cron job. Ce processus est idéal pour optimiser les coûts en arrêtant les instances hors des heures de travail et en les redémarrant lorsque c'est nécessaire.

Prérequis :

  • Une instance EC2 sous Linux (Amazon Linux, Ubuntu, etc.)
  • AWS CLI installé et configuré
  • Accès SSH à l'instance (Nous utiliserons MobaXterm)

1. Se connecter à son instance

Nous commençons par nous connecter à notre EC2 à distance avec MobaXterm via une paire de clé.

Connexion à distance

2. Créer son script

Une fois connecté, créez le fichier shutdown_restart_ec2.sh et ajoutez le code suivant via nano avec la commande nano /home/ec2-user/shutdown_restart_ec2.sh :

Code du script

3. Rendre le script exécutable

Une fois le script créé, on lui donne les droits d'exécution avec :

chmod +x /home/ec2-user/shutdown_restart_ec2.sh
Enter fullscreen mode Exit fullscreen mode

4. Ajouter notre script dans un cron job

Une fois les droits d'exécution accordées, nous allons ouvrir crontab pour y placer notre cron job avec la commande crontab -e . Cela ouvrira directement un éditeur de text vi/vim dans lequel nous ajouterons notre script.

Editeur vi/vim pour depot du script

Pour écrire dans vi/vim, appuyez sur i pour entrer en mode --insertion. Cela fait, appuyer sur échappe pour passer en mode commande puis :wq pour sauvegarder et quitter.

Résultat après vi/vim

Après être sorti de l'éditeur, nous trouverons un message similaire qui confirme la creation de notre cron job.

5. Lister nos cron

Maintenant que notre cron job a été crée, nous allons pouvoir vérifier si le service crond est actif avec systemctl status crond .

Vérification statut cron

Ensuite, nous allons pouvoir lister nos cron jobs avec crontab -l :

Vérification de nos cron jobs

Ça y est ! Nous avons fini notre tâche.
Merci et à bientôt.

Top comments (0)