Comment utiliser AWS CLI pour gérer l'instance EC2 [partie 1]

Comment utiliser AWS CLI pour gérer l'instance EC2 [partie 1]

«AWS vous permet de gérer tous les services et ressources en utilisant l'interface de ligne de commande. Bien que vous n'obteniez pas une interface utilisateur graphique fantaisie, elle est toujours considérée comme plus professionnelle et pratique. Il y a même quelques options que vous ne pouvez pas utiliser en utilisant la console GUI, par exemple, permettant de «Supprimer MFA» sur le seau S3 et de générer des URL pré-signées pour un objet S3. Avant de commencer à gérer vos instances à l'aide de la CLI AWS, vous devez la configurer sur votre système. Veuillez visiter l'article suivant pour savoir comment configurer les informations d'identification AWS CLI sur Windows, Linux ou Mac."

https: // linuxhint.com / Configure-aws-Cli-Credentials /

Cet article discutera des opérations suivantes qui peuvent être effectuées sur EC2 à l'aide de l'interface de ligne de commande AWS.

  • Création de la paire de clés SSH
  • Création d'un groupe de sécurité d'instance
  • Création d'une instance EC2

Création de la paire de clés SSH

Avant de créer une instance EC2 sur AWS, nous devons créer une clé SSH qui sera configurée avec l'instance EC2 pour y accéder via SSH. Utilisez les commandes suivantes sur votre CLI AWS pour générer la paire de clés SSH avant de lancer une instance EC2.

ubuntu @ ubuntu: ~ $ aws ec2 create-key-pair \
--nom de clé \
--format clé

Ici, nous venons de fournir le nom de notre paire de clés et du format clé. Pour le format clé, vous pouvez soit opter pour pem ou PPK, en fonction du système d'exploitation. Le pem Le format est principalement utilisé pour accéder au système d'exploitation Linux via SSH, tandis que le PPK Le format est utilisé pour accéder à la machine Windows via RDP.

La commande ci-dessus générera la clé privée dans la sortie; Vous devez le sauvegarder immédiatement car vous ne pouvez plus jamais le revoir. Vous devez enregistrer cette sortie dans un fichier avec le .pem extension, et il sera utilisé pour SSH dans le cas où il est associé à.

Création d'un groupe de sécurité d'instance

Les groupes de sécurité aident à améliorer la sécurité du réseau de votre instance EC2 en vous permettant de définir le trafic entrant et sortant pour votre instance. Le groupe de sécurité agit comme un pare-feu virtuel devant votre instance EC2 et peut être utilisé pour protéger votre instance contre le détournement. Vous pouvez spécifier des gammes IP et d'autres groupes de sécurité en tant que sources et peut permettre le trafic sur des ports spécifiques à partir de ces sources.

Les groupes de sécurité ont une limitation: vous ne pouvez créer que le permettre règles, et le refuser Les règles ne peuvent pas être créées. De plus, les groupes de sécurité sont avec état, ce qui signifie que si vous définissez une règle entrante pour une IP, elle atteindra automatiquement la capacité sortante.

Pour créer un groupe de sécurité à l'aide de l'interface de ligne de commande AWS, utilisez la commande suivante dans le terminal.

ubuntu @ ubuntu: ~ $ aws ec2 create-security-group \
--nom de groupe \
--description <“Security Group Description”>

Dans la sortie, vous obtenez uniquement l'ID de groupe de sécurité. Le groupe nouvellement créé, par défaut, n'a aucune autorisation entrante et toutes les autorisations sortantes. Vous pouvez afficher les détails de votre groupe de sécurité comme décrit ci-dessous.

ubuntu @ ubuntu: ~ $ aws ec2 décrits-security-groups \
--noms de groupe

Maintenant, pour ajouter une règle entrante au groupe de sécurité, la commande suivante peut être utilisée.

ubuntu @ ubuntu: ~ $ aws ec2 autorise-security-group-iningress \
--port 22 \
--protocole TCP \
--groupe de groupe \
--cidr 0.0.0.0/0

Dans cette commande, vous autorisez votre groupe de sécurité à autoriser le trafic réseau à partir de toute adresse IP sur le port 22. La commande générera la sortie suivante.

Maintenant, si nous exécutons à nouveau le décrire le groupe de sécurité Commande, vous verrez la règle entrante nouvellement ajoutée là-bas.

Création d'une instance EC2

La création d'une instance EC2 à partir de la CLI est une tâche simple; Il existe un grand nombre d'options que vous pouvez spécifier lors de la création de l'instance EC2, que vous verrez une par une en détail.

Commençons par créer l'instance en utilisant AWS CLI avec un minimum d'options. La commande suivante peut être utilisée sur le terminal pour créer l'instance EC2 avec un minimum d'options.

ubuntu @ ubuntu: ~ $ aws ec2 run-instances \
--ID d'image \
--compter \
--type d'instance \
--nom de clé \
--Sécurité-Groupe-IDS

Lorsque vous exécutez cette commande, vous obtiendrez une sortie détaillée de l'instance nouvellement créée.

Comme vous pouvez le voir, il existe plusieurs paramètres spécifiés dans la commande pour créer l'instance EC2, et ce qui suit est une description détaillée de chaque paramètre.

Le ID d'image L'ID de l'image de la machine Amazon ou le système d'exploitation que vous souhaitez utiliser sur votre instance. Il existe une longue liste d'images de machine disponibles dans AWS, et vous pouvez également créer votre propre image et la vendre sur le marché communautaire.

Le compter L'option peut être utilisée pour spécifier le nombre d'instances EC2 que vous souhaitez créer en utilisant l'interface de ligne de commande AWS avec les mêmes configurations.

Le type d'instance L'option est utilisée pour spécifier l'allocation des ressources comme le CPU et la mémoire à votre instance EC2. AWS fournit divers types d'instances, et vous pouvez afficher tous ces types d'instances en visitant le lien suivant.

https: // aws.amazone.com / ec2 / instance-types /

Le nom de clé L'option spécifie le nom de la paire de clés SSH que nous devons attacher à notre instance. Cette paire de clés SSH peut ensuite être utilisée pour accéder à l'instance EC2 à distance. Dans la section précédente, nous avons discuté de la façon dont nous pouvons créer une paire de clés SSH à l'aide de l'interface de ligne de commande AWS.

Le groupe de sécurité L'option est utilisée pour spécifier une liste de groupes de sécurité qui seront attachés à l'instance EC2 lancée. AWS attachera le groupe de sécurité par défaut avec l'instance EC2 si elle n'est pas spécifiée.

Paramètres EC2 supplémentaires

Nous avons déjà expliqué de nombreux paramètres d'instance, mais encore, il existe de nombreux autres paramètres disponibles. Cette section discutera des paramètres plus détaillés qui nous aident à configurer l'instance EC2 nouvellement créée en fonction de nos exigences. Ces paramètres sont définis avec la création d'instances EC2 mais sont facultatifs et ne sont pas nécessaires pour spécifier tout le temps.

Zone de disponibilité

Chaque région AWS possède une ou plusieurs zones de disponibilité qui sont des centres de données géographiquement séparés. Ils aident à augmenter la disponibilité du service AWS dans une région; Si une zone de disponibilité dans une région diminue, les autres zones de disponibilité fonctionneront toujours.

Lorsqu'une instance EC2 est créée, AWS lui attribue automatiquement une zone de disponibilité, mais vous pouvez également le spécifier en fonction de votre exigence d'infrastructure. La zone de disponibilité peut être spécifiée en utilisant le paramètre suivant lors de la création de l'instance EC2 à l'aide de l'interface de ligne de commande AWS.

ubuntu @ ubuntu: ~ $ aws ec2 run-instances \
--compter \
--type d'instance \
--placement disponibilitézone =
--ID d'image \

Vous pouvez voir dans la sortie que l'instance est lancée dans la zone de disponibilité souhaitée.

VPC et sous-réseau

Habituellement, nous créons un VPC distinct (cloud privé virtuel) et des sous-réseaux pour chaque nouvelle application que nous lançons dans notre compte AWS. Cela garantit un niveau élevé de sécurité et permet à toutes les ressources de communiquer sans accéder au réseau public. Si vous ne spécifiez pas de VPC, toutes les instances sont lancées dans le sous-réseau aléatoire du VPC par défaut.

Lors de la création de l'instance EC2 à l'aide de l'interface de ligne de commande AWS, vous pouvez spécifier le sous-réseau en utilisant le -sous-réseau option.

ubuntu @ ubuntu: ~ $ aws ec2 run-instances \
--Type d'instance T2.micro \
--sous-réseau sous-réseau-0d1721ef0b75a675b \
--Image-ID AMI-0CFF7528FF583BF9A \
--chef 1

Lors de la création de l'instance EC2, nous devons uniquement spécifier l'ID de sous-réseau, et l'instance EC2 est automatiquement créée dans le VPC auquel le sous-réseau appartient.

Données utilisateur EC2

Lorsque nous créons une nouvelle instance, vous pouvez spécifier des scripts ou des commandes que vous souhaitez exécuter au démarrage, comme la mise à jour du système ou l'installation de logiciels. C'est juste une chose facultative à faire et pas requise tout le temps, mais cela peut être très utile dans certains cas. Pour fournir les données de l'utilisateur, vous devez créer un script bash qui sera donné en tant que paramètre lors de l'initialisation de l'instance EC2.

Alors ouvrez votre terminal et créez un fichier texte simple.

ubuntu @ ubuntu: ~ $ sudo nano

Écrivons un script pour installer et démarrer un serveur Web Apache sur notre instance.

#!/ bac / bash
sudo yum install httpd -y
sudo systemctl start httpd

Nous pouvons maintenant utiliser ce script de données utilisateur pour exécuter une nouvelle instance; Cette instance aura le serveur Apache préinstallé et l'exécution.

Utilisez l'IP publique de votre nouvelle instance EC2 lancée pour accéder au port 80 sur votre navigateur, et il affichera la page du serveur Web Apache par défaut.

C'est ainsi que vous pouvez utiliser les données utilisateur pour installer ou configurer quelque chose pendant le démarrage d'instance.

Conclusion

AWS fournit l'utilitaire de ligne de commande pour gérer et créer des instances EC2. Cela vous permet également de créer des ressources telles que les clés SSH, les groupes de sécurité et les volumes de stockage. Vous pouvez gérer les données utilisateur EC2, les zones de disponibilité et les sous-ensembles à l'aide de CLI. La plupart des professionnels de l'industrie informatique préfèrent utiliser la CLI à la console GUI parce que vous n'avez pas à basculer entre les onglets et les pages Web. De plus, l'interface graphique continue de mettre à jour, ce qui rend difficile la gestion de tous les paramètres et options.