Comment lancer une instance EC2 en utilisant AWS CLI

Comment lancer une instance EC2 en utilisant AWS CLI

Le lancement et la fin des instances EC2 à l'aide de l'interface de ligne de commande AWS sont la partie principale de l'application de l'automatisation pour l'échelle horizontale de l'infrastructure sur AWS. Les ressources d'infrastructure AWS sont surveillées en permanence, et une nouvelle instance EC2 est lancée ou résiliée en fonction des ressources provisionnées et de la charge. L'interface de ligne de commande AWS permet à une infrastructure de surveillance et de provision sur AWS en utilisant certains scripts d'automatisation. Ce blog expliquera comment une instance EC2 peut être lancée à l'aide de l'interface de ligne de commande sur AWS.

Configurer les informations d'identification AWS CLI

Afin d'utiliser l'interface de ligne de commande AWS, générez d'abord et configurez les informations d'identification de l'interface de ligne de commande AWS sur votre système. La commande suivante peut être utilisée pour configurer les informations d'identification d'interface de ligne de commande AWS sur votre système local.

ubuntu @ ubuntu: ~ $ aws configurer

Créer VPC

La première chose avant de lancer une instance EC2 est de configurer un VPC (cloud privé virtuel) dans lequel l'instance EC2 sera lancée. Tout d'abord, énumérez tous les VPC disponibles dans une région spécifique.

ubuntu @ ubuntu: ~ $ aws ec2 décrite-vpcs \
--Région US-East-1

Depuis la sortie, il est clair qu'il n'y a qu'un seul VPC par défaut dans la région US-East-1. Utilisez maintenant la commande Create-VPC du service EC2 pour créer un VPC.

ubuntu @ ubuntu: ~ $ aws ec2 create-vpc \
--CIDR-BLOCK 192.168.0.0/16 \
--Région US-East-1

La commande ci-dessus créera un VPC avec un bloc CIDR spécifié et générera la sortie suivante.

Notez l'ID du VPC car il sera utilisé pour créer toutes les autres ressources à l'intérieur du VPC.

Créer un sous-réseau

Après avoir créé le VPC, créez maintenant un sous-réseau à l'intérieur du VPC créé précédemment. Le sous-réseau peut être créé à l'aide de la commande create-subnet fournie par l'interface de ligne de commande AWS.

ubuntu @ ubuntu: ~ $ aws ec2 create-subnet \
--VPC-ID \
--CIDR-BLOCK 192.168.0.0/24 \
--Région US-East-1

Modifiez maintenant le sous-réseau pour attribuer automatiquement IP public aux instances EC2 lancées à l'intérieur du sous-réseau. Effectuer cette étape uniquement sur les sous-réseaux que vous souhaitez rendre public.

ubuntu @ ubuntu: ~ $ aws ec2 modifier-subnet-attribut \
--sous-réseau \
--Map-Public-ip-on-launch \
--Région US-East-1

Créer et attacher une passerelle Internet à VPC

La passerelle Internet permet la connectivité Internet vers et depuis le VPC sur AWS. Utilisez maintenant la commande Create-Internet-Gateway du service EC2 pour créer une passerelle Internet.

ubuntu @ ubuntu: ~ $ aws ec2 Create-Internet-Gateway \
--Région US-East-1

Maintenant, joignez la passerelle Internet au VPC créé précédemment à l'aide de la commande joint-internet-gateway du service EC2.

ubuntu @ ubuntu: ~ $ aws ec2 attach-internet-gateway \
--VPC-ID \
--Internet-gateway-id \
--Région US-East-1

Créer et associer une table d'itinéraire à un sous-réseau

La passerelle Internet est attachée au VPC, et maintenant nous pouvons acheminer le trafic de notre sous-réseau vers la passerelle Internet à l'aide de la table d'itinéraire. Ce faisant, nous ferons de notre sous-réseau un sous-réseau public. Créez la table d'itinéraire en utilisant la commande Create-Route-Table du service EC2.

ubuntu @ ubuntu: ~ $ aws ec2 create-route-table \
--VPC-ID \
--Région US-East-1

Il créera une table d'itinéraire avec le routage d'itinéraire par défaut tout le trafic à l'intérieur du sous-réseau. Créez maintenant un nouvel itinéraire qui acheminera tout le trafic vers la passerelle Internet permettant une connectivité Internet.

ubuntu @ ubuntu: ~ $ aws ec2 create-route \
--id-table-id \
--destination-cidr 0.0.0.0/0 \
--passerelle \
--Région US-East-1

Après avoir créé la table d'itinéraire et l'itinéraire, utilisez maintenant la commande associée-roupie pour associer la table d'itinéraire au sous-réseau.

Ubuntu @ Ubuntu: ~ $ AWS EC2 Associate-Route-Table \
--sous-réseau \
--id-table-id \
--Région US-East-1

Créer un groupe de sécurité

Après avoir créé le VPC, le sous-réseau et la table de route, il est maintenant temps de créer un groupe de sécurité pour l'instance EC2. Le groupe de sécurité est un pare-feu virtuel fourni par AWS et utilisé pour contrôler le trafic entrant et sortant des instances EC2. L'interface de ligne de commande AWS fournit la commande Create-Sucrity-Group à partir du service EC2 pour créer le groupe de sécurité.

ubuntu @ ubuntu: ~ $ aws ec2 create-security-group \
--Demo-sg de groupe de groupe \
--Description «Groupe de sécurité pour instance de démonstration» \
--VPC-ID \
--Région US-East-1

La commande ci-dessus créera un groupe de sécurité dans le VPC spécifié et renverra l'ID de groupe de sécurité en réponse.

Après avoir créé le groupe de sécurité, configurez le groupe de sécurité pour permettre ou bloquer le trafic entrant et sortant. Pour ce groupe de sécurité, nous ouvrirons le port 22 pour la connexion SSH et le port 80 pour le trafic HTTP.

ubuntu @ ubuntu: ~ $ aws ec2 autorise-security-group-iningress \
--groupe de groupe \
--protocole TCP \
--port 80 \
--cidr 0.0.0.0/0 \
--Région US-East-1
ubuntu @ ubuntu: ~ $ aws ec2 autorise-security-group-iningress \
--groupe de groupe \
--protocole TCP \
--port 22 \
--cidr 0.0.0.0/0 \
--Région US-East-1

Les deux commandes ci-dessus créeront deux règles d'entrée pour le groupe de sécurité afin d'autoriser le trafic entrant des ports 22 et 80.

Générer la clé SSH

Avant de lancer une instance EC2 à l'aide de l'interface de ligne de commande AWS, créez une clé SSH. Une clé SSH est utilisée pour l'authentification, et elle est plus sécurisée que les méthodes d'authentification du nom d'utilisateur et du mot de passe conventionnels. L'interface de ligne de commande AWS fournit la commande create-key-pair à partir du service EC2 pour créer une paire de clés SSH.

ubuntu @ ubuntu: ~ $ aws ec2 create-key-pair \
--paire de clés de clés \
--Texte de sortie \
--requête «keymaterial» \
--Région US-East-1> ./ Demo Key Pair.pem

La commande Create-Key-Pair prend le nom de clé et le type de sortie comme options, et la sortie standard de cette commande a été redirigé vers un fichier nommé de la paire de touche démo.pem. Utilisez la commande Cat pour vérifier si la clé est générée localement ou non.

Ubuntu @ Ubuntu: ~ $ Cat Demo Key-Pair.pem

Après avoir généré la touche SSH, énumérez maintenant la clé SSH à l'aide de la commande décrite-clé du service EC2 pour confirmer si elle est créée sur AWS ou non.

ubuntu @ ubuntu: ~ $ aws ec2 décriv-les-clés \
--paire de clés de clés \
--Région US-East-1

Lancez l'instance EC2 à l'aide de CLI

Jusqu'à présent, nous avons créé toutes les ressources utilisées pour lancer l'instance EC2; Maintenant, il est temps de lancer une instance EC2 en utilisant l'interface de ligne de commande. L'interface de ligne de commande AWS fournit la commande de run-instance pour lancer l'instance EC2.

ubuntu @ ubuntu: ~ $ aws ec2 run-instances \
--ID d'image \
--Compte 1 \
--Type d'instance T2.nano \
--paire de clés de clés \
--Sécurité-Groupe-IDS \
--sous-réseau \
--Région US-East-1

La commande ci-dessus renvoie une longue sortie qui comprend les informations détaillées de l'instance EC2. Copiez maintenant l'ID d'instance et utilisez la commande suivante pour vérifier si l'instance est créée ou non.

ubuntu @ ubuntu: ~ $ aws ec2 décriv
--ID d'instance \
--Région US-East-1

Conclusion

L'interface de ligne de commande AWS est un outil puissant pour automatiser le provisionnement et la résiliation des instances EC2. L'interface de ligne de commande AWS fournit différentes commandes pour créer différentes ressources sur le cloud AWS. Ce blog a utilisé l'interface de ligne de commande pour créer différentes ressources telles que VPC, passerelle Internet, sous-réseau, table d'itinéraire, clé SSH, groupe de sécurité, routes de table d'itinéraire et instance EC2. Après avoir lu ce blog, vous pourrez créer une instance EC2 en utilisant l'interface de ligne de commande.