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.
Utilisation d'Amazon Lightsail avec AWS CLI
Ce didacticiel vous explique les opérations courantes d'Amazon Lightsail à l'aide AWS Command Line Interface de ().AWS CLI Vous apprendrez à créer et à gérer les ressources Lightsail, notamment les paires de clés, les instances, le stockage et les instantanés.
Rubriques
Prérequis
Avant de commencer ce didacticiel, assurez-vous de disposer des éléments suivants.
-
Le AWS CLI. Si vous devez l'installer, suivez le guide AWS CLI d'installation. Vous pouvez également utiliser AWS CloudShell, ce qui inclut le AWS CLI.
-
Vous avez configuré AWS CLI avec les informations d'identification appropriées. Exécutez
aws configure
si vous n'avez pas encore configuré vos informations d'identification. -
Connaissance de base des interfaces de ligne de commande et des concepts SSH.
-
Autorisations suffisantes pour créer et gérer les ressources Lightsail dans votre compte. AWS
Avant de commencer, définissez la variable d'AWS_REGION
environnement sur la même région que celle que vous avez configurée AWS CLI à utiliser, si ce n'est déjà fait. Cette variable d'environnement est utilisée dans les exemples de commandes pour spécifier une zone de disponibilité pour les ressources Lightsail.
$
[ -z "${AWS_REGION}" ] && export AWS_REGION=$(aws configure get region)
Commençons par créer et gérer les ressources Amazon Lightsail à l'aide de la CLI.
Génération de paires de clés SSH
Les paires de clés SSH vous permettent de vous connecter en toute sécurité à vos instances Lightsail sans utiliser de mots de passe. Dans cette section, vous allez créer une nouvelle paire de clés et récupérer ses informations.
Exemple — Crée une nouvelle paire de clés
La commande suivante crée une nouvelle paire de clés SSH nommée « cli-tutorial-keys » et enregistre la clé privée sur votre machine locale.
$
aws lightsail create-key-pair --key-pair-name cli-tutorial-keys \ --query privateKeyBase64 --output text > ~/.ssh/cli-tutorial-keys.pem
$chmod 400 ~/.ssh/cli-tutorial-keys.pem
Après avoir exécuté cette commande, la clé privée est enregistrée ~/.ssh
dans votre répertoire avec les autorisations appropriées. La chmod
commande garantit que vous êtes le seul à pouvoir lire le fichier de clé privée, ce qui est une exigence de sécurité pour SSH.
Exemple — Récupère les informations sur les paires de clés
Vous pouvez vérifier que votre paire de clés a bien été créée en récupérant ses informations.
$
aws lightsail get-key-pair --key-pair-name cli-tutorial-keys
{ "keyPair": { "name": "cli-tutorial-keys", "arn": "arn:aws:lightsail:us-east-2:123456789012:KeyPair/e00xmpl-6a6a-434a-bff1-87f2bb815e21", "supportCode": "123456789012/cli-tutorial-keys", "createdAt": 1673596800.000, "location": { "availabilityZone": "all", "regionName": "us-east-2" }, "resourceType": "KeyPair", "tags": [], "fingerprint": "d0:0d:30:db:5a:24:df:f6:17:f0:e2:15:45:77:3d:bb:d0:6d:fc:81" } }
La sortie affiche des détails sur votre paire de clés, notamment son nom, son ARN, son heure de création, sa région et son empreinte digitale. Cette empreinte peut être utilisée pour vérifier l'authenticité de la clé lors de la connexion à des instances.
Création et gestion d'instances
Les instances Lightsail sont des serveurs privés virtuels qui exécutent des applications ou des sites Web. Dans cette section, vous allez créer une WordPress instance et récupérer ses détails.
Exemple — Crée une WordPress instance
La commande suivante crée une nouvelle WordPress instance à l'aide du nano_3_0
bundle (la plus petite taille d'instance de Lightsail) et l'associe à votre paire de clés. La commande utilise la variable d'AWS_REGION
environnement pour créer l'instance dans une zone de disponibilité de votre région configurée.
$
aws lightsail create-instances --instance-names cli-tutorial \ --availability-zone ${AWS_REGION}a --blueprint-id wordpress \ --bundle-id nano_3_0 --key-pair-name cli-tutorial-keys
{ "operations": [ { "id": "f30xmpl-3727-492a-9d42-5c94ad3ef9a8", "resourceName": "cli-tutorial", "resourceType": "Instance", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "isTerminal": false, "operationType": "CreateInstance", "status": "Started", "statusChangedAt": 1673596800.000 } ] }
La réponse indique que l'opération de création d'instance a commencé. La disponibilité de votre instance peut prendre quelques minutes.
Exemple — Obtenez les détails de l'instance
Une fois votre instance créée, vous pouvez récupérer ses détails à l'aide de la commande suivante.
$
aws lightsail get-instance --instance-name cli-tutorial
{ "instance": { "name": "cli-tutorial", "arn": "arn:aws:lightsail:us-east-2:123456789012:Instance/7d3xmpl-ae2e-44d5-bbd9-22f9ec2abe1f", "supportCode": "123456789012/i-099cxmpl5dad5923c", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "resourceType": "Instance", "tags": [], "blueprintId": "wordpress", "blueprintName": "WordPress", "bundleId": "nano_3_0", "isStaticIp": false, "privateIpAddress": "172.26.6.136", "publicIpAddress": "203.0.113.75", "ipv6Addresses": [ "2600:1f14:ab4:3800:ceef:89e2:f57:f25" ], "ipAddressType": "dualstack", "hardware": { "cpuCount": 2, "disks": [ { "createdAt": 1673596800.000, "sizeInGb": 20, "isSystemDisk": true, "iops": 100, "path": "/dev/xvda", "attachedTo": "cli-tutorial", "attachmentState": "attached" } ], "ramSizeInGb": 0.5 }, "networking": { "monthlyTransfer": { "gbPerMonthAllocated": 1024 }, "ports": [ { "fromPort": 80, "toPort": 80, "protocol": "tcp", "accessFrom": "Anywhere (0.0.0.0/0 and ::/0)", "accessType": "public", "commonName": "", "accessDirection": "inbound", "cidrs": [ "0.0.0.0/0" ], "ipv6Cidrs": [ "::/0" ], "cidrListAliases": [] }, { "fromPort": 22, "toPort": 22, "protocol": "tcp", "accessFrom": "Anywhere (0.0.0.0/0 and ::/0)", "accessType": "public", "commonName": "", "accessDirection": "inbound", "cidrs": [ "0.0.0.0/0" ], "ipv6Cidrs": [ "::/0" ], "cidrListAliases": [] }, { "fromPort": 443, "toPort": 443, "protocol": "tcp", "accessFrom": "Anywhere (0.0.0.0/0 and ::/0)", "accessType": "public", "commonName": "", "accessDirection": "inbound", "cidrs": [ "0.0.0.0/0" ], "ipv6Cidrs": [ "::/0" ], "cidrListAliases": [] } ] }, "state": { "code": 16, "name": "running" }, "username": "bitnami", "sshKeyName": "cli-tutorial-keys", "metadataOptions": { "state": "applied", "httpTokens": "optional", "httpEndpoint": "enabled", "httpPutResponseHopLimit": 1, "httpProtocolIpv6": "disabled" } } }
La sortie fournit des informations complètes sur votre instance, notamment ses adresses IP, ses spécifications matérielles, sa configuration réseau et son état. Notez l'adresse IP publique et le nom d'utilisateur, car vous en aurez besoin pour vous connecter à votre instance.
Se connecter à votre instance
Après avoir créé votre instance, vous pouvez vous y connecter via SSH avec la paire de clés que vous avez créée précédemment. Cette section explique comment établir une connexion SSH et gérer les paramètres de sécurité.
Exemple — Connexion SSH à votre instance
Utilisez la commande suivante pour vous connecter à votre instance via SSH, en remplaçant l'adresse IP par l'adresse IP publique de votre instance.
$
ssh -i ~/.ssh/cli-tutorial-keys.pem bitnami@
Linux ip-172-26-6-136 6.1.0-32-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.129-1 (2025-03-06) x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. ___ _ _ _ | _ |_) |_ _ _ __ _ _ __ (_) | _ \ | _| ' \/ _` | ' \| | |___/_|\__|_|_|\__,_|_|_|_|_| *** Welcome to the Bitnami package for WordPress 6.7.2 *** *** Documentation: https://docs.bitnami.com/aws/apps/wordpress/ *** *** https://docs.bitnami.com/aws/ *** *** Bitnami Forums: https://github.com/bitnami/vms/ *** bitnami@ip-172-26-6-136:~$ df Filesystem 1K-blocks Used Available Use% Mounted on udev 217920 0 217920 0% /dev tmpfs 45860 480 45380 2% /run /dev/nvme0n1p1 20403592 3328832 16142256 18% / tmpfs 229292 0 229292 0% /dev/shm tmpfs 5120 0 5120 0% /run/lock /dev/nvme0n1p15 126678 11840 114838 10% /boot/efi tmpfs 45856 0 45856 0% /run/user/1000203.0.113.75
Une fois connecté, vous pouvez gérer votre WordPress installation, configurer votre serveur ou installer des logiciels supplémentaires. L'exemple ci-dessus montre l'utilisation du disque sur l'instance à l'aide de la df
commande.
Exemple — Fermer les ports publics
Lorsque vous n'utilisez pas SSH, vous pouvez fermer les ports publics de votre instance. Cela permet de protéger votre instance contre les tentatives d'accès non autorisées.
$
aws lightsail close-instance-public-ports --instance-name cli-tutorial \ --port-info fromPort=22,protocol=TCP,toPort=22
{ "operation": { "id": "6cdxmpl-9f39-4357-a66d-230096140b4f", "resourceName": "cli-tutorial", "resourceType": "Instance", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "isTerminal": true, "operationDetails": "22/tcp", "operationType": "CloseInstancePublicPorts", "status": "Succeeded", "statusChangedAt": 1673596800.000 } }
Note
La fermeture du port 22 empêche toutes les connexions SSH, y compris celles initiées depuis la console Lightsail. Pour plus d’informations, consultez les rubriques suivantes.
La réponse confirme que le port 22 a été correctement fermé. Lorsque vous devez vous reconnecter via SSH, vous pouvez rouvrir le port à l'aide de la commande. open-instance-public-ports
Ajoutez du stockage à votre instance
Au fur et à mesure que votre application se développe, vous aurez peut-être besoin d'un espace de stockage supplémentaire. Lightsail vous permet de créer et d'associer des disques supplémentaires à vos instances. Cette section explique comment ajouter de l'espace de stockage supplémentaire.
Exemple — Crée un disque
La commande suivante crée un nouveau disque de 32 Go.
$
aws lightsail create-disk --disk-name cli-tutorial-disk \ --availability-zone ${AWS_REGION}a --size-in-gb 32
{ "operations": [ { "id": "070xmpl-3364-4aa2-bff2-3c589de832fc", "resourceName": "cli-tutorial-disk", "resourceType": "Disk", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "isTerminal": false, "operationType": "CreateDisk", "status": "Started", "statusChangedAt": 1673596800.000 } ] }
La réponse indique que l'opération de création du disque a commencé. La disponibilité du disque peut prendre quelques instants.
Exemple — Attachez le disque à votre instance
Une fois le disque créé, vous pouvez l'attacher à votre instance à l'aide de la commande suivante.
$
aws lightsail attach-disk --disk-name cli-tutorial-disk \ --disk-path /dev/xvdf --instance-name cli-tutorial
{ "operations": [ { "id": "d17xmpl-2bdb-4292-ac63-ba5537522cea", "resourceName": "cli-tutorial-disk", "resourceType": "Disk", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "isTerminal": false, "operationDetails": "cli-tutorial", "operationType": "AttachDisk", "status": "Started", "statusChangedAt": 1673596800.000 }, { "id": "01exmpl-c04e-42d4-aa6b-45ce50562a54", "resourceName": "cli-tutorial", "resourceType": "Instance", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "isTerminal": false, "operationDetails": "cli-tutorial-disk", "operationType": "AttachDisk", "status": "Started", "statusChangedAt": 1673596800.000 } ] }
Le paramètre disk-path indique où le disque sera attaché dans le système de fichiers Linux. Après avoir attaché le disque, vous devez le formater et le monter depuis votre instance.
Exemple — Vérifiez la connexion au disque
Vous pouvez vérifier que le disque est correctement connecté en récupérant ses informations.
$
aws lightsail get-disk --disk-name cli-tutorial-disk
{ "disk": { "name": "cli-tutorial-disk", "arn": "arn:aws:lightsail:us-east-2:123456789012:Disk/1a9xmpl-8a34-46a4-b87e-19184f0cca9c", "supportCode": "123456789012/vol-0dacxmplc1c3108e2", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "resourceType": "Disk", "tags": [], "sizeInGb": 32, "isSystemDisk": false, "iops": 100, "path": "/dev/xvdf", "state": "in-use", "attachedTo": "cli-tutorial", "isAttached": true, "attachmentState": "attached" } }
La sortie confirme que le disque est attaché à votre instance. Le champ « state » indique « en cours d'utilisation » et « IsAttached » est défini sur true, ce qui indique une pièce jointe réussie.
Création et utilisation d'instantanés
Les instantanés permettent de sauvegarder votre instance et de créer de nouvelles instances à partir de la sauvegarde. Cela est utile pour la reprise après sinistre, les tests ou la création d'environnements dupliqués.
Exemple — Crée un instantané d'instance
La commande suivante crée un instantané de votre instance.
$
aws lightsail create-instance-snapshot --instance-name cli-tutorial \ --instance-snapshot-name cli-tutorial-snapshot
{ "operations": [ { "id": "41bxmpl-7824-4591-bfcc-1b1c341613a4", "resourceName": "cli-tutorial-snapshot", "resourceType": "InstanceSnapshot", "createdAt": 1673596800.000, "location": { "availabilityZone": "all", "regionName": "us-east-2" }, "isTerminal": false, "operationDetails": "cli-tutorial", "operationType": "CreateInstanceSnapshot", "status": "Started", "statusChangedAt": 1673596800.000 }, { "id": "725xmpl-158e-46f6-bd49-27b0e6805aa2", "resourceName": "cli-tutorial", "resourceType": "Instance", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "isTerminal": false, "operationDetails": "cli-tutorial-snapshot", "operationType": "CreateInstanceSnapshot", "status": "Started", "statusChangedAt": 1673596800.000 } ] }
La réponse indique que le processus de capture instantanée a démarré. Il existe une opération asynchrone pour que l'instance obtienne le cliché et une pour le cliché en cours de création. Le snapshot inclut tous les disques attachés à l'instance.
Exemple — Crée une nouvelle instance à partir d'un instantané
Une fois l'instantané terminé, vous pouvez l'utiliser pour créer une nouvelle instance.
$
aws lightsail create-instances-from-snapshot --availability-zone ${AWS_REGION}b \ --instance-snapshot-name cli-tutorial-snapshot --instance-name cli-tutorial-bup --bundle-id small_3_0
{ "operations": [ { "id": "a35xmpl-efa1-4d6c-958e-9d58fd258f5f", "resourceName": "cli-tutorial-bup", "resourceType": "Instance", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2b", "regionName": "us-east-2" }, "isTerminal": false, "operationType": "CreateInstancesFromSnapshot", "status": "Started", "statusChangedAt": 1673596800.000 } ] }
Cette commande crée une nouvelle instance nommée cli-tutorial-bup
dans la zone de disponibilité us-east-2b
en utilisant la taille du small_3_0
bundle. Notez que vous pouvez choisir une taille de bundle différente pour la nouvelle instance, ce qui peut être utile pour augmenter ou diminuer la taille.
Nettoyage des ressources
Lorsque vous avez terminé d'utiliser vos ressources Lightsail, vous devez les supprimer pour éviter d'encourir des frais supplémentaires. Cette section explique comment nettoyer toutes les ressources créées dans ce didacticiel.
Exemple — Supprime un instantané d'instance
Pour supprimer un instantané dont vous n'avez plus besoin, utilisez la commande suivante.
$
aws lightsail delete-instance-snapshot --instance-snapshot-name cli-tutorial-snapshot
{ "operations": [ { "id": "cf8xmpl-0ec7-43ec-9cbc-6dedd9d8eda8", "resourceName": "cli-tutorial-snapshot", "resourceType": "InstanceSnapshot", "createdAt": 1673596800.000, "location": { "availabilityZone": "all", "regionName": "us-east-2" }, "isTerminal": true, "operationDetails": "", "operationType": "DeleteInstanceSnapshot", "status": "Succeeded", "statusChangedAt": 1673596800.000 } ] }
La réponse confirme que l'opération de suppression du snapshot a réussi.
Exemple — Supprimer une instance
Pour supprimer une instance, utilisez la commande suivante.
$
aws lightsail delete-instance --instance-name cli-tutorial
{ "operations": [ { "id": "f4bxmpl-2df1-4740-90d7-e30adaf7e3a1", "resourceName": "cli-tutorial", "resourceType": "Instance", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "isTerminal": true, "operationDetails": "", "operationType": "DeleteInstance", "status": "Succeeded", "statusChangedAt": 1673596800.000 } ] }
N'oubliez pas de supprimer toutes les instances que vous avez créées, y compris celles créées à partir de snapshots.
Exemple — Supprime un disque
Pour supprimer un disque dont vous n'avez plus besoin, utilisez la commande suivante.
$
aws lightsail delete-disk --disk-name cli-tutorial-disk
{ "operations": [ { "id": "aacxmpl-8626-4edd-8b3b-bf108d6b279c", "resourceName": "cli-tutorial-disk", "resourceType": "Disk", "createdAt": 1673596800.000, "location": { "availabilityZone": "us-east-2a", "regionName": "us-east-2" }, "isTerminal": true, "operationDetails": "", "operationType": "DeleteDisk", "status": "Succeeded", "statusChangedAt": 1673596800.000 } ] }
Si le disque est attaché à une instance, vous devez d'abord le détacher à l'aide de la detach-disk
commande.
Exemple — Supprime une paire de clés
Enfin, supprimez la paire de clés que vous avez créée au début de ce didacticiel.
$
aws lightsail delete-key-pair --key-pair-name cli-tutorial-keys
{ "operation": { "id": "dbfxmpl-c954-4a45-93a4-ab3e627d2c23", "resourceName": "cli-tutorial-keys", "resourceType": "KeyPair", "createdAt": 1673596800.000, "location": { "availabilityZone": "all", "regionName": "us-east-2" }, "isTerminal": true, "operationDetails": "", "operationType": "DeleteKeyPair", "status": "Succeeded", "statusChangedAt": 1673596800.000 } }
Cette commande supprime uniquement la paire de clés de AWS. Maintenant, vous pouvez également supprimer la copie locale.
$
rm ~/.ssh/cli-tutorial-keys.pem
Étapes suivantes
Maintenant que vous avez appris les bases de la gestion des ressources de Lightsail à l'aide de, découvrez AWS CLI les autres fonctionnalités de Lightsail.
-
Domaines — Attribuez un nom de domaine à votre application.
-
Équilibreurs de charge : acheminez le trafic vers plusieurs instances pour augmenter la capacité et la résilience.
-
Instantanés automatiques : sauvegardez automatiquement les données de votre application.
-
Métriques — Surveillez l'état de vos ressources, recevez des notifications et configurez des alarmes.
-
Bases de données : connectez votre application à une base de données relationnelle.
Pour plus d'informations sur AWS CLI les commandes disponibles, consultez le manuel de référence des AWS CLI commandes pour Lightsail.