Lancement, mise en vente et fermeture d'EC2instances Amazon dans le AWS CLI - AWS Command Line Interface

Cette documentation concerne AWS CLI uniquement la version 1. Pour la documentation relative à la version 2 du AWS CLI, consultez le guide de l'utilisateur de la version 2.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Lancement, mise en vente et fermeture d'EC2instances Amazon dans le AWS CLI

Vous pouvez utiliser le AWS Command Line Interface (AWS CLI) pour lancer, répertorier et mettre fin à des instances Amazon Elastic Compute Cloud (AmazonEC2). Si vous lancez une instance qui n'est pas incluse dans le niveau AWS gratuit, vous êtes facturé après le lancement de l'instance et vous êtes facturé pour la durée d'exécution de l'instance, même si elle reste inactive.

Note

Pour des exemples de commandes supplémentaires, consultez le AWS CLI guide AWS CLI .

Prérequis

Pour exécuter les ec2 commandes décrites dans cette rubrique, vous devez :

Lancer votre instance

Pour lancer une EC2 instance Amazon à l'aide de celle AMI que vous avez sélectionnée, utilisez la aws ec2 run-instances commande. Vous pouvez lancer l'instance dans un cloud privé virtuel (VPC).

Au départ, votre instance apparait dans l'état pending, mais passe à l'état running après quelques minutes.

L'exemple suivant montre comment lancer une t2.micro instance dans le sous-réseau spécifié d'unVPC. Remplacez le italicized valeurs de paramètres avec les vôtres.

$ aws ec2 run-instances --image-id ami-xxxxxxxx --count 1 --instance-type t2.micro --key-name MyKeyPair --security-group-ids sg-903004f8 --subnet-id subnet-6e7f829e { "OwnerId": "123456789012", "ReservationId": "r-5875ca20", "Groups": [ { "GroupName": "my-sg", "GroupId": "sg-903004f8" } ], "Instances": [ { "Monitoring": { "State": "disabled" }, "PublicDnsName": null, "Platform": "windows", "State": { "Code": 0, "Name": "pending" }, "EbsOptimized": false, "LaunchTime": "2013-07-19T02:42:39.000Z", "PrivateIpAddress": "10.0.1.114", "ProductCodes": [], "VpcId": "vpc-1a2b3c4d", "InstanceId": "i-5203422c", "ImageId": "ami-173d747e", "PrivateDnsName": "ip-10-0-1-114.ec2.internal", "KeyName": "MyKeyPair", "SecurityGroups": [ { "GroupName": "my-sg", "GroupId": "sg-903004f8" } ], "ClientToken": null, "SubnetId": "subnet-6e7f829e", "InstanceType": "t2.micro", "NetworkInterfaces": [ { "Status": "in-use", "SourceDestCheck": true, "VpcId": "vpc-1a2b3c4d", "Description": "Primary network interface", "NetworkInterfaceId": "eni-a7edb1c9", "PrivateIpAddresses": [ { "PrivateDnsName": "ip-10-0-1-114.ec2.internal", "Primary": true, "PrivateIpAddress": "10.0.1.114" } ], "PrivateDnsName": "ip-10-0-1-114.ec2.internal", "Attachment": { "Status": "attached", "DeviceIndex": 0, "DeleteOnTermination": true, "AttachmentId": "eni-attach-52193138", "AttachTime": "2013-07-19T02:42:39.000Z" }, "Groups": [ { "GroupName": "my-sg", "GroupId": "sg-903004f8" } ], "SubnetId": "subnet-6e7f829e", "OwnerId": "123456789012", "PrivateIpAddress": "10.0.1.114" } ], "SourceDestCheck": true, "Placement": { "Tenancy": "default", "GroupName": null, "AvailabilityZone": "us-west-2b" }, "Hypervisor": "xen", "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "Status": "attached", "DeleteOnTermination": true, "VolumeId": "vol-877166c8", "AttachTime": "2013-07-19T02:42:39.000Z" } } ], "Architecture": "x86_64", "StateReason": { "Message": "pending", "Code": "pending" }, "RootDeviceName": "/dev/sda1", "VirtualizationType": "hvm", "RootDeviceType": "ebs", "Tags": [ { "Value": "MyInstance", "Key": "Name" } ], "AmiLaunchIndex": 0 } ] }

Ajouter un périphérique de stockage en mode bloc à votre instance

Un volume de périphérique racine est associé à chaque instance que vous lancez. Vous pouvez utiliser le mappage des périphériques en mode bloc pour spécifier des volumes Amazon Elastic Block Store (AmazonEBS) supplémentaires ou des volumes de stockage d'instance à associer à une instance lors de son lancement.

Pour ajouter un périphérique de stockage en mode bloc, indiquez l'option --block-device-mappings lorsque vous utilisez run-instances.

L'exemple de paramètre suivant fournit un EBS volume Amazon standard d'une taille de 20 Go et le mappe à votre instance à l'aide de l'identifiant/dev/sdf.

--block-device-mappings "[{\"DeviceName\":\"/dev/sdf\",\"Ebs\":{\"VolumeSize\":20,\"DeleteOnTermination\":false}}]"

L'exemple suivant ajoute un EBS volume Amazon, mappé vers/dev/sdf, sur la base d'un instantané existant. Un instantané représente une image qui est chargée sur le volume pour vous. Lorsque vous spécifiez un instantané, vous n'avez pas besoin de spécifier de volume ; il sera suffisamment grand pour contenir votre image. Cependant, si vous spécifiez une taille, elle doit être supérieure ou égale à la taille de l'instantané.

--block-device-mappings "[{\"DeviceName\":\"/dev/sdf\",\"Ebs\":{\"SnapshotId\":\"snap-a1b2c3d4\"}}]"

L'exemple suivant permet d'ajouter deux volumes à votre instance. Le nombre de volumes disponibles pour votre instance varie en fonction de son type d'instance.

--block-device-mappings "[{\"DeviceName\":\"/dev/sdf\",\"VirtualName\":\"ephemeral0\"},{\"DeviceName\":\"/dev/sdg\",\"VirtualName\":\"ephemeral1\"}]"

L'exemple suivant crée le mappage (/dev/sdj), mais n'alloue pas de volume à l'instance.

--block-device-mappings "[{\"DeviceName\":\"/dev/sdj\",\"NoDevice\":\"\"}]"

Pour plus d'informations, consultez la section Block Device Mapping dans le guide de EC2 l'utilisateur Amazon.

Ajouter une balise à votre instance

Une étiquette est une étiquette que vous attribuez à une AWS ressource. Elle vous permet d'ajouter des métadonnées à vos ressources que vous pouvez utiliser à des fins diverses. Pour plus d'informations, consultez la section Marquage de vos ressources dans le guide de l'EC2utilisateur Amazon.

L'exemple suivant montre comment ajouter une balise portant le nom de clé « Name » et la valeur « MyInstance » à l'instance spécifiée, à l'aide de la aws ec2 create-tags commande.

$ aws ec2 create-tags --resources i-5203422c --tags Key=Name,Value=MyInstance

Se connecter à votre instance

Lorsque votre instance est en cours d'exécution, vous pouvez vous y connecter et l'utiliser comme vous le feriez depuis un ordinateur devant lequel vous êtes assis. Pour plus d'informations, consultez Connect to Your Amazon EC2 Instance dans le guide de EC2 l'utilisateur Amazon.

Répertorier vos instances

Vous pouvez utiliser le AWS CLI pour répertorier vos instances et consulter les informations les concernant. Vous pouvez afficher l'ensemble de vos instances, ou filtrer les résultats en fonction des instances qui vous intéressent.

Les exemples suivants montrent comment utiliser la aws ec2 describe-instances commande.

La commande suivante répertorie toutes vos instances.

$ aws ec2 describe-instances

La commande suivante filtre la liste uniquement pour vos instances t2.micro et fournit uniquement en sortie les valeurs InstanceId pour chaque correspondance.

$ aws ec2 describe-instances --filters "Name=instance-type,Values=t2.micro" --query "Reservations[].Instances[].InstanceId" [ "i-05e998023d9c69f9a" ]

La commande suivante liste toutes vos instances ayant la balise Name=MyInstance.

$ aws ec2 describe-instances --filters "Name=tag:Name,Values=MyInstance"

La commande suivante répertorie les instances qui ont été lancées à l'aide de l'une des AMIs méthodes suivantes : ami-x0123456ami-y0123456, etami-z0123456.

$ aws ec2 describe-instances --filters "Name=image-id,Values=ami-x0123456,ami-y0123456,ami-z0123456"

Résilier une instance

Mettre fin à une instance la supprime. Vous ne pouvez pas vous y reconnecter une fois que vous l'avez résiliée.

Dès que l'état de l'instance passe à shutting-down ou terminated, l'instance ne vous est plus facturée. Si vous souhaitez vous reconnecter à une instance ultérieurement, utilisez stop-instances au lieu de terminate-instances. Pour plus d'informations, consultez Résilier votre instance dans le guide de EC2 l'utilisateur Amazon.

Pour supprimer une instance, vous devez utiliser la commande aws ec2 terminate-instances pour la supprimer.

$ aws ec2 terminate-instances --instance-ids i-5203422c { "TerminatingInstances": [ { "InstanceId": "i-5203422c", "CurrentState": { "Code": 32, "Name": "shutting-down" }, "PreviousState": { "Code": 16, "Name": "running" } } ] }

Références

AWS CLI référence :

Autre référence :