Lancer une instance



Assez discuté, place à l'action ! Je vous propose de lancer votre première instance EC2 à la main. Je suis sûr que chez vous, l'émotion doit être à son comble (comment ça, non ?).

Si vous avez bien suivi les chapitres précédents, vous savez qu'on va lancer un serveur EC2 à usage général, de type t2.micro en tarification à la demande, dans le cadre de l'offre gratuite. Si je vous parle chinois, relisez le chapitre précédent. 😜



Page de lancement d'instance

Rendez-vous dans EC2, section "Instances". Cliquez sur "Lancer une instance" :



Si vous avez déjà un serveur lancé, veillez à l'arrêter ou à le supprimer (résilier) avant d'en lancer un nouveau si vous ne voulez pas payer. En effet, l'offre gratuite ne permet d'avoir qu'un serveur allumé à la fois de type t2.micro. Si votre serveur avait été lancé par Elastic Beanstalk, retournez dans l'interface d'Elastic Beanstalk pour le supprimer.
N'oubliez pas de vérifier la région depuis laquelle vous lancez vos serveurs (Ohio, sur ma capture d'écran en haut à droite). Vous n'avez le droit qu'à un serveur gratuit, toutes régions confondues. Le mieux si vous débutez est de choisir une région et de vous y tenir, sinon vous ne saurez plus où vous aurez laissé vos serveurs. 😛

Lorsque vous cliquez sur "Lancer une instance", un assistant en plusieurs étapes s'ouvre. La première consiste à choisir l'AMI.



Sélection d'une image de départ (AMI)

Même si vous souhaitez démarrer avec un serveur vierge, vous avez besoin d'un système d'exploitation installé au départ (en fait, personne ne démarre avec un serveur complètement vierge).

Les AMI sont des images du disque. Elles représentent un serveur dans un état donné et servent de point de départ.


Les AMI de base


La première étape sera pour vous l'occasion de choisir votre système d'exploitation :

  • Linux AMI : une distribution Linux spécialement optimisée pour Amazon EC2. C'est un peu le choix par défaut.
  • Ubuntu Server : la distribution Linux Ubuntu en version serveur, que vous pouvez choisir si vous l'aimez bien.
  • SUSE Linux : si votre truc c'est plutôt SUSE.
  • Red Hat : si votre truc c'est plutôt Red Hat.
  • Windows Server : si votre truc c'est plutôt Windows Server. Attention, ce n'est pas du Linux, c'est très différent. On ne verra pas ça dans ce cours.

Vérifiez que vous sélectionnez une image marquée "Admissible à l'offre" (ça signifie "Admissible à l'offre gratuite"). Certaines images peuvent en effet être payantes à cause de licences logicielles.


Les AMI préconfigurés du Marketplace

En plus de ces images, il existe de nombreux autres AMI "moins vierges". Ces serveurs préconfigurés peuvent vous faire gagner beaucoup de temps, car les logiciels de base dont vous avez besoin seront déjà installés.

Par exemple, si vous avez besoin de monter un serveur web exécutant un site en PHP, vous aurez besoin d'Apache, PHP, et peut-être que vous voudrez aussi des outils comme phpMyAdmin, Memcache, etc. A moins que vous aimiez passer des heures à tout réinstaller à la main (chacun son truc !), il vaut mieux un AMI préconfiguré.

Il est possible d'installer tout ce qu'on veut sur un serveur EC2, y compris un moteur de bases de données comme MySQL. En revanche, il existe un autre service d'Amazon appelé RDS qui gère pour vous un serveur de base de données séparé.
Je vous recommande d'utiliser plutôt RDS pour vos bases de données : ça vous épargnera toute la configuration et les mises à jour à faire.

Allez dans AWS Marketplace (pas de panique, il y a des AMI gratuits). Cherchez-y "LAMP bitnami" et sélectionnez "LAMP with PHP 7.1 Certified by Bitnami". Il est lui aussi "Admissible à l'offre", donc utilisable gratuitement.



Si vous voulez un autre type de serveur, n'hésitez pas à choisir une autre image. Ca ne changera rien à la suite du cours, du temps que vous prenez bien un serveur basé sur Linux.

Bref, vous l'aurez compris, les AMI sont vos amis ! (ah ah, oh oh, voilà c'est fait ✔️ ).



Choisir un type d'instance

Après une brève validation de licence (selon le type d'AMI que vous avez choisi), on va vous demander le type d'instance. Cela indique la puissance du serveur.

Comme je vous l'ai dit, on va partir sur l'option t2.micro (par défaut) qui est admissible à l'offre gratuite. Ca nous évite d'avoir à réfléchir trop longtemps !



Nous avons répondu aux questions principales. A partir de là :

  • Soit nous lançons directement le serveur avec la configuration par défaut, en cliquant sur "Vérifier et lancer".
  • Soit nous voulons rentrer plus dans le détail et nous cliquons sur "Configurer les détails de l'instance".

On pourrait en théorie cliquer sur "Vérifier et lancer", mais je vous propose de découvrir rapidement les autres étapes de l'assistant.



Configurer l'instance

On vous propose plusieurs options pour configurer un peu plus en détail l'instance.



On vous demande en premier combien d'instances vous voulez lancer (1 dans notre cas). Vous avez une option pour créer un groupe "Auto Scaling" qui va automatiquement ajouter et retirer des serveurs en fonction du trafic. En revanche, comme ça peut être un peu complexe, on ne va pas en parler ici.

Vous avez ensuite des options pour configurer le réseau qui permet à vos serveurs de communiquer entre eux. C'est un peu la plomberie que connaissent les administrateurs système... mais dans le cloud. C'est un peu moins mon domaine, mais si les masques de sous-réseau sont votre truc, alors vous savez que ça se passe par là. 😉

Le rôle IAM est un système qui permet d'attribuer la gestion de ce serveur à un utilisateur précis. IAM est le service AWS qui permet de gérer plusieurs utilisateurs avec des droits différents.

Au final, ici... on ne va rien toucher. 😅



Ajouter le stockage

EC2 sépare les choses :

  • Il y a d'un côté le serveur (la puissance de calcul)...
  • ... et de l'autre les disques. Il peut s'agir de disques durs ou de SSD (mémoire flash) selon le type d'instance que vous avez sélectionné.

Les disques sont gérés par un sous-service d'EC2 qu'on appelle EBS (Elastic Block Store). Par défaut, on nous a configuré ici un volume EBS de 10 Go :



A vous de voir si 10 Go suffisent, sachant que vous pouvez monter comme vous le voyez à 30 Go dans l'offre gratuite.

Par défaut, votre disque est un SSD. C'est ce qu'on vous recommande si vous ne savez pas ce que vous voulez.
Sachez que si vous changez le "Type de volume", vous pouvez aussi avoir un SSD encore plus rapide, ou bien un disque magnétique (c'est-à-dire un bon vieux disque dur).

Pour nos tests, on laissera là encore les valeurs par défaut.



Ajouter des balises

Cette section permet de "tagger" le serveur pour pouvoir le retrouver plus rapidement ensuite :



Cela fonctionne par un système de clé / valeur. Par exemple, si vous voulez, vous pouvez ajouter une balise site = SunlogFormation . La clé est "site", la valeur est "SunlogFormation". Ainsi, si vous faites une recherche par la suite, vous pourrez facilement retrouver tous les serveurs qui sont reliés au site OpenClassrooms.

Ces balises sont utiles principalement quand vous devez gérer beaucoup de serveurs.

Pour l'instant, on se contentera... de ne rien mettre.



Configurer le groupe de sécurité

C'est ici que vous configurez votre firewall (pare-feu) :



Ici, mon serveur sera lancé avec un nouveau groupe de sécurité, qui autorise uniquement un certain type de trafic entrant. Par exemple, on voit que mon serveur autorise l'accès SSH, HTTP et HTTPS depuis toutes les IP (d'où le 0.0.0.0/0).

Pour une sécurité optimale, vous pouvez par exemple autoriser l'accès SSH depuis uniquement votre IP en cliquant sur le menu déroulant. Attention, il ne faut pas que votre IP change.

Les groupes de sécurité peuvent être partagés entre plusieurs serveurs. Donnez-leur un nom facile à retrouver (exemple : "Web server firewall config").

Il est important de bien configurer votre groupe de sécurité. Si vous oubliez SSH, vous ne pourrez pas vous connecter à votre serveur ! Si vous oubliez HTTP, personne ne pourra charger un site web sur votre serveur !



Lancement du serveur

Cliquez ensuite sur "Vérifier et lancer". On vous proposera de vérifier à nouveau votre configuration.

Ensuite, on vous demande avec quelle clé SSH vous souhaitez vous connecter au serveur. En effet, pour vous connecter en ligne de commande, vous aurez besoin d'une paire de clés (publique/privée).

En temps normal, on se connecte à un serveur avec un login et un mot de passe (par exemple : "root" / "superpassword"). AWS considère que cette méthode n'est pas optimale et vous invite plutôt à vous connecter avec une paire de clés. C'est généralement plus sûr et surtout plus pratique, puisque vous n'aurez pas à saisir votre mot de passe à chaque fois.

Dans la fenêtre qui s'affiche, vous pouvez soit sélectionner une paire de clés existante (si vous avez déjà créé un serveur sur AWS), soit créer une nouvelle paire de clés si c'est votre première fois. On va dire que c'est votre première fois :



Cette étape est très importante ! Cliquez sur "Télécharger une paire de clés". Vous allez télécharger un fichier .pem qui vous permettra ensuite d'accéder à votre serveur. Mettez-la dans un lieu sûr (ne la publiez pas sur Internet ou c'est foutu !).

Si vous perdez votre clé, vous ne pourrez plus accéder à votre serveur !

Voilà, ouf ! Vous pouvez cliquer sur "Lancer des instances". Après quelques instants, le serveur est démarré et apparaît désormais dans "Instances". Hourra ! 😄



Vous pouvez voir que l'instance de type t2.micro est en statut vert "running" (1).

Il y a de nombreuses informations dans la section en bas de l'écran. La plus importante est peut-être "DNS public (IPv4)" (2) qui affiche l'adresse de votre serveur. Si vous la copiez-collez dans votre navigateur, vous pourrez voir ce que votre serveur web affiche par défaut.

Mon serveur affiche une page web par défaut parce que j'ai choisi un AMI préconfiguré. Si j'avais pris un AMI "vierge", il n'y aurait pas eu de serveur web et donc rien ne se serait affiché à cette URL.

Vous pouvez faire un clic droit sur l'instance pour l'arrêter, la redémarrer ou la résilier. Si vous la résiliez, elle sera supprimée (elle restera juste affichée quelques temps avant de disparaître complètement).

Bon, et si on se connectait à notre serveur maintenant ? 😊





Unité suivante : Se connecter à l'instance

Continue        
Retour