Procedure ottimali per l'organizzazione e la gestione dei progetti
Queste best practice forniscono gli elementi fondamentali per gestire progettiUna raccolta di risorse utente che definiscono e gestiscono le risorse e l'infrastruttura come distribuzioni del codice. efficaci e sicuri in IBM Cloud®. I progetti sono vantaggiosi per le aziende regolamentate come modo per gestire al meglio le distribuzioni basate sul codice, mantenendo la conformità e collaborando con i membri del team attraverso gli account.
Creazione di un account di progetto primario
Un vantaggio chiave dei progetti IBM Cloud è la capacità di gestire e collaborare centralmente la tua infrastruttura come distribuzioni del codice. Se stai utilizzando un'azienda, stabilire un account primario o home per archiviare tutti i tuoi progetti aiuta a gestire e tenere traccia dei tuoi progetti in un'unica ubicazione.
L'utilità di stabilire un account primario dipende dalla struttura aziendale. I progetti possono essere creati in un account e distribuire risorse ad altri account. Gli utenti possono visualizzare solo i progetti che si trovano all'interno dell'account a cui sono attualmente collegati. Inoltre, i report per più progetti possono essere generati solo per i progetti nello stesso account. Questo è un altro utile vantaggio di stabilire un account home comune per tutti i progetti in un'azienda o per tutti i progetti con una linea di business simile. Mantenendo il tuo progetto in un account primario e distribuendo account separati per ogni ambiente (sviluppo, test e produzione) per semplificare la gestione aziendale.
Per rendere l'account più semplice per identificare lo scopo e i progetti all'interno dell'account da parte di tutti gli utenti, fornisci all'account un nome leggibile. Ad esempio Front-end UI team e Back-end API team.
Definizione di un metodo di autenticazione
Quando si configura l'architettura distribuibile, è necessario aggiungere un metodo di autenticazione. Il metodo di autenticazione identifica l'account di destinazione in cui vengono distribuite le risorse e autorizza la distribuzione. È possibile scegliere di eseguire l'autenticazione tramite un profilo attendibile o un segreto esistente.
Utilizzo dei profili attendibili
Alcuni servizi non possono configurare e distribuire completamente le architetture utilizzando i profili attendibili. Per ulteriori informazioni, vedere Problemi noti e limitazioni per i progetti.
Puoi distribuire un'architettura nel tuo account o in un altro account utilizzando i profili attendibili. A seconda della propria organizzazione, la distribuzione di un'architettura potrebbe richiedere l'accesso a un altro account utilizzando un profilo attendibile e coordinandosi con gli amministratori in più account. Se il servizio Progetti IBM Cloud in un altro account deve accedere al tuo account per distribuire un'architettura, utilizza i profili attendibili e gli ID servizio per autorizzare le distribuzioni nel tuo account. Per ulteriori informazioni sulla creazione di un profilo attendibile per il tuo progetto, vedi Utilizzo di profili attendibili per autorizzare un progetto a distribuire un'architettura.
Utilizzo di IBM Cloud® Secrets Manager
Quando si distribuisce Infrastructure as Code ( IaC ), spesso sono necessari dei segreti per configurare l'infrastruttura, come chiavi API, chiavi SSH e certificati SSL. In questi casi, si consiglia di memorizzare questi segreti all'interno di un'istanza Secrets Manager istanza. I progetti supportano direttamente il riferimento alle chiavi API memorizzate in Secrets Manager come input per un'architettura distribuibile. Per ulteriori informazioni, consultate la sezione Uso di una chiave API con Secrets Manager per autorizzare un progetto da distribuire.
Prima di creare il progetto, crea un 'istanza del servizio Secrets Manager nell'account del progetto principale che potrai utilizzare per tutti i progetti all'interno di tale account.
Ci sono alcuni tipi di segreto differenti che è possibile creare. Utilizzare un'istanza segreta arbitraria per memorizzare le chiavi API per il progetto. Per ulteriori informazioni, vedi Creazione di segreti arbitrari nell'IU.
Generalmente, viene utilizzata una singola istanza Secrets Manager per tutti i progetti in un account. I segreti in tale istanza possono essere organizzati in gruppi di segreti che si allineino con le restrizioni di accesso. Ad esempio, è possibile utilizzare un gruppo di segreti per progetto o per una serie di progetti correlati.
Controllo delle distribuzioni mediante ambienti
In un progetto, è possibile raggruppare le configurazioni correlate utilizzando un ambiente. Un ambiente può anche contenere proprietà come i valori di input e i dettagli di autenticazione. Queste proprietà vengono aggiunte automaticamente a una configurazione quando selezioni un ambiente, che consente di garantire distribuzioni accurate al tuo account di destinazione. Quando si modifica una configurazione, è possibile selezionare un ambiente per la configurazione da utilizzare nella sezione Definisci dettagli.
Vantaggi dell'utilizzo degli ambienti
Gli ambienti semplificano il controllo delle distribuzioni. Specificando un ambiente e aggiungendo proprietà, si sa che gli stessi valori sono condivisi tra le configurazioni che utilizzano tale ambiente. All'interno di una configurazione, si possono sovrascrivere i valori forniti automaticamente da un ambiente.
Gli ambienti forniscono un modo per raggruppare le configurazioni correlate all'interno di un progetto. Diciamo che hai un insieme di configurazioni che vuoi distribuire allo stesso account di destinazione del tuo account di sviluppo. È possibile creare un ambiente di sviluppo e aggiungere i dettagli di autenticazione per l'account di destinazione a tale ambiente. Il metodo di autenticazione viene aggiunto a ogni configurazione che sta utilizzando l'ambiente di sviluppo.
Anche se è possibile creare tutti gli ambienti che si desidera, si consiglia di mantenere basso il numero di ambienti nel progetto. L'uso di una serie standard di ambienti per le tue distribuzioni tra account rende più semplice la configurazione e la distribuzione delle architetture.
Per ulteriori informazioni, consultare Creazione di un ambiente.
Organizzazione delle tue configurazioni
Considerare l'organizzazione di tutte le configurazioni correlate in un unico progetto. In questo modo, puoi gestire le distribuzioni da un'ubicazione e assicurarti che siano sicure e conformi. Potrebbe essere costituito da una o più architetture distribuibili per creare l'infrastruttura necessaria, che deve essere replicata per supportare più regioni e ambienti come sviluppo, test e produzione.
Utilizzare una convenzione di denominazione per le configurazioni in modo che gli utenti possano comprendere la funzionalità di ciascuna configurazione. Ad esempio, in una distribuzione che utilizza un'architettura distribuibile VPC Base e un'architettura distribuibile Kubernetes Cluster che si basa su VPC Base, puoi denominare le tue configurazioni come segue:
| Nome | drchitettura distribuibile | Ambiente | Note |
|---|---|---|---|
| Dev - VPC - Globale | Base VPC | Sviluppo | Crea il VPC di base per l'ambiente di sviluppo |
| Dev - Kub - Dallas | Cluster Kubernetes | Sviluppo | Crea il cluster a Dallas per lo sviluppo |
| Dev - Kub - Londra | Cluster Kubernetes | Sviluppo | Crea il cluster a Londra per lo sviluppo |
| Prod - VPC - Globale | Base VPC | Produzione | Crea il VPC di base per l'ambiente di produzione |
| Prod - Kub - Dallas | Cluster Kubernetes | Produzione | Crea il cluster a Dallas per la produzione |
| Prod - Kub - Londra | Cluster Kubernetes | Produzione | Crea il cluster a Londra per la produzione |
| Prod - Kub - Tokyo | Cluster Kubernetes | Produzione | Crea il cluster a Tokyo per la produzione |
| Prod - Kub - Sydney | Cluster Kubernetes | Produzione | Crea il cluster a Sydney per la produzione |
È possibile duplicare la configurazione di sviluppo nel file project.json e modificarlo come necessario per creare rapidamente distribuzioni di produzione dalle relative distribuzioni di sviluppo testate.
Creazione di gruppi di accesso per i progetti
L'accesso ai progetti è controllato da Identity and Access Management (IAM). Si consiglia di creare due o tre gruppi di accesso per progetto e di assegnare gli utenti che lavorano sul progetto a uno di tali gruppi di accesso. Ad esempio, potresti creare un file* Nome del progetto*-Gruppo di accesso lettori che fornisce accesso in sola lettura al progetto per gli utenti che necessitano di monitorare costi o disponibilità e a* Nome del progetto*-Gruppo di accesso scrittore per gli utenti operativi che necessitano di apportare modifiche a un progetto e distribuire risorse. Se necessario, è possibile creare due gruppi di accesso del programma di scrittura, uno per gli utenti che possono aggiungere configurazioni e completare i valori di input e un secondo per gli utenti che possono distribuire le risorse.
| Gruppo di accesso | Ruoli |
|---|---|
| Nome del progetto-Lettore | Lettore, visualizzatore |
| Nome del progetto-Scrittore | Responsabile, Operatore |
Per creare nuovi progetti, agli utenti deve essere assegnato un accesso specifico. Per ulteriori informazioni, consultare Assegnazione dell'accesso degli utenti ai progetti.
Il monitoraggio richiede elementi di attenzione
Gli elementi di attenzione necessari vengono utilizzati al meglio per monitorare la convalida, le approvazioni, gli errori e gli aggiornamenti delle versioni. Controllando regolarmente gli elementi di attenzione necessari, è possibile verificare che il progetto e la configurazione siano aggiornati e conformi.
Annullamento della distribuzione delle risorse create dai progetti
Quando si distribuisce la propria configurazione, le risorse create possono essere gestite come un gruppo all'interno del progetto. Queste risorse vengono create in base al piano Terraform e possono essere gestite singolarmente nel tuo spazio di lavoro Schematics.
Sebbene tu possa distruggere singole risorse dallo spazio di lavoro Schematics, questa operazione non è consigliata per le risorse create utilizzando un progetto, poiché porta alla deviazione. Puoi invece annullare la distribuzione di tutte le risorse associate a una configurazione contemporaneamente dall'interfaccia utente del progetto con un solo clic. In questo modo la distribuzione viene rimossa da qualsiasi ambiente di destinazione in cui è stata distribuita la configurazione. Annullare la distribuzione delle risorse senza eliminare la configurazione può essere utile se è necessario distribuire nuovamente la configurazione in futuro.
Per impostazione predefinita, quando elimini un progetto o una configurazione, tutte le risorse distribuite vengono annullate automaticamente. Si consiglia di mantenere questa impostazione abilitata, ma è possibile disabilitarla aprendo il proprio progetto e andando a Gestisci > Impostazioni. Se si disabilita tale impostazione, le risorse restano distribuite quando si elimina una configurazione o un progetto, ma si perde la possibilità di gestire facilmente tali risorse all'interno del progetto. Le risorse distribuite possono continuare ad accumulare costi per il tuo account di destinazione se rimangono disponibili dopo l'eliminazione di un progetto o di una configurazione. Per ulteriori informazioni, vedere Disattivazione delle risorse.