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à.
Gestisci i prodotti AWS Service Catalog in più account AWS e regioni AWS
Creato da Ram Kandaswamy (AWS)
Riepilogo
Amazon Web Services (AWS) Service Catalog semplifica e accelera la governance e la distribuzione dei modelli Infrastructure as Code (IaC) per le aziende. CloudFormation I modelli AWS vengono utilizzati per definire una raccolta di risorse AWS (stack) necessarie per un prodotto. AWS CloudFormation StackSets estende questa funzionalità consentendoti di creare, aggiornare o eliminare stack su più account e regioni AWS con un'unica operazione.
Gli amministratori di AWS Service Catalog creano prodotti utilizzando CloudFormation modelli creati dagli sviluppatori e li pubblicano. Questi prodotti vengono quindi associati a un portafoglio e vengono applicati dei vincoli per la governance. Per rendere i tuoi prodotti disponibili agli utenti in altri account o unità organizzative AWS (OUs), in genere condividi il tuo portafoglio con loro. Questo modello descrive un approccio alternativo per la gestione delle offerte di prodotti AWS Service Catalog basato su AWS CloudFormation StackSets. Invece di condividere i portafogli, utilizzi i vincoli dello stack set per impostare le regioni e gli account AWS in cui il prodotto può essere distribuito e utilizzato. Utilizzando questo approccio, puoi effettuare il provisioning dei prodotti AWS Service Catalog su più account e regioni AWS e gestirli da una posizione centrale, soddisfacendo al contempo i requisiti di governance. OUs
Vantaggi di questo approccio:
Il prodotto viene fornito e gestito dall'account principale e non viene condiviso con altri account.
Questo approccio fornisce una visione consolidata di tutti i prodotti (pile) forniti e basati su un prodotto specifico.
La configurazione con AWS Service Management Connector è più semplice, perché si rivolge a un solo account.
È più facile interrogare e utilizzare i prodotti di AWS Service Catalog.
Prerequisiti e limitazioni
Prerequisiti
CloudFormation Modelli AWS per IaC e controllo delle versioni
Configurazione multi-account e AWS Service Catalog per il provisioning e la gestione delle risorse AWS
Limitazioni
Questo approccio utilizza AWS CloudFormation StackSets e StackSets si applicano le seguenti limitazioni:
StackSets non supporta la distribuzione di CloudFormation modelli tramite macro. Se utilizzi una macro per preelaborare il modello, non sarai in grado di utilizzare una distribuzione StackSets basata.
StackSets offre la possibilità di dissociare uno stack dal set di stack, in modo da poter scegliere come destinazione uno stack specifico per risolvere un problema. Tuttavia, uno stack dissociato non può essere riassociato allo stack set.
AWS Service Catalog genera automaticamente StackSet i nomi. La personalizzazione non è attualmente supportata.
Architettura
Architettura Target

L'utente crea un CloudFormation modello AWS per il provisioning delle risorse AWS, in formato JSON o YAML.
Il CloudFormation modello crea un prodotto in AWS Service Catalog, che viene aggiunto a un portafoglio.
L'utente crea un prodotto fornito, che crea CloudFormation pile negli account di destinazione.
Ogni stack fornisce le risorse specificate nei modelli. CloudFormation
Strumenti
Servizi AWS
AWS ti CloudFormation aiuta a configurare le risorse AWS, effettuarne il provisioning in modo rapido e coerente e gestirle durante tutto il loro ciclo di vita su account e regioni AWS.
AWS Command Line Interface (AWS CLI) è uno strumento open source che ti aiuta a interagire con i servizi AWS tramite comandi nella tua shell a riga di comando.
AWS Identity and Access Management (IAM) ti aiuta a gestire in modo sicuro l'accesso alle tue risorse AWS controllando chi è autenticato e autorizzato a utilizzarle.
AWS Service Catalog ti aiuta a gestire centralmente i cataloghi di servizi IT approvati per AWS. Gli utenti finali possono distribuire rapidamente soltanto i servizi IT approvati di cui hanno bisogno, in accordo con i vincoli stabiliti dall'organizzazione.
Epiche
Attività | Descrizione | Competenze richieste |
---|---|---|
Crea un portfolio. | Un portafoglio è un contenitore che include uno o più prodotti raggruppati in base a criteri specifici. L'utilizzo di un portafoglio per i tuoi prodotti ti aiuta ad applicare vincoli comuni a tutti i tuoi set di prodotti. Per creare un portfolio, segui le istruzioni nella documentazione di AWS Service Catalog. Se utilizzi la CLI di AWS, ecco un comando di esempio:
Per ulteriori informazioni, consulta la documentazione dell'interfaccia a riga di comando di AWS | AWS Service Catalog, IAM |
Crea un CloudFormation modello. | Crea un CloudFormation modello che descriva le risorse. I valori delle proprietà delle risorse devono essere parametrizzati ove applicabile. | AWS CloudFormation, JSON/YAML |
Crea un prodotto con informazioni sulla versione. | Il CloudFormation modello diventa un prodotto quando viene pubblicato in AWS Service Catalog. Fornisci valori per i parametri opzionali di dettaglio della versione, come il titolo e la descrizione della versione; ciò sarà utile per richiedere informazioni sul prodotto in un secondo momento. Per creare un prodotto, segui le istruzioni nella documentazione di AWS Service Catalog. Se utilizzi la CLI di AWS, un comando di esempio è:
dove | AWS Service Catalog |
Applica vincoli. | Applica i vincoli dello stack set al portafoglio, per configurare opzioni di distribuzione del prodotto come più account AWS, regioni e autorizzazioni. Per istruzioni, consulta la documentazione di AWS Service Catalog. | AWS Service Catalog |
Aggiungi autorizzazioni | Fornisci le autorizzazioni agli utenti in modo che possano lanciare i prodotti del portafoglio. Per istruzioni sulla console, consulta la documentazione di AWS Service Catalog. Se utilizzi la CLI di AWS, ecco un comando di esempio:
Per ulteriori informazioni, consulta la documentazione dell'interfaccia a riga di comando di AWS | AWS Service Catalog, IAM |
Fornisci il prodotto. | Un prodotto sottoposto a provisioning è un'istanza di risorse di un prodotto. Il provisioning di un prodotto basato su un CloudFormation modello avvia uno CloudFormation stack e le relative risorse sottostanti. Effettua il provisioning del prodotto scegliendo come target le regioni e gli account AWS applicabili, in base ai vincoli dello stack set. Nella CLI di AWS, ecco un comando di esempio:
Per ulteriori informazioni, consulta la documentazione dell'interfaccia a riga di comando di AWS | AWS Service Catalog |
Risorse correlate
Riferimenti
Tutorial e video
AWS re:Invent 2019: Automatizza tutto: opzioni e best
practice (video)
Informazioni aggiuntive
Quando usi il create-product
comando, il cli-input-json
parametro punta a un file che specifica informazioni come il proprietario del prodotto, l'e-mail di supporto e i dettagli del modello. CloudFormation Ecco un esempio di tale file:
{
"Owner": "Test admin",
"SupportDescription": "Testing",
"Name": "SNS",
"SupportEmail": "example@example.com",
"ProductType": "CLOUD_FORMATION_TEMPLATE",
"AcceptLanguage": "en",
"ProvisioningArtifactParameters": {
"Description": "SNS product",
"DisableTemplateValidation": true,
"Info": {
"LoadTemplateFromURL": "<url>"
},
"Name": "version 1"
}