Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

AWS CDK tutoriel pour AWS Cloud9

Mode de mise au point
AWS CDK tutoriel pour AWS Cloud9 - AWS Cloud9

AWS Cloud9 n'est plus disponible pour les nouveaux clients. Les clients existants de AWS Cloud9 peuvent continuer à utiliser le service normalement. En savoir plus

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.

AWS Cloud9 n'est plus disponible pour les nouveaux clients. Les clients existants de AWS Cloud9 peuvent continuer à utiliser le service normalement. En savoir plus

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.

Ce didacticiel explique comment utiliser le AWS Cloud Development Kit (AWS CDK) dans un environnement de AWS Cloud9 développement. AWS CDK Il s'agit d'un ensemble d'outils logiciels et de bibliothèques que les développeurs peuvent utiliser pour modéliser les composants de AWS l'infrastructure sous forme de code.

AWS CDK Il inclut la bibliothèque AWS Construct que vous pouvez utiliser pour résoudre rapidement de nombreuses tâches AWS. Par exemple, vous pouvez utiliser la construction Fleet pour déployer intégralement et en toute sécurité du code pour une flotte d'hôtes. Vous pouvez créer vos propres structures pour modéliser différents éléments de vos architectures, les partager avec d'autres personnes, ou les diffuser à la communauté. Pour en savoir plus, consultez le Guide du développeur AWS Cloud Development Kit.

Le fait de suivre ce didacticiel et de créer cet exemple peut entraîner des frais sur votre AWS compte. Cela inclut les frais éventuels pour des services tels qu'Amazon EC2, Amazon SNS et Amazon SQS. Pour plus d'informations, consultez les rubriques Amazon EC2 Pricing, Amazon SNS Pricing et Amazon SQS Pricing.

Prérequis

Avant d'utiliser cet exemple, vérifiez que votre configuration respecte les conditions requises suivantes :

  • Vous devez disposer d'un environnement AWS Cloud9 EC2 de développement existant. Cet exemple suppose que vous disposez déjà d'un EC2 environnement connecté à une EC2 instance Amazon qui exécute Amazon Linux ou Ubuntu Serveur. Si vous utilisez un autre type d'environnement ou de système d'exploitation, vous devrez peut-être adapter les instructions de cet exemple pour configurer les outils associés. Pour de plus amples informations, veuillez consulter Création d'un environnement dans AWS Cloud9.

  • L' AWS Cloud9 IDE correspondant à l'environnement existant est déjà ouvert. Lorsque vous ouvrez un environnement, AWS Cloud9 ouvre l'IDE correspondant à cet environnement dans votre navigateur Web. Pour de plus amples informations, veuillez consulter Ouvrir un environnement dans AWS Cloud9.

Étape 1 : Installer les outils requis

Au cours de cette étape, vous installez dans votre environnement tous les outils AWS CDK nécessaires pour exécuter un exemple écrit dans le langage TypeScript de programmation.

  1. Node Version Manager, ou nvm , que vous utilisez pour installer Node.js ultérieurement.

  2. Node.js, qui est requis par l'exemple et contient le Node Package Manager, ou npm, que vous utilisez pour l'installation TypeScript et les AWS CDK versions ultérieures.

  3. TypeScript, qui est requis par cet exemple. (Il prend AWS CDK également en charge plusieurs autres langages de programmation.)

  4. Le CDK AWS.

Étape 1.1 : Installer le Gestionnaire de version de nœud (nvm)

  1. Lors d'une session de terminal dans l' AWS Cloud9 IDE, assurez-vous que les dernières mises à jour de sécurité et corrections de bogues sont installées. Pour ce faire, exécutez la commande yum update (pour Amazon Linux) ou apt update (pour Ubuntu Server). (Pour démarrer une nouvelle séance de terminal, dans la barre de menus, choisissez Window, Nouveau Terminal.)

    Pour Amazon Linux :

    sudo yum -y update

    Pour Ubuntu Server :

    sudo apt update
  2. Vérifiez si nvm est déjà installé. Pour ce faire, exécutez la commande nvm avec l'option --version .

    nvm --version

    En cas de réussite, la sortie contient le numéro de version de nvm, et vous pouvez passer directement à Étape 1.2 : Installer Node.js..

  3. Téléchargez et installez nvm . Pour ce faire, exécutez le script d'installation. Dans cet exemple, v0.33.0 est installé, mais vous pouvez vérifier la dernière version de nvm ici.

    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
  4. Commencez à utiliser nvm . Vous pouvez fermer la session de terminal et la redémarrer, ou approvisionner le fichier ~/.bashrc qui contient les commandes pour charger nvm .

    . ~/.bashrc

Étape 1.2 : Installer Node.js.

  1. Vérifiez si vous avez déjà installé Node.js et, si vous le faites, assurez-vous qu'il s'agit de la version 16.17.0 ou d'une version supérieure. Cet exemple a été testé avec Node.js 16.17.0. Pour vérifier, avec la séance de terminal toujours ouverte dans l'IDE, exécutez la commande node avec l'option --version .

    node --version

    Si Node.js est bien installé, la sortie contient le numéro de version. Si le numéro de version est v16.17.0, passez directement à Étape 1.3 : Installation TypeScript.

  2. Installez Node.js 16 en exécutant la nvmcommande avec l'installaction.

    Note

    Vous pouvez également exécuter nvm install nodepour installer la version de support à long terme (LTS) de Node.js. AWS Cloud9 support suit la version LTS de Node.js.

    nvm install v16
  3. Commencez à utiliser Node.js 16. Pour ce faire, exécutez la commande nvm avec l'action alias , le numéro de version d'alias et la version à utiliser pour cet alias, comme suit.

    nvm alias default 16
    Note

    La commande précédente définit Node.js 16 comme version par défaut de Node.js. Vous pouvez également exécuter la commande nvm ainsi que l'action use au lieu de l'action alias (par exemple, nvm use 16.17.0 ). Cependant, l'action use fait que cette version de Node.js s'exécute uniquement lorsque la session de terminal actuelle est en cours d'exécution.

  4. Pour confirmer que vous utilisez Node.js 16, réexécutez la node --versioncommande. Si la bonne version est installée, la sortie contient la version v16.

Étape 1.3 : Installation TypeScript

  1. Vérifiez si vous l'avez déjà TypeScript installé. Pour ce faire, la session du terminal étant toujours ouverte dans l'IDE, exécutez le TypeScript compilateur de ligne de commande avec l'--versionoption.

    tsc --version

    Si vous l'avez TypeScript installé, la sortie contient le numéro de TypeScript version. S' TypeScript il est installé, passez directement àÉtape 1.4 : Installation du AWS CDK.

  2. Installez TypeScript. Pour ce faire, exécutez la npmcommande avec l'installaction, l'-goption et le nom du TypeScript package. Cela s'installe TypeScript en tant que package global dans l'environnement.

    npm install -g typescript
  3. Confirmez qu' TypeScript il est installé. Pour ce faire, exécutez le TypeScript compilateur en ligne de commande avec l'--versionoption.

    tsc --version

    S'il TypeScript est installé, la sortie contient le numéro de TypeScript version.

Étape 1.4 : Installation du AWS CDK

  1. Vérifiez si vous l'avez déjà AWS CDK installé. Pour ce faire, avec la session de terminal toujours ouverte dans l'IDE, exécutez la commande cdk avec l'option --version .

    cdk --version

    Si le AWS CDK est installé, la sortie contient les numéros de AWS CDK version et de build. Passez directement à Étape 2 : Ajouter du code.

  2. Installez le AWS CDK en exécutant la npmcommande accompagnée de l'installaction, du nom du AWS CDK package à installer et de l'-goption permettant d'installer le package globalement dans l'environnement.

    npm install -g aws-cdk
  3. Vérifiez que le AWS CDK est installé et correctement référencé. Pour ce faire, exécutez la commande cdk avec l'option --version .

    cdk --version

    En cas de succès, les numéros de AWS CDK version et de version sont affichés.

Étape 2 : Ajouter du code

Au cours de cette étape, vous créez un exemple de TypeScript projet contenant tout le code source dont vous avez besoin pour déployer une AWS CloudFormation pile par programmation. AWS CDK Cette pile crée une rubrique Amazon SNS et une file d'attente Amazon SQS dans AWS votre compte, puis abonne la file d'attente à la rubrique.

  1. Avec la séance de terminal toujours ouvert dans l'IDE, créez un répertoire pour stocker le code source du projet, par exemple un répertoire ~/environment/hello-cdk dans votre environnement. Puis basculez sur ce répertoire.

    rm -rf ~/environment/hello-cdk # Remove this directory if it already exists. mkdir ~/environment/hello-cdk # Create the directory. cd ~/environment/hello-cdk # Switch to the directory.
  2. Configurez le répertoire en tant que projet de TypeScript langue pour AWS CDK. Pour ce faire, exécutez la commande cdk avec l'action init , le modèle sample-app et l'option --language , ainsi que le nom du langage de programmation.

    cdk init sample-app --language typescript

    Cela crée les fichiers et sous-répertoires suivants dans le répertoire.

    • Un sous-répertoire masqué .git et un fichier masqué .gitignore, ce qui rend le projet compatible avec des outils de contrôle de source tel que Git.

    • Un sous-répertoire lib, qui inclut un fichier hello-cdk-stack.ts. Ce fichier contient le code de votre AWS CDK pile. Ce code est décrit dans l'étape suivante de cette procédure.

    • Un sous-répertoire bin, qui inclut un fichier hello-cdk.ts. Ce fichier contient le point d'entrée de votre AWS CDK application.

    • Un répertoire node_modules qui contient les packages de code pris en charge, que l'application et la pile peuvent utiliser selon leurs besoins.

    • Un fichier masqué .npmignore, qui répertorie les types de sous-répertoires et les fichiers dont npm n'a pas besoin lorsqu'il crée le code.

    • Un fichier cdk.json, qui contient les informations pour exécuter la commande cdk plus facilement.

    • Un fichier package-lock.json, qui contient des informations que npm peut utiliser pour réduire la création et l'exécution d'erreurs éventuelles.

    • Un fichier package.json, qui contient les informations pour exécuter la commande npm plus facilement et avec probablement moins d'erreurs de création et d'exécution.

    • Un README.md fichier répertoriant les commandes utiles que vous pouvez exécuter avec npmet le AWS CDK.

    • Un fichier tsconfig.json, qui contient les informations pour exécuter la commande tsc plus facilement et avec probablement moins d'erreurs de création et d'exécution.

  3. Dans la fenêtre Environnement, ouvrez le fichier lib/hello-cdk-stack.ts et recherchez le code suivant dans le fichier.

    import sns = require('@aws-cdk/aws-sns'); import sqs = require('@aws-cdk/aws-sqs'); import cdk = require('@aws-cdk/cdk'); export class HelloCdkStack extends cdk.Stack { constructor(parent: cdk.App, name: string, props?: cdk.StackProps) { super(parent, name, props); const queue = new sqs.Queue(this, 'HelloCdkQueue', { visibilityTimeoutSec: 300 }); const topic = new sns.Topic(this, 'HelloCdkTopic'); topic.subscribeQueue(queue); } }
    • Les Topic classes StackApp,StackProps,Queue, et représentent respectivement une AWS CloudFormation pile et ses propriétés, un programme exécutable, une file d'attente Amazon SQS et une rubrique Amazon SNS.

    • La HelloCdkStack classe représente la AWS CloudFormation pile de cette application. Cette pile contient la nouvelle file d'attente Amazon SQS et la rubrique Amazon SNS pour cette application.

  4. Dans la fenêtre Environnement, ouvrez le fichier bin/hello-cdk.ts et recherchez le code suivant dans le fichier.

    #!/usr/bin/env node import cdk = require('@aws-cdk/cdk'); import { HelloCdkStack } from '../lib/hello-cdk-stack'; const app = new cdk.App(); new HelloCdkStack(app, 'HelloCdkStack'); app.run();

    Ce code charge, instancie, puis exécute la classe HelloCdkStack à partir du fichier lib/hello-cdk-stack.ts.

  5. npmUtilisez-le pour exécuter le TypeScript compilateur afin de vérifier les erreurs de codage, puis d'activer le AWS CDK pour exécuter le bin/hello-cdk.js fichier du projet. Pour ce faire, dans le répertoire racine du projet, exécutez la commande npm avec l'action run , en spécifiant la valeur de la commande build dans le fichier package.json, comme suit.

    npm run build

    La commande précédente exécute le TypeScript compilateur, qui ajoute des supports bin/hello-cdk.d.ts et lib/hello-cdk-stack.d.ts des fichiers. Le compilateur transpile également les fichiers hello-cdk-stack.ts et hello-cdk.ts dans les fichiers hello-cdk-stack.js et hello-cdk.js.

Étape 3 : Exécuter le code

Au cours de cette étape, vous lui demandez AWS CDK de créer un modèle de AWS CloudFormation pile basé sur le code contenu dans le bin/hello-cdk.js fichier. Vous lui demandez ensuite de AWS CDK déployer la pile, ce qui crée la rubrique Amazon SNS et la file d'attente Amazon SQS, puis abonne la file d'attente à la rubrique. Vous pouvez alors confirmer que la rubrique et la file d'attente ont été déployées avec succès en envoyant un message à partir de la rubrique pour la file d'attente.

  1. Demandez à AWS CDK créer le modèle de AWS CloudFormation pile. Pour ce faire, la séance de terminal toujours ouverte dans l'IDE, à partir du répertoire à la racine du projet, exécutez la commande cdk avec l'action synth et le nom de la pile.

    cdk synth HelloCdkStack

    En cas de succès, la sortie affiche la Resources section du modèle de AWS CloudFormation pile.

  2. La première fois que vous déployez une AWS CDK application dans un environnement pour une combinaison de AWS compte et de AWS région spécifique, vous devez installer une pile bootstrap. Cette pile comprend diverses ressources dont elle a AWS CDK besoin pour effectuer ses différentes opérations. Par exemple, cette pile inclut un compartiment Amazon S3 AWS CDK utilisé pour stocker des modèles et des actifs au cours de ses processus de déploiement. Pour installer la pile d'amorçage, exécutez la commande cdk avec l'action bootstrap.

    cdk bootstrap
    Note

    Si vous exécutez cdk bootstrap sans spécifier d'options, le AWS compte et la AWS région par défaut sont utilisés. Vous pouvez également amorcer un environnement spécifique en spécifiant un profil et une combinaison compte/région. Par exemple :

    cdk bootstrap --profile test 123456789012/us-east-1
  3. Demandez-leur d' AWS CDK exécuter le modèle de AWS CloudFormation pile pour déployer la pile. Pour ce faire, à partir du répertoire à la racine du projet, exécutez la commande cdk avec l'action deploy , et le nom de la pile.

    cdk deploy HelloCdkStack

    En cas de réussite, la sortie affiche que la pile HelloCdkStack a été déployée sans erreur.

    Note

    Si le résultat affiche un message indiquant que la pile ne définit pas d'environnement et que les AWS informations d'identification n'ont pas pu être obtenues à partir d'emplacements standard ou qu'aucune région n'a été configurée, assurez-vous que vos AWS informations d'identification sont correctement définies dans l'IDE, puis réexécutez la cdk deploycommande. Pour de plus amples informations, veuillez consulter Appeler Services AWS depuis un environnement dans AWS Cloud9.

  4. Pour confirmer que la rubrique Amazon SNS et la file d'attente Amazon SQS ont été déployées avec succès, envoyez un message à la rubrique et vérifiez la file d'attente pour voir si le message a été reçu. Pour ce faire, vous pouvez utiliser un outil tel que le AWS Command Line Interface (AWS CLI) ou le AWS CloudShell. Pour plus d'informations sur ces outils, consultez AWS CLI et tutoriel aws-shell pour AWS Cloud9.

    Par exemple, pour envoyer un message au sujet, alors que la session du terminal est toujours ouverte dans l'IDE, utilisez la commande AWS CLI pour exécuter la publishcommande Amazon SNS, en fournissant l'objet et le corps du message, la AWS région du sujet et le nom de ressource Amazon (ARN) du sujet.

    aws sns publish --subject "Hello from the AWS CDK" --message "This is a message from the AWS CDK." --topic-arn arn:aws:sns:us-east-2:123456789012:HelloCdkStack-HelloCdkTopic1A234567-8BCD9EFGHIJ0K

    Dans la commande précédente, remplacez arn:aws:sns:us-east-2:123456789012:HelloCdkStack-HelloCdkTopic1A234567-8BCD9EFGHIJ0K par l'ARN AWS CloudFormation attribué au sujet. Pour obtenir l'ID, vous pouvez exécuter la commande Amazon SNS list-topics .

    aws sns list-topics --output table --query 'Topics[*].TopicArn'

    En cas de réussite, la sortie de la commande publish affiche la valeur MessageId pour le message qui a été publié.

    Pour vérifier la file d'attente pour le message reçu, exécutez la commande Amazon SQS receive-message , en fournissant l'URL de la file d'attente.

    aws sqs receive-message --queue-url https://queue.amazonaws.com/123456789012/HelloCdkStack-HelloCdkQueue1A234567-8BCD9EFGHIJ0K

    Dans la commande précédente, remplacez https://queue.amazonaws.com/123456789012/HelloCdkStack-HelloCdkQueue1A234567-8BCD9EFGHIJ0K par l'ARN AWS CloudFormation assigné à la file d'attente. Pour obtenir l'URL, vous pouvez exécuter la commande Amazon SQS list-queues .

    aws sqs list-queues --output table --query 'QueueUrls[*]'

    En cas de réussite, la sortie de la commande receive-message affiche l'information pour le message qui a été reçu.

Étape 4 : nettoyer

Pour éviter que votre AWS compte ne soit débité une fois que vous aurez fini d'utiliser cet exemple, vous devez supprimer la AWS CloudFormation pile. Cela supprime la rubrique Amazon SNS et la file d'attente Amazon SQS. Vous devez également supprimer l'environnement.

Étape 4.1 : supprimer la pile

Avec la séance de terminal toujours ouverte dans l'IDE, à partir du répertoire à la racine du projet, exécutez la commande cdk avec l'action destroy et le nom de la pile.

cdk destroy HelloCdkStack

Lorsque vous êtes invité à supprimer la pile, tapez y, puis appuyez sur Enter.

En cas de réussite, la sortie affiche que la pile HelloCdkStack a été supprimée sans erreur.

Étape 4.2 : Supprimer l'environnement

Pour supprimer l'environnement, consultez Supprimer un environnement dans AWS Cloud9.

Rubrique suivante :

Tutoriel LAMP

Rubrique précédente :

Tutoriel Amazon DynamoDB
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.