Ceci est le guide du AWS CDK développeur de la version 2. L'ancienne CDK version 1 est entrée en maintenance le 1er juin 2022 et a pris fin le 1er juin 2023.
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.
Qu'est-ce que c'est AWS CDK ?
AWS Cloud Development Kit (AWS CDK) Il s'agit d'un framework de développement de logiciels open source permettant de définir l'infrastructure cloud dans le code et de la provisionner via ce dernier. AWS CloudFormation
AWS CDK Il se compose de deux parties principales :
-
AWS CDK Bibliothèque de constructions : collection de codes modulaires et réutilisables préécrits, appelés constructions, que vous pouvez utiliser, modifier et intégrer pour développer rapidement votre infrastructure. L'objectif de la bibliothèque AWS CDK Construct est de réduire la complexité requise pour définir et intégrer les AWS services ensemble lors de la création d'applications AWS.
-
AWS CDK Interface de ligne de commande (AWS CDKCLI) : outil de ligne de commande permettant d'interagir avec CDK les applications. Utilisez le CDK CLI pour créer, gérer et déployer vos AWS CDK projets. CDKCLIIl est également appelé la CDK boîte à outils.
Les AWS CDK supportsTypeScript, JavaScriptPython,Java,C#/.Net, etGo. Vous pouvez utiliser n'importe lequel de ces langages de programmation pris en charge pour définir des composants cloud réutilisables appelés constructions. Vous les composez ensemble en piles et en applications. Ensuite, vous déployez vos CDK applications pour AWS CloudFormation provisionner ou mettre à jour vos ressources.
Les avantages du AWS CDK
Utilisez le AWS CDK pour développer des applications fiables, évolutives et économiques dans le cloud avec la puissance expressive considérable d'un langage de programmation. Cette approche présente de nombreux avantages, notamment :
- Développez et gérez votre infrastructure sous forme de code (IaC)
-
Pratiquez l'infrastructure sous forme de code pour créer, déployer et maintenir l'infrastructure de manière programmatique, descriptive et déclarative. Avec IaC, vous traitez l'infrastructure de la même manière que les développeurs traitent le code. Il en résulte une approche évolutive et structurée de la gestion de l'infrastructure. Pour en savoir plus sur l'IaC, consultez la section Infrastructure en tant que code dans le AWS livre blanc Introduction à DevOps on.
Vous pouvez ainsi regrouper votre infrastructure AWS CDK, le code de votre application et votre configuration au même endroit, afin de disposer d'un système complet et déployable dans le cloud à chaque étape. Utilisez les meilleures pratiques d'ingénierie logicielle, telles que les révisions de code, les tests unitaires et le contrôle des sources, pour renforcer la robustesse de votre infrastructure.
- Définissez votre infrastructure cloud à l'aide de langages de programmation polyvalents
-
Avec le AWS CDK, vous pouvez utiliser l'un des langages de programmation suivants pour définir votre infrastructure cloud : TypeScriptJavaScript,Python,Java,C#/.Net, etGo. Choisissez votre langage préféré et utilisez des éléments de programmation tels que les paramètres, les conditions, les boucles, la composition et l'héritage pour définir le résultat souhaité pour votre infrastructure.
Utilisez le même langage de programmation pour définir votre infrastructure et la logique de votre application.
Bénéficiez des avantages du développement d'une infrastructure dans votre environnement de développement intégré préféréIDE, tels que la mise en évidence de la syntaxe et la complétion intelligente du code.
- Déployez l'infrastructure via AWS CloudFormation
-
AWS CDK s'intègre AWS CloudFormation pour déployer et approvisionner votre infrastructure AWS. AWS CloudFormation est un système géré Service AWS qui offre une prise en charge étendue des configurations de ressources et de propriétés pour le provisionnement de services sur AWS. Vous pouvez ainsi effectuer des déploiements d'infrastructure de manière prévisible et répétée, avec annulation en cas d'erreur. AWS CloudFormation Si vous le connaissez déjà AWS CloudFormation, vous n'avez pas besoin de vous familiariser avec un nouveau service de gestion IaC pour démarrer avec le AWS CDK.
- Commencez à développer rapidement votre application avec des constructions
-
Développez plus rapidement en utilisant et en partageant des composants réutilisables appelés constructions. Utilisez des constructions de bas niveau pour définir les AWS CloudFormation ressources individuelles et leurs propriétés. Utilisez des structures de haut niveau pour définir rapidement des composants plus importants de votre application, avec des valeurs par défaut judicieuses et sécurisées pour vos AWS ressources, afin de définir une infrastructure plus complète avec moins de code.
Créez vos propres structures personnalisées pour vos cas d'utilisation uniques et partagez-les au sein de votre organisation ou même avec le public.
Exemple du AWS CDK
Voici un exemple d'utilisation de la bibliothèque AWS CDK Constructs pour créer un service Amazon Elastic Container Service (AmazonECS) avec un type de AWS Fargate lancement. Pour plus de détails sur cet exemple, consultezExemple : créez un AWS Fargate service à l'aide du AWS CDK.
Cette classe produit un AWS CloudFormation modèle de plus de 500 lignes
AWS CDK features
Le AWS CDKGitHub référentiel
Pour le AWS CDK GitHub dépôt officiel, voir aws-cdk
Parce qu' AWS CDK il s'agit d'un outil open source, l'équipe vous encourage à contribuer à en faire un outil encore meilleur. Pour plus de détails, voir Contribuer au AWS Cloud Development Kit (AWS CDK)
La AWS CDK API référence
La AWS CDK bibliothèque de constructions permet APIs de définir votre CDK application et d'ajouter CDK des constructions à l'application. Pour plus d'informations, consultez la AWS CDK APIréférence.
Le modèle de programmation Construct
Le modèle de programmation Construct (CPM) étend les concepts sous-jacents AWS CDK à d'autres domaines. Les autres outils qui l'utilisent CPM incluent :
-
CDKpour Terraform
() CDKtf -
CDKpour Kubernetes
() CDK8s -
Projen
, pour la construction de configurations de projets
Le Construct Hub
Le Construct Hub
Étapes suivantes
Pour commencer à utiliser le AWS CDK, voirCommencer à utiliser le AWS CDK.
En savoir plus
Pour en savoir plus sur le AWS CDK, consultez les rubriques suivantes :
-
Apprenez les concepts AWS CDK de base— Concepts et termes importants pour AWS CDK.
-
AWS CDK Atelier
— Atelier pratique pour apprendre et utiliser le AWS CDK. -
AWS CDK Modèles
— Collection open source de modèles d'architecture AWS sans serveur, conçue pour eux AWS CDK par AWS des experts. -
AWS CDK exemples de code
— GitHub référentiel d'exemples de AWS CDK projets. -
cdk.dev
— Hub géré par la communauté pour le AWS CDK, y compris un espace de travail communautaire. Slack -
Génial CDK
— GitHub référentiel contenant une liste organisée de projets AWS CDK open source, de guides, de blogs et d'autres ressources. -
AWS Constructions de solutions
— Modèles d'infrastructure de configuration sous forme de code (IaC) approuvés qui peuvent facilement être assemblés dans des applications prêtes à être mises en production. -
AWS Blog sur les outils
de développement — Les articles de blog sont filtrés pour le AWS CDK. -
AWS CDK activé Stack Overflow
— Questions marquées avec aws-cdk activé. Stack Overflow -
AWS CDK tutoriel pour AWS Cloud9 — Tutoriel sur l'utilisation AWS CDK de l'environnement de AWS Cloud9 développement.
Pour en savoir plus sur les sujets liés à la AWS CDK, consultez les rubriques suivantes :
-
AWS CloudFormation concepts — Comme AWS CDK il est conçu pour fonctionner avec AWS CloudFormation, nous vous recommandons d'apprendre et de comprendre les AWS CloudFormation concepts clés.
-
AWS Glossaire — Définitions des principaux termes utilisés dans l'ensemble. AWS
Pour en savoir plus sur les outils associés AWS CDK qui peuvent être utilisés pour simplifier le développement et le déploiement d'applications sans serveur, consultez les pages suivantes :
-
AWS Serverless Application Model
— Un outil de développement open source qui simplifie et améliore l'expérience de création et d'exécution d'applications sans serveur sur. AWS -
AWSChalice
— Un framework pour écrire des applications sans serveur. Python