Article original : How to Connect Your AWS EC2 Instance to VS Code
En tant qu'ingénieur DevOps, il est crucial de maîtriser au moins un fournisseur de cloud. Les services cloud simplifient le stockage, la migration de données et les flux de travail CI/CD, et aident à rendre ces tâches plus faciles et plus efficaces.
Si vous avez besoin d'une introduction de base à l'informatique en cloud, voici un tutoriel pour débutants pour vous : Qu'est-ce que l'informatique en cloud ? Un guide pour débutants.
Dans ce guide, je vais vous montrer comment créer une instance AWS EC2. C'est l'un des principaux services d'AWS pour construire des applications. À la fin de ce guide, vous saurez comment lancer une instance AWS EC2 et la connecter à VS Code.
Table des matières
Prérequis
Avant de commencer, assurez-vous d'avoir :
Un compte AWS. Si vous n'en avez pas, inscrivez-vous ici.
Un dépôt GitHub avec votre code source. Si vous n'avez pas de compte GitHub, inscrivez-vous ici.
Des connaissances de base en développement web et en contrôle de version.
Un éditeur de code. Pour ce tutoriel, j'utilise VS Code.
Commençons sans plus tarder !

Qu'est-ce qu'une instance AWS EC2 ?
AWS EC2 (Elastic Compute Cloud) vous permet d'exécuter des machines virtuelles dans le cloud. Ces ordinateurs vous permettent d'exécuter vos applications sans avoir besoin de matériel physique.
Il y a un certain nombre de choses que vous pouvez faire avec AWS EC2, comme l'hébergement de sites web ou d'applications, l'exécution de tâches de big data ou d'apprentissage automatique, la création d'environnements de test, et la gestion de tâches qui nécessitent une puissance de calcul flexible et évolutive.
Pourquoi connecter votre instance AWS EC2 à VS Code ?
Connecter votre instance AWS EC2 à VS Code est utile pour plusieurs raisons. Avant de commencer le processus de configuration, il est important de comprendre pourquoi c'est bénéfique.
L'utilisation de VS Code offre un espace de développement familier et efficace. Cela donne l'impression de coder sur votre propre machine.
Vous n'avez pas besoin de vous connecter à votre instance AWS EC2 à chaque fois. Vous pouvez éditer des fichiers, exécuter des commandes et déboguer du code à distance.
Vous pouvez rationaliser votre flux de travail avec un accès intégré au terminal et des extensions. Ainsi, vous n'aurez pas à basculer entre les clients SSH tout le temps.
Vous pouvez pousser les modifications vers GitHub. Cela rend la collaboration et le déploiement beaucoup plus fluides.
VS Code fonctionne bien avec Java, Node.js et Python. Il prend en charge de nombreux langages et frameworks, ce qui en fait un excellent choix pour le développement cloud.
Maintenant que vous comprenez les avantages, passons à la configuration de la connexion.
Comment lancer et connecter votre instance AWS EC2 à VS Code
Pour lancer une instance EC2 sur AWS, suivez simplement ces étapes :
Étape 1 : Créer une instance AWS EC2
Tout d'abord, connectez-vous à votre compte AWS. Ensuite, utilisez la barre de recherche pour trouver EC2 et sélectionnez-le.

Cliquez sur EC2 et suivez les instructions à l'écran pour créer une nouvelle instance.
Choisissez une AMI (Amazon Machine Image) : Il s'agit d'un modèle préconfiguré qui inclut un système d'exploitation et peut être livré avec des logiciels supplémentaires.
Sélectionnez un type d'instance : Choisissez la taille adaptée à vos besoins. Par exemple,
t2.microest une bonne option pour les débutants et les petites charges de travail.Configurez votre instance EC2 : Configurez le réseau, le stockage, les groupes de sécurité et d'autres options en fonction de vos exigences.
Lancez votre instance : Démarrez votre serveur virtuel et accédez-y à distance pour commencer à l'utiliser.

Instance lancée en cours d'exécution :

Alors, que se passe-t-il dans l'étape 1 ?
En lançant une instance AWS EC2, vous configurez un serveur distant dans le cloud. AWS propose différentes AMI qui servent d'environnements préconfigurés.
Étape 2 : Connecter l'instance AWS EC2 à votre éditeur de code
Pour connecter votre instance EC2 créée dans AWS à votre VS Code, vous avez besoin de SSH.
Qu'est-ce que SSH ?
SSH (Secure Shell) est un moyen sécurisé de se connecter et de communiquer avec d'autres appareils. Il maintient votre connexion sécurisée. Cela est important lorsque vous accédez à des serveurs ou à des dépôts. Dans Git, vous pouvez utiliser SSH au lieu de HTTPS pour cloner des dépôts avec une connexion sécurisée.
Pourquoi SSH est-il important ici ?
Avec SSH, vous pouvez lier votre éditeur de code local (comme VS Code) à votre instance AWS EC2. Cela vous permet de travailler sur les fichiers stockés sur l'instance EC2 directement depuis votre éditeur comme si vous étiez sur votre ordinateur local.
Pour connecter votre instance AWS EC2 à votre éditeur local en utilisant SSH, suivez ces étapes :
Ouvrez votre terminal.
Allez dans le dossier où se trouve votre fichier de clé
.pem. Le fichier de clé (.pem) se télécharge automatiquement lorsque vous créez votre instance EC2 (généralement dans le dossier Téléchargements).Mettez à jour les permissions du fichier pour garder votre clé sécurisée et assurer une authentification correcte.
Pour les utilisateurs Linux, utilisez cette commande pour mettre à jour les permissions du fichier :
chmod 400 codebuild-keypair.pem
Pour les utilisateurs Windows, vous devrez d'abord trouver le nom d'utilisateur de votre ordinateur portable, car vous en aurez besoin pour mettre à jour les permissions du fichier.
Pour ce faire, ouvrez votre terminal et tapez :
whoami
Cela affichera votre nom d'utilisateur actuel.
Une fois que vous avez votre nom d'utilisateur, utilisez la commande suivante pour mettre à jour les permissions du fichier :
icacls "codebuild-keypair.pem" /reset
icacls "codbuild-keypair.pem" /grant:r "%USERNAME%:R"
icacls "codebuld-keypair.pem" /inheritance:r
Voici ce que je veux dire : Mon nom d'utilisateur est ijeon, donc vous devriez le remplacer par le nom d'utilisateur de votre ordinateur portable et votre propre clé, qui se termine par l'extension .pem.

L'exécution de cette commande ci-dessus met à jour les permissions du fichier. Ainsi, avec cela, vous pouvez travailler avec votre serveur distant.

Maintenant que vous avez défini les permissions de fichier correctes, vous pouvez utiliser la commande SSH avec l'adresse IPv4 pour vous connecter à notre instance EC2. Tapez la commande suivante :
ssh -i [CHEMIN VERS VOTRE FICHIER .PEM] ec2-user@[VOTRE DNS PUBLIC IPV4]
Exemple :
ssh -i "C:\Users\ijeon\OneDrive\Desktop\devops-series-nextwork\codebuild-keypair.pem" ec2-user@ec2-35-178-142-201.eu-west-2.compute.amazonaws.
Décomposition :
ssh: Cela démarre une connexion distante sécurisée.-i "C:\Users\ijeon\...\codebuild-keypair.pem": Cela indique à SSH d'utiliser le fichier de clé.pempour un accès sécurisé.ec2-user@ec2-35-178-142-201.eu-west-2.compute.amazonaws.com:ec2-userest le nom d'utilisateur par défaut pour les instances EC2.@ec2-35-178-142-201...est l'adresse publique de votre instance EC2.
Cette commande vous connecte à votre instance EC2 à distance depuis votre ordinateur. Elle utilise ensuite la clé (fichier .pem) au lieu d'un mot de passe pour la sécurité. Elle vous permet également de contrôler l'instance EC2 depuis votre terminal comme si vous l'utilisiez directement.
Si tout est configuré correctement, un message de "succès" apparaîtra. Cela confirme que vous êtes connecté et que vous pouvez accéder au serveur distant.

Étape 3 : Installer le langage de programmation
Maintenant que vous avez lié votre instance à l'éditeur, vous pouvez installer les packages nécessaires pour construire votre application web. Vous pouvez utiliser n'importe quel langage de programmation avec lequel vous êtes à l'aise, mais nous utiliserons Java pour ce tutoriel. Il s'agira d'une application web simple – nous n'avons pas besoin d'entrer dans les détails avancés.
1. Installer Java
Dans votre terminal, exécutez les commandes suivantes pour installer Java :
sudo dnf install -y java-1.8.0-amazon-corretto-devel
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64
export PATH=/usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre/bin/:$PATH
Cela installe Java sur votre système. Vous avez également besoin de Maven. Il aide à gérer les projets Java et à créer des modèles pour les applications web.
2. Installer Maven
Maven vous aide à organiser les projets Java. Il vous permet également de créer des modèles pour les applications web. Exécutez ces commandes pour installer Maven :
wget https://archive.apache.org/dist/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
sudo tar -xzf apache-maven-3.5.2-bin.tar.gz -C /opt
echo "export PATH=/opt/apache-maven-3.5.2/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
Pour confirmer l'installation correcte de Maven, exécutez cette commande :
mvn -v
Exécutez également la commande suivante pour vérifier si vous avez Java installé :
java -version
Maintenant que vous avez installé Maven, vous pouvez l'utiliser pour créer une application web Java avec la commande suivante :
mvn archetype:generate \
-DgroupId=com.nextwork.app \
-DartifactId=nextwork-web-project \
-Dpackage=com.nextwork.app \
-DarchetypeArtifactId=maven-archetype-webapp \
-DarchetypeVersion=1.4 \
-DinteractiveMode=false
L'exécution de la commande ci-dessus génère un modèle pour votre application. Dans le terminal, il devrait afficher un message "Build Success". Cela signifie que la configuration a fonctionné.

Étape 4 : Ouvrir une fenêtre distante
Maintenant que vous avez installé les packages nécessaires et configuré votre modèle d'application, vous devez ouvrir votre IDE ou éditeur de code. Cela vous permettra d'accéder aux dossiers sur votre serveur distant.
Dans votre terminal, cliquez sur l'icône de double flèche en bas à gauche.

Lorsque vous cliquez dessus, cela ouvre une fenêtre modale pour vous.

Une fenêtre apparaîtra. Cliquez sur "Connect to Host", ce qui ouvrira une autre fenêtre.
Ensuite, choisissez "Add New SSH Host" pour ouvrir le terminal de connexion SSH.

Entrez votre commande SSH pour configurer l'hôte.

Après avoir appuyé sur "Enter", un fichier de configuration s'ouvrira. Dans ce fichier, assurez-vous que le fichier .pem et les adresses IP4v DNS de votre instance EC2 sont correctes.

Voici une vue GIF de l'image ci-dessus :

Voici le fichier de configuration :

Retournez à votre éditeur et cliquez à nouveau sur cette double flèche. Cela ouvrira automatiquement une nouvelle fenêtre.

Si votre éditeur affiche l'adresse DNS IPv4, votre VS Code est connecté avec succès à l'instance EC2.

Maintenant que vous êtes connecté et qu'une nouvelle fenêtre est ouverte, accédons au dossier stocké dans le cloud.
Étape 5 : Accéder à votre dossier de projet
Dans l'étape 3, vous vous souvenez quand vous avez installé Maven ? Il a créé un modèle pour votre application web. Maintenant, vous allez accéder au dossier où vous l'avez créé.
Allez dans le panneau de l'explorateur dans la fenêtre.
Cliquez sur le bouton "Ouvrir le dossier".

En cliquant sur ce bouton, une boîte modale s'ouvre pour que vous sélectionniez votre dossier, qui a été créé par le modèle Maven :

Pour accéder au fichier modèle, cliquez sur le dossier "src". Cela vous mène au fichier index.jsp.

Avec ce modèle créé, vous pouvez décider de le modifier et de l'envoyer à votre dépôt Git pour le stockage.
Conclusion
Excellent travail ! Vous avez configuré une instance AWS EC2, l'avez liée à votre éditeur de code et installé les outils nécessaires pour votre application web. Dans ce tutoriel, nous avons utilisé Java, mais vous pouvez également choisir d'autres langages comme Node.js ou Python.
Si vous avez trouvé cet article utile, veuillez le partager avec d'autres personnes qui pourraient le trouver intéressant.
Restez informé de mes projets en me suivant sur Twitter, LinkedIn et GitHub.
Merci d'avoir lu.