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à.
Opzioni di programmazione per la definizione dei prodotti in Service Catalog
Due opzioni di programmazione per utilizzare Service Catalog per il provisioning AWS dell'infrastruttura sono i CloudFormation modelli o il AWS CDK. Attualmente non esistono meccanismi dichiarativi o privi di codice per definire un prodotto Service Catalog.
CloudFormation scripting
AWS CloudFormation è un linguaggio di scripting nativo IaC collaudato per il provisioning dell'infrastruttura. AWS È possibile sviluppare uno CloudFormation script in AWS Management Console o utilizzando uno strumento di sviluppo come Visual Studio Code (o un semplice editor di testo) e il AWS Command Line Interface ().AWS CLI
Per ulteriori informazioni, consulta la documentazione relativa ad CloudFormation. Per ulteriori informazioni sull'utilizzo di un CloudFormation modello per specificare un prodotto Service Catalog, consulta la AWS::ServiceCatalog::CloudFormationProduct risorsa nella CloudFormation documentazione.
Approccio programmatico con AWS CDK
AWS CDK Fornisce un framework di programmazione orientato agli oggetti elegante e potente per la definizione e la manutenzione AWS dell'infrastruttura utilizzando una selezione di linguaggi di programmazione. È possibile utilizzare il AWS CDK per sviluppare personalizzazioni ed estensioni dettagliate e orientate agli oggetti del framework di classe. AWS AWS CDK È destinato agli utenti che desiderano personalizzare Servizi AWS per esigenze di infrastruttura più sofisticate e che dispongono delle competenze e dell'esperienza di programmazione necessarie.
Per implementare le soluzioni Service Catalog utilizzando AWS CDK, è possibile utilizzare le classi Service Catalog integrate per definire i prodotti e i portafogli. Queste classi sono fornite dal modulo AWS CDK aws-cdk-lib.aws_servicecatalog.
È possibile utilizzarlo per implementare i prodotti in molti modi. AWS CDK Per evitare di dover scrivere il modello di provisioning per un prodotto CloudFormation e per mantenerne la riusabilità, si consiglia di utilizzare la AWS CDK ProductStackclasse per rappresentare il modello di provisioning. Un'ProductStack
istanza è uno AWS CDK stack a cui si aggiungono risorse a livello di codice. Ad esempio, puoi aggiungere un bucket S3, ruoli IAM o un log Amazon CloudWatch . Quando aggiungi l'ProductStack
istanza a un'servicecatalog.CloudFormationProduct
istanza definita come modello di provisioning chiamandoservicecatalog.CloudFormationTemplate.fromProductStack
(<ProductStack instance>)
, il modello AWS CDK viene generato automaticamente. CloudFormation
Ecco un esempio di ProductStack
implementazione Java per un prodotto Amazon S3.
import * as s3 from 'aws-cdk-lib/aws-s3'; import * as cdk from 'aws-cdk-lib'; class S3BucketProduct extends servicecatalog.ProductStack { constructor(scope: Construct, id: string) { super(scope, id); new s3.Bucket(this, 'BucketProduct'); } } const product = new servicecatalog.CloudFormationProduct(this, 'Product', { productName: "My Product", owner: "Product Owner", productVersions: [ { productVersionName: "v1", cloudFormationTemplate: servicecatalog.CloudFormationTemplate.fromProductStack(new S3BucketProduct(this, 'S3BucketProduct')), }, ], });
AWS CDK Fornisce pipeline integrate di integrazione continua e distribuzione continua (CI/CD). È possibile personalizzare queste pipeline e i processi del ciclo di vita dello sviluppo del software (SDLC) integrati per soddisfare i propri standard e obiettivi di processo.
AWS CDK Le classi personalizzate possono ereditare da altre classi per fornire funzioni specializzate e una classe può essere composta da istanze di altre classi. Se utilizzi framework di AWS CDK classi condivise per implementare più prodotti Service Catalog, prendi in considerazione eventuali implicazioni relative al controllo delle versioni o alla compatibilità, in particolare tra più team di sviluppo. Dovrai assicurarti che le modifiche siano compatibili con le versioni precedenti o che venga seguito uno schema di versioni in modo che le modifiche alla classe apportate a un prodotto non danneggino un altro prodotto.
Per ulteriori informazioni, consulta la documentazione relativa ad AWS CDK.