Service AWS EC2 et collaboration avec lui



Bonjour à tous. La semaine prochaine, les cours du cours Cloud Services commenceront. Nous portons à votre attention un bref récit de la leçon ouverte "AWS EC2-service". Elle a été dirigée par Egor Zuev , enseignant et spécialiste des services cloud avec plus de 10 ans d'expérience. Dans ce séminaire, nous avons examiné le service AWS EC2, encodé et déployé une application simple, augmenté la base de données et également examiné la réplication d'image et les équilibreurs de charge.



Présentation du service AWS EC2


EC2 (nuage de calcul élastique) est un service qui fournit la puissance de calcul en fournissant aux machines virtuelles / physiques des images pré-créées des systèmes d'exploitation (par exemple, Ubuntu, Debian, Windows).

Types d'instances disponibles pour la sélection:



En ce qui concerne les images, AWS EC2 utilise AMI (image de machine Amazon), qui est également l'image d'un système d'exploitation prédéfini qui sera utilisé par l'instance EC2. L'analogie la plus proche est un disque virtuel avec un système déjà installé, par exemple, dans Virtual Box.

Il est important de savoir que lorsque nous configurerons la machine et sélectionnerons l'image, nous devrons configurer l'accès. Étant donné que la machine sera dans le cloud, nous et d'autres utilisateurs devront la contacter. Pour ce faire, configurez le groupe de sécurité - un ensemble de règles (stratégie), qui s'applique à l'instance EC2 et inclut des autorisations pour le trafic entrant et sortant.

Travailler avec la console


Immédiatement après votre inscription au service, vous serez redirigé vers la console AWS EC2. Là, vous pouvez choisir EC2 et le type de machine sur laquelle nous déploierons tout. Dans notre cas, sélectionnez Ubuntu Server.







Un point important : à l'étape numéro 2, nous nous intéressons au t2micro (marqué d'un autocollant vert), car tout le reste sera payé.

Dans les trois étapes suivantes, nous laissons les paramètres par défaut, mais l'étape 6 doit faire l'objet d'une attention particulière. Ici, vous devez entrer le nom du groupe, par exemple, backend-security-group, puis ajouter immédiatement la règle afin que seul le 80e port puisse se connecter depuis le monde extérieur.



À la septième étape, cliquez sur Lancer et démarrez l'instance. Mais avant cela, le système vous demandera de créer une clé pour la connexion via ssh. Une fois toutes les étapes terminées, l'initialisation prend 1 à 2 minutes.

L'instance créée est appelée backend.


Vidéo détaillée sur les paramètres .

Connexion


Si quelqu'un a oublié les subtilités de la connexion, le service vous en informera rapidement:



Vous pouvez utiliser un programme distinct pour vous connecter, par exemple, Bitvise SSH Client - un outil très pratique.

La machine dispose immédiatement d'adresses IP publiques et privées. Nous utilisons public pour accéder à la machine, que nous conduisons, en y accédant par ssh. Nous écrivons ubuntu comme nom d'utilisateur, puis nous importons la clé que nous avons créée. Il ne reste plus qu'à se connecter en voiture. Soit dit en passant, nous allons effectuer toutes les actions sous la racine, pour entrer dans laquelle nous tapons la commande sudo su .


Détails de connexion.

Nous connectons la base de données


En tant que base de données, il a été décidé d'utiliser PostgreSQL. Pour continuer, créez une nouvelle instance avec les paramètres suivants:

  • mettez 16 Go dans la colonne Taille (étape numéro 4);
  • Le nom du groupe de sécurité est appelé base-de-sécurité-groupe (étape numéro 6);
  • ajoutez la règle dans la configuration en choisissant PostgreSQL dans la sous-liste (étape numéro 6).
Soit dit en passant, ici, dans le champ d'adresse IP, vous pouvez conduire des groupes de sécurité, dans notre cas, nous parlons de backend-security-group. Ainsi, tous ceux qui appartiennent à ce groupe auront accès à la base de données sur le réseau privé. Ici, vous pouvez écouter quel genre de magie ce réseau privé est.

En conséquence, nous obtenons deux instances dans la console - backend et base de données.


Détails de la connexion DB.

Nous créons et déployons l'application


Créez un nouveau projet à l'aide de WebStorm et Node.js. Notre tâche consiste à écrire une application simple qui ne fera que deux choses - répondre aux pings et compter le nombre de demandes de requête à un point final spécifique et, en conséquence, la publier.

Nous déploierons l' application en deux étapes. Pour déployer, allez sur une machine appelée backend, faites une mise à jour, installez Node.js, faites git clone, installez des bibliothèques.

Ensuite, nous élevons la base . Veuillez noter que Node et Postgres fonctionnent sur des machines différentes. Le moment de vérité - connexion à l'application via une adresse publique. Hourra, tout fonctionne!



La prochaine étape est la création de notre propre image AMI , qui sera à notre disposition. Sur la base de cette image AMI, nous pouvons faire une copie de notre backend et la déployer en deux clics. Pour ce faire, allez dans "Image" - "Créer une image".



Après avoir créé l'image, nous effectuons les réglages nécessaires. Il y a très peu d'options: par exemple, vous devez spécifier la taille minimale du disque dur. Nous parlons de la taille de l'instantané, c'est-à-dire qu'en fait, l'instantané sera supprimé du disque dur sur lequel nous avons tout installé. Nous pouvons dire que AMI est une entité virtuelle composée de paramètres d'image et de snapshot avec le système d'exploitation installé (dans notre cas, le système d'exploitation avec Node.js installé et notre application).

Un point important : il faudra environ cinq minutes pour créer un instantané, pendant lequel la machine sera en attente (plus "votre image sera grosse, plus elle tiendra longtemps).

Nommons l'image, par exemple, backend-ami . Le nom est présenté ici:



Après avoir créé l'image, nous pouvons la répliquer et obtenir la même copie de la machine en quelques clics. Et pour se connecter aux machines non pas séparément, mais via des équilibreurs de charge . Il existe plusieurs équilibreurs parmi lesquels choisir, qui diffèrent par les algorithmes d'équilibrage. La configuration de l' équilibreur sélectionné ne causera pas de difficultés, bien qu'il y ait des nuances importantes à retenir.



Modèles de prix


AWS EC2 propose 4 modèles de prix. La capture d'écran ci-dessous contient des descriptions de trois d'entre eux: Réservé, Spot Market et On-Demand. Soit dit en passant, dans une leçon ouverte, nous avons utilisé le modèle à la demande.


En savoir plus sur les modèles.

En plus du choix des modèles, le service AWS EC2 est également bon car il est intégré (comme de nombreux autres produits AWS) au système de surveillance AWS - Cloudwatch . Ce système de surveillance est configuré de manière flexible et vous permet de surveiller à la fois la consommation de ressources et le budget. En quelques clics, vous pouvez définir une limite d'utilisation des ressources EC2, après quoi vous recevrez une notification, par exemple par courrier.

Il reste à ajouter que la leçon ouverte s'est avérée très informative. Et si vous êtes intéressé par ce sujet, il vaut mieux regarder l'intégralité du webinaire pour ne rien manquer.

Source: https://habr.com/ru/post/fr468185/


All Articles