Questa è la guida per sviluppatori AWS CDK v2. Il vecchio CDK v1 è entrato in manutenzione il 1° giugno 2022 e ha terminato il supporto il 1° giugno 2023.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
AWS Cloud Development Kit (AWS CDK) È un framework di sviluppo software open source per definire l'infrastruttura cloud in codice e fornirla tramite. AWS CloudFormation
AWS CDK Si compone di due parti principali:
-
AWS CDK Construct Library: una raccolta di parti di codice modulari e riutilizzabili prescritte, chiamate costrutti, che è possibile utilizzare, modificare e integrare per sviluppare rapidamente l'infrastruttura. L'obiettivo di AWS CDK Construct Library è ridurre la complessità richiesta per definire e integrare i AWS servizi durante la creazione di applicazioni. AWS
-
AWS CDK Interfaccia a riga di comando (AWS CDK CLI) — Uno strumento a riga di comando per interagire con le app CDK. Usa il CDK CLI per creare, gestire e implementare i tuoi AWS CDK progetti. Il CDK CLI viene anche chiamato CDK Toolkit.
I supporti AWS CDK TypeScript, JavaScript, Python, Java, C#/.Nete Go. Puoi utilizzare uno qualsiasi di questi linguaggi di programmazione supportati per definire componenti cloud riutilizzabili noti come costrutti. Li componi insieme in pile e app. Quindi, distribuisci le tue applicazioni CDK per fornire o AWS CloudFormation aggiornare le tue risorse.

Argomenti
Vantaggi della AWS CDK
Utilizzalo AWS CDK per sviluppare applicazioni affidabili, scalabili ed economiche nel cloud con la notevole potenza espressiva di un linguaggio di programmazione. Questo approccio offre molti vantaggi, tra cui:
- Sviluppa e gestisci la tua infrastruttura come codice (IaC)
-
Pratica l'infrastruttura come codice per creare, implementare e gestire l'infrastruttura in modo programmatico, descrittivo e dichiarativo. Con IaC, trattate l'infrastruttura nello stesso modo in cui gli sviluppatori trattano il codice. Ciò si traduce in un approccio scalabile e strutturato alla gestione dell'infrastruttura. Per ulteriori informazioni su IaC, consulta Infrastructure as code nell'Introduzione a DevOps on AWS Whitepaper.
Con AWS CDK, puoi mettere l'infrastruttura, il codice dell'applicazione e la configurazione in un unico posto, assicurandoti di avere un sistema completo e implementabile sul cloud in ogni fase fondamentale. Utilizza le migliori pratiche di ingegneria del software come revisioni del codice, test unitari e controllo del codice sorgente per rendere la tua infrastruttura più robusta.
- Definisci la tua infrastruttura cloud utilizzando linguaggi di programmazione generici
-
Con AWS CDK, puoi utilizzare uno dei seguenti linguaggi di programmazione per definire la tua infrastruttura cloud: TypeScript, JavaScript, Python, Java, C#/.Nete Go. Scegliete il vostro linguaggio preferito e utilizzate elementi di programmazione come parametri, condizionali, loop, composizione ed ereditarietà per definire il risultato desiderato della vostra infrastruttura.
Utilizza lo stesso linguaggio di programmazione per definire l'infrastruttura e la logica dell'applicazione.
Sfrutta i vantaggi dello sviluppo dell'infrastruttura nel tuo IDE (Integrated Development Environment) preferito, come l'evidenziazione della sintassi e il completamento intelligente del codice.
- Implementa l'infrastruttura tramite AWS CloudFormation
-
AWS CDK si integra con AWS CloudFormation per implementare e fornire l'infrastruttura su. AWS AWS CloudFormation è un servizio gestito Servizio AWS che offre un supporto completo per le configurazioni di risorse e proprietà per i servizi di provisioning su. AWS Con AWS CloudFormation, è possibile eseguire le implementazioni dell'infrastruttura in modo prevedibile e ripetuto, con ripristino in caso di errore. Se lo conosci già AWS CloudFormation, non devi imparare a usare un nuovo servizio di gestione IaC quando inizi a usare il. AWS CDK
- Inizia a sviluppare rapidamente la tua applicazione con i costrutti
-
Sviluppa più velocemente utilizzando e condividendo componenti riutilizzabili chiamati costrutti. Usa costrutti di basso livello per definire le singole AWS CloudFormation risorse e le relative proprietà. Utilizza costrutti di alto livello per definire rapidamente componenti più grandi della tua applicazione, con impostazioni predefinite ragionevoli e sicure per AWS le tue risorse, definendo una maggiore infrastruttura con meno codice.
Crea i tuoi costrutti personalizzati per i tuoi casi d'uso unici e condividili all'interno dell'organizzazione o anche con il pubblico.
Esempio di AWS CDK
Di seguito è riportato un esempio di utilizzo della libreria AWS CDK Constructs per creare un servizio Amazon Elastic Container Service (Amazon ECS) con tipo di avvio. AWS Fargate Per maggiori dettagli su questo esempio, consulta. Esempio: creare un AWS Fargate servizio utilizzando AWS CDK
export class MyEcsConstructStack extends Stack {
constructor(scope: App, id: string, props?: StackProps) {
super(scope, id, props);
const vpc = new ec2.Vpc(this, "MyVpc", {
maxAzs: 3 // Default is all AZs in region
});
const cluster = new ecs.Cluster(this, "MyCluster", {
vpc: vpc
});
// Create a load-balanced Fargate service and make it public
new ecs_patterns.ApplicationLoadBalancedFargateService(this, "MyFargateService", {
cluster: cluster, // Required
cpu: 512, // Default is 256
desiredCount: 6, // Default is 1
taskImageOptions: { image: ecs.ContainerImage.fromRegistry("amazon/amazon-ecs-sample") },
memoryLimitMiB: 2048, // Default is 512
publicLoadBalancer: true // Default is false
});
}
}
Questa classe produce un AWS CloudFormation modello di oltre 500 righe
AWS CDK features
Il AWS CDK GitHub repository
Per il funzionario AWS CDK GitHub repository, vedi aws-cdk
Poiché AWS CDK è open source, il team ti incoraggia a contribuire per renderlo uno strumento ancora migliore. Per i dettagli, consulta Contributing to. AWS Cloud Development Kit (AWS CDK)
Il riferimento all' AWS CDK API
La AWS CDK Construct Library consente APIs di definire l'applicazione CDK e aggiungere costrutti CDK all'applicazione. Per ulteriori informazioni, consulta la Documentazione di riferimento delle API di AWS CDK.
Il modello di programmazione Construct
Il Construct Programming Model (CPM) estende i concetti alla base AWS CDK in altri domini. Altri strumenti che utilizzano il CPM includono:
-
CDK per Terraform
() CDKtf -
CDK per
Kubernetes () CDK8s -
Projen
, per creare configurazioni di progetto
Il Construct Hub
Construct Hub
Passaggi successivi
Per iniziare a usare il AWS CDK, consulta. Guida introduttiva al AWS CDK
Ulteriori informazioni
Per continuare a conoscere il AWS CDK, consulta quanto segue:
-
Impara i concetti AWS CDK fondamentali— Concetti e termini importanti per AWS CDK.
-
AWS CDK Workshop
: workshop pratico per imparare e utilizzare il. AWS CDK -
AWS CDK Patterns
: raccolta open source di modelli di architettura AWS serverless, creata per te da esperti. AWS CDK AWS -
AWS CDK esempi di codice
— GitHub archivio di AWS CDK progetti di esempio. -
cdk.dev
— Hub gestito dalla community per, inclusa una community AWS CDKSlack spazio di lavoro. -
Fantastico CDK
— GitHub archivio contenente un elenco curato di progetti AWS CDK open source, guide, blog e altre risorse. -
AWS Solutions Constructs
: modelli di configurazione dell'infrastruttura come codice (IaC) verificati che possono essere facilmente assemblati in applicazioni pronte per la produzione. -
AWS Developer Tools Blog: post del blog
filtrati per. AWS CDK -
AWS CDK su Stack Overflow
— Domande contrassegnate con aws-cdk on Stack Overflow. -
AWS CDK tutorial per AWS Cloud9 — Tutorial sull'utilizzo di AWS CDK con l' AWS Cloud9 ambiente di sviluppo.
Per ulteriori informazioni sugli argomenti correlati a AWS CDK, consulta quanto segue:
-
AWS CloudFormation concetti: poiché AWS CDK è progettato per funzionare AWS CloudFormation, ti consigliamo di apprendere e comprendere AWS CloudFormation i concetti chiave.
-
AWS Glossario: definizioni dei termini chiave utilizzati in tutto AWS.
Per ulteriori informazioni sugli strumenti correlati AWS CDK che possono essere utilizzati per semplificare lo sviluppo e la distribuzione di applicazioni serverless, consulta quanto segue:
-
AWS Serverless Application Model
— Uno strumento di sviluppo open source che semplifica e migliora l'esperienza di creazione ed esecuzione di applicazioni serverless su. AWS -
AWS Chalice
— Un framework per scrivere app serverless in Python.