Caso d'uso: provisioning di un'impronta applicazione mediante elementi catalogo privati

Come organizzazione, desidero eseguire il provisioning o il ridimensionamento di un footprint dell'applicazione in diversi ambienti, tra cui sviluppo, test, staging e produzione tramite Fleet Application Management. Ogni ambiente richiede configurazioni specifiche basate su dimensioni delle risorse, allocazione e livelli, ad esempio livello Web, livello applicazione, livello database. Le risorse devono essere denominate e contrassegnate in modo appropriato per una facile identificazione e gestione.

Eseguire i passi riportati di seguito per utilizzare Fleet Application Management per eseguire il provisioning di un footprint dell'applicazione in più ambienti. È possibile estrapolare questi passaggi per applicare alle proprie esigenze:

Puoi applicare lo stesso caso d'uso per gestire l'infrastruttura su una flotta attiva esistente per il ridimensionamento o la riallocazione delle risorse.

1. Definisci ambienti

Creare tipi di ambiente in Fleet Application Management per ogni fase di implementazione oppure utilizzare i tipi di ambiente definiti da Oracle. Ad esempio:

  • Sviluppo: dimensioni delle risorse più piccole per il test iniziale.
  • Test: risorse di medie dimensioni per test funzionali e di integrazione.
  • Produzione: risorse ad alte prestazioni per le operazioni live.

2. Crea elementi catalogo privato

Creare elementi catalogo privati per ogni livello in Fleet Application Management.

  1. Creare un elemento del catalogo di configurazione per un Terraform.
    • Sviluppare un package Terraform come consigliato da Terraform, inclusi tutti i file necessari per il provisioning. Il pacchetto può essere fornito in uno dei modi seguenti:
      • File ZIP
      • repository GitHub

      Per informazioni sullo sviluppo del package Terraform, vedere Provider Terraform.

    • Creare un elemento del catalogo Terraform dal package Terraform. Per la procedura di creazione di un elemento catalogo, vedere Creare un elemento catalogo privato.
  2. Creare un elemento del catalogo di configurazione per vari tipi di ambiente.
    • Includere configurazioni specifiche dell'ambiente in un file JSON (conf.json).
    • Caricare il file conf.json in un bucket di storage degli oggetti.
    • Creare un elemento catalogo dal file conf.json. Per i passi per la creazione di un elemento catalogo, vedere Creare elementi catalogo privati.
Estendi i passaggi indicati per ogni livello (web, applicazione, database).

Allocazione e dimensionamento risorse

Definire le dimensioni e l'allocazione delle risorse per ogni livello:

  • Livello Web: istanze di computazione con CPU e memoria di medie dimensioni.
    • Sviluppo: 1 istanza media.
    • Test: 2 istanze di grandi dimensioni per migliorare le prestazioni.
    • Produzione: 4 istanze per la scalabilità, con ridimensionamento automatico basato sull'utilizzo della CPU.
  • Livello applicazione: istanze di computazione con CPU e memoria elevate.
    • Sviluppo: 2 istanze di computazione di medie dimensioni con 4 GB di RAM e due vCPUs ciascuna.
    • Test: 4 istanze di grandi dimensioni con 8 GB di RAM e quattro vCPUs per gestire un carico maggiore.
    • Produzione: 8 istanze (due volte l'ambiente di test) per l'alta disponibilità, con il ridimensionamento automatico abilitato.
  • Livello di database: risorse di database ottimizzate per lo storage e le prestazioni.
    • Sviluppo: una piccola istanza di database con due vCPUs e 15 GB di RAM.
    • Test: istanza media con quattro vCPUs e 30 GB di RAM.
    • Produzione: un'istanza ad alte prestazioni con otto vCPUs, 64 GB di RAM e capacità di I/O elevata.
    Per lo storage, allocare:
    • 100 GB in sviluppo
    • 250 GB di test
    • 500 GB in produzione, con opzioni di backup e ripristino

Utilizzare le variabili Terraform (variables.tf) per fornire tutte le definizioni delle variabili e conf.json per assegnare dinamicamente i valori delle variabili.

3. Esegui provisioning risorse

  1. Creare un task runbook in Fleet Application Management per accedere all'elemento catalogo privato.
    Assicurarsi di selezionare l'operazione del ciclo di vita come Provisioning e il tipo di azione come Esegui un terreno.
  2. Creare un runbook per eseguire il provisioning delle risorse.
    Fornire informazioni di base quali il nome del runbook, l'operazione del ciclo di vita (Provisioning) e il sistema operativo richiesto (Linux).

    Aggiungere gruppi di risorse parallele o in sequenza a seconda delle esecuzioni task richieste.

  3. Utilizzare Gestione applicazioni flotta per creare una flotta per ogni ambiente.
  4. Associare la flotta ai runbook e ai tipi di ambiente pertinenti.
  5. Eseguire i runbook per eseguire il provisioning dinamico delle risorse in base al tipo di ambiente.
  6. Ripetere i passi precedenti per ogni livello.
  7. Verificare tutte le distribuzioni di risorse per ogni livello.

4. Configurazione di esempio

  • File Terraform (main.tf): definisce le istanze di computazione con forme e configurazioni di rete specifiche. Vedere l'esempio main.tf.
  • File variabile (variables.tf): include variabili quali instance_compartment_id, subnet_id e display_name. Vedere l'esempio variables.tf.
  • File di configurazione(conf.json): specifica i valori delle variabili, ad esempio l'OCID del compartimento e l'ID della subnet. Vedere l'esempio conf.json.

Per ulteriori configurazioni di esempio, consulta Oracle Cloud Infrastructure Provider.