Provisioning

Gen 2

Effettuare il provisioning di un'istanza di IBM Cloud® Databases for Redis tramite il catalogo, il plug-in CLI di Cloud Databases, l'API di Cloud Databases oppure utilizzando Terraform.

Configurazione tramite la console IBM Cloud

Eseguire la distribuzione dalla console specificando i seguenti parametri.

  1. Nella sezione " Dettagli servizio ", configurare quanto segue:

    • Posizione: selezionare una posizione che supporti la Gen 2.
    • Nome del servizio: il nome può essere una stringa qualsiasi ed è quello utilizzato sul web e nell'interfaccia a riga di comando (CLI) per identificare la nuova istanza.
    • Gruppo di risorse Se state organizzando i vostri servizi in gruppi di risorse. Per ulteriori informazioni, vedi Gestione dei gruppi di risorse.
  2. Modello di hosting: Isolated è un’offerta sicura a tenant singolo pensata per carichi di lavoro aziendali complessi e ad alte prestazioni. Per ulteriori informazioni, consultare la sezione " Modelli di hosting ".

  3. Assegnazione delle risorse: ottimizza l'assegnazione delle risorse scegliendo la dimensione dell'host necessaria per la tua distribuzione e specificando la dimensione del disco richiesta. La dimensione dell'host e l'allocazione del disco sono per membro.

    La dimensione del disco può essere aumentata dopo il provisioning, ma non può essere ridotta per evitare la perdita di dati.

  4. Nella sezione " Configurazione del servizio ", configurare quanto segue:

    • Versione del database: la versione di distribuzione del database. Per garantire prestazioni ottimali, utilizzare la versione consigliata. Viene utilizzata automaticamente l'ultima versione minore. Per ulteriori informazioni, consultare la politica sul controllo delle versioni del database.
    • Crittografia: se si utilizza Key Protect, è possibile selezionare un'istanza e una chiave per crittografare il disco dell'istanza. Se non si utilizza una chiave propria, l'istanza crea e gestisce automaticamente la propria chiave di crittografia del disco.
    • Endpoint: configurare gli endpoint del servizio nella propria distribuzione. L'impostazione predefinita è " privato ".
  5. Fai clic su Crea. Si apre la pagina con l'elenco delle risorse " Cloud Databases ".

  6. Una volta che l'istanza è stata configurata, clicca sul nome dell'istanza per visualizzare ulteriori informazioni.

Configurazione tramite l'interfaccia a riga di comando (CLI)

Prima di procedere al provisioning, seguire le istruzioni riportate nella documentazione per installare lo strumento CLI IBM Cloud.

  1. Accedi a IBM Cloud. Se utilizzi un ID utente federato, è importante che tu passi a un codice di accesso monouso (ibmcloud login --sso) oppure che utilizzi una chiave API (ibmcloud --apikey key or @key_file) per l'autenticazione. Per ulteriori informazioni su come effettuare l'accesso tramite la CLI, consultare la sezione " Comandi generali della CLI(ibmcloud) " all'indirizzo ibmcloud login.

    ibmcloud login
    
  2. Selezionare un gruppo di risorse:

    ibmcloud target -g Default
    
  3. Creare un'istanza del servizio " Databases for Redis " su IBM Cloud eseguendo un comando del tipo:

    ibmcloud resource service-instance-create <INSTANCE_NAME> <SERVICE_NAME> <SERVICE_PLAN_NAME> <LOCATION> -p '{"dataservices": {"redis": {"host_flavor":"bx3d.4x20"}}}' --user-tags test-redis,do-not-delete
    

    Ad esempio, per configurare un'istanza di Databases for Redis, utilizzare un comando del tipo:

    ibmcloud resource service-instance-create redis-test-database databases-for-redis databases-for-redis-gen2-standard ca-mon -p '{"dataservices": {"redis": {"host_flavor":"bx3d.4x20"}}}' --user-tags test-redis,do-not-delete
    

    Il parametro " host_flavor " definisce le dimensioni del tuo Compute. Inserisci il valore corretto in base alla configurazione di CPU e RAM desiderata. Per i valori disponibili relativi al tipo di host, consultare la sezione dedicata alla selezione delle dimensioni del tipo di host.

    I campi presenti nel comando sono descritti nella tabella seguente:

    Tabella 1. Campi del formato di base dei comandi
    Campo Descrizione Indicatore
    INSTANCE_NAME Obbligatorio Il nome dell'istanza può essere una stringa qualsiasi ed è il nome utilizzato sul web e nella CLI per identificare la nuova distribuzione.
    SERVICE_NAME Obbligatorio Nome o ID del servizio. Per " Databases for Redis ", usa " databases-for-redis".
    SERVICE_PLAN_NAME Obbligatorio Piano " gen2 " standard (standard-gen2)
    LOCATION Obbligatorio La posizione in cui si desidera effettuare la distribuzione. Per recuperare un elenco di regioni, utilizzare il comando ibmcloud regions. In caso di chiamata API, la posizione viene indicata come “target”
    RESOURCE_GROUP Il nome del gruppo di risorse. Il valore predefinito è Default. In caso di chiamata API, specificare l'ID del gruppo di risorse. -g
    --parameters File JSON o stringa JSON contenente i parametri necessari per creare l'istanza del servizio -p
    host_flavor Per "Isolated Compute", selezionare la configurazione desiderata di CPU e RAM. Per ulteriori informazioni, consultare la tabella seguente o la sezione " Modelli di hosting ".
    --user-tags Elenco dei nomi dei tag utente separati da virgole

    Verrà visualizzata una risposta simile alla seguente:

    Creating service instance redis-test-database in resource group Default of account ICD as user@ibm.com...
    OK
    Service instance redis-test-database was created.
    Name:                   redis-test-database
    ID:                     crn:v1:bluemix:public:databases-for-redis:ca-mon:a/23b09aee04da4545b6e32805fa93249d:4b6b8771-b44e-4687-9393-db8a2dec1942::
    GUID:                   4b6b8771-b44e-4687-9393-db8a2dec1942
    Location:               ca-mon
    State:                  provisioning
    Type:                   service_instance
    Sub Type:
    Allow Cleanup:          false
    Locked:                 false
    One-time credentials:   false
    Created at:             2026-06-25T12:48:00Z
    Updated at:             2026-06-25T12:48:01Z
    Last Operation:
                            Status    create in progress
                            Message   Started create instance operation
    

    Per verificare lo stato del provisioning, utilizzare il seguente comando:

    ibmcloud resource service-instance <INSTANCE_NAME>
    

    Una volta completata l'operazione, vedrai una risposta simile alla seguente:

    Retrieving service instance INSTANCE_NAME in resource group default under account USER's Account as USER...
    OK
    Name:                  INSTANCE_NAME
    ID:                    crn:v1:bluemix:public:databases-for-redis:ca-mon:a/23b09aee04da4545b6e32805fa93249d:4b6b8771-b44e-4687-9393-db8a2dec1942::
    GUID:                  4b6b8771-b44e-4687-9393-db8a2dec1942
    Location:              <LOCATION>
    Service Name:          databases-for-redis
    Service Plan Name:     standard-gen2
    Resource Group Name:   default
    State:                 active
    Type:                  service_instance
    Sub Type:              Public
    Locked:                false
    Service Endpoints:     private
    Created at:            2026-06-25T19:42:07Z
    Created by:            USER
    Updated at:            2026-06-25T19:53:25Z
    Last Operation:
                           Status    create succeeded
                           Message   Provisioning redis with version 8.2 (100%)
    

Aggiorna un'istanza del servizio

È possibile aggiornare il nome dell'istanza del servizio, l'ID del piano di servizio e i parametri utilizzando un comando simile al seguente:

ibmcloud resource service-instance-update service-instance-current-name --service-plan-id databases-for-redis-gen2-standard -p '{"dataservices": {"redis": {"storage_gb":20}}}' -g Default --name NEW_NAME

Eliminazione di un'istanza del servizio

Per eliminare un'istanza, eseguire un comando simile al seguente:

ibmcloud resource service-instance-delete <INSTANCE_NAME_OR_CRN>

Ripristino da un backup di " Redis "

È possibile creare una nuova istanza di Redis a partire da un determinato backup utilizzando un comando simile al seguente:

ibmcloud resource service-instance-create restore-instance-name databases-for-redis standard-gen2 ca-mon -g Default  -p '{
      "dataservices":{
            "restore_backup_id": "<service-instance-crn>:backup:<backup-uuid>"
      }
}'

Provisioning tramite l'API del Resource Controller

Segui questi passaggi per effettuare il provisioning utilizzando l'API del controller delle risorse.

  1. Ottenere un token IAM utilizzando il seguente comando:

    IAM_TOKEN=$(ibmcloud iam oauth-tokens -o json | jq .iam_token -r)
    
  2. È necessario conoscere l'ID del gruppo di risorse in cui si desidera effettuare la distribuzione. Queste informazioni sono disponibili tramite la CLI di IBM Cloud.

    Utilizza un comando del tipo:

    ibmcloud resource groups
    

    Annotare l'ID del gruppo di risorse desiderato. Nella maggior parte dei casi utilizziamo il valore predefinito del gruppo di risorse.

  3. È necessario conoscere la regione in cui si desidera effettuare la distribuzione.

    Per visualizzare l'elenco di tutte le regioni in cui è possibile effettuare il provisioning delle distribuzioni dalla regione corrente, utilizzare il plug-in CLI " Cloud Databases ".

    Il comando è il seguente:

    ibmcloud cdb regions --json
    
  4. Il parametro " host_flavor " definisce le dimensioni del tuo Compute. Scegli il valore più adatto alla tua configurazione. Per i valori disponibili delle configurazioni host, consultare la sezione “Compute isolato Gen 2 ”.

  5. Una volta ottenute tutte le informazioni, crea una nuova istanza della risorsa tramite il Resource Controller di IBM Cloud.

    curl -X POST https://resource-controller.cloud.ibm.com/v2/resource_instances -H "Authorization: ${IAM_TOKEN}"   -H 'Content-Type: application/json' -d '{
        "name": "redis-test",
        "target": "ca-mon",
        "resource_group": "c21a4e8564c14d1aab2a9a8b441904eb",
        "resource_plan_id": "databases-for-redis-gen2-standard",
        "parameters": {
          "dataservices": {
            "redis": {
              "host_flavor": "bx3d.4x20"
            }
          },
          "service_endpoints": "private",
          "version": "8.2"
        },
        "tags": [
          "redis-test",
          "do-not-delete"
        ]
      }'
    

    I campi presenti nel comando sono descritti nella tabella che segue.

    Tabella 3. Campi del formato di base dei comandi
    Campo Descrizione Indicatore
    name Obbligatorio Il nome dell'istanza può essere una stringa qualsiasi ed è il nome utilizzato sul web e nella CLI per identificare la nuova distribuzione.
    target Obbligatorio La posizione in cui si desidera effettuare la distribuzione. Per recuperare un elenco di regioni, utilizzare il comando ibmcloud regions.
    resource_group Obbligatorio L'ID del gruppo di risorse. Il valore predefinito è Default.
    resource_plan_id Obbligatorio Piano " gen2 " standard (databases-for-redis)
    parameters Oggetto JSON contenente i parametri per creare un'istanza del servizio
    host_flavor Per "Isolated Compute", seleziona la configurazione di CPU e RAM desiderata. Per ulteriori informazioni, consultare la sezione " Modelli di hosting ".
    service_endpoints Obbligatorio Configura gli endpoint di servizio della tua distribuzione, scegliendo tra public, private o public-and-private.
    version La versione del database da configurare. Se omesso, il database viene creato con la versione principale e secondaria più recenti.
    tags Elenco dei nomi dei tag utente

Ottieni i dettagli dell'istanza del servizio

curl -X GET https://resource-controller.cloud.ibm.com/v2/resource_instances/<service-instance-id> -H "Authorization: ${IAM_TOKEN}" | jq

Aggiorna un'istanza del servizio

È possibile aggiornare il nome dell'istanza del servizio e i relativi parametri utilizzando il seguente comando:

curl -X PATCH https://resource-controller.cloud.ibm.com/v2/resource_instances/<service-instance-id> -H "Authorization: ${IAM_TOKEN}" -H 'Content-Type: application/json' -d '{
"name": "redis-test-testing-patch",
"parameters":{"dataservices":{"redis":{"host_flavor":"bx3d.8x40"}}}
}' | jq

Eliminazione di un'istanza del servizio

Per eliminare un'istanza, eseguire il seguente comando:

curl -X DELETE https://resource-controller.cloud.ibm.com/v2/resource_instances/<service-instance-id> -H "Authorization: ${IAM_TOKEN}"

Ripristino da un backup di " Redis "

È possibile creare una nuova istanza di Redis a partire da un determinato backup utilizzando il seguente comando:

curl -X POST   https://resource-controller.cloud.ibm.com/v2/resource_instances   -H "Authorization: ${IAM_TOKEN}"   -H 'Content-Type: application/json' -d '{
    "name": "redis-test-restore",
    "target": "ca-mon",
    "resource_group": "c21a4e8564c14d1aab2a9a8b441904eb",
    "resource_plan_id": "databases-for-redis-gen2-standard",
    "parameters": {
      "dataservices": {
        "restore_backup_id": "<service-instance-crn>:backup:<backup-uuid>"
      }
    },
    "tags": [
      "redis-test"
    ]
  }'

Provisioning con Terraform

Utilizza Terraform per gestire la tua infrastruttura tramite la risorsa “ ibm_database ” per Terraform, che supporta il provisioning delle distribuzioni su Cloud Databases.

Seleziona il modello di hosting su cui desideri che venga configurato il tuo database. Puoi modificarlo in un secondo momento.

Configurare un'istanza di Databases for Redis impostando il parametro "host_flavor" sul tipo di host desiderato. Ad esempio:

data "ibm_resource_group" "group" {
  name = "<your_resource_group>"
}
resource "ibm_resource_instance" "<your_instance_name>" {
  name = "your_instance_name"
  plan = "databases-for-redis-gen2-standard"
  service = "databases-for-redis"
  location = "us-east"
  tags              = ["terraform", "redis"]
  resource_group_id = data.ibm_resource_group.group.id
  timeouts {
    create = "120m"
    update = "120m"
    delete = "15m"
  }
}

Prima di eseguire uno script Terraform su un'istanza esistente, utilizza il comando terraform plan per confrontare lo stato attuale dell'infrastruttura con lo stato desiderato definito nei tuoi file Terraform. Qualsiasi modifica agli attributi resource_group_id, service plan, version, key_protect_instance, key_protect_key o backup_encryption_key_crn comporta la ricreazione dell'istanza. Per un elenco dei riferimenti agli argomenti attualmente in uso con la specifica “ Forces new resource ”, consultare il registro Terraform di ibm_database.

Ottieni i dettagli dell'istanza del servizio

data "ibm_resource_group" "group" {
  name = "<your_resource_group>"
}
data "ibm_resource_instance" "<your_instance_name>" {
  name              = "<your_instance_name>"
  location          = "us-east"
  resource_group_id = data.ibm_resource_group.group.id
  service = "databases-for-redis"
}
output "<your_instance_name>_output" {
  value ={
    id = data.ibm_resource_instance.<your_instance_name>.id
    name = data.ibm_resource_instance.<your_instance_name>.name
    extensions = data.ibm_resource_instance.<your_instance_name>.extensions
    group_id = data.ibm_resource_instance.<your_instance_name>.resource_group_id
  }
}

Aggiorna un'istanza del servizio

È possibile aggiornare il parametro "host flavor" utilizzando il seguente comando:

data "ibm_resource_group" "group" {
  name = "your_resource_group"
}
resource "ibm_resource_instance" "<your_instance_name>" {
  name = "<your_instance_name>"
  plan = "databases-for-redis-gen2-standard"
  service = "databases-for-redis"
  location = "us-east"
  tags              = ["scaling","tf"]
  resource_group_id = data.ibm_resource_group.group.id
  parameters_json = jsonencode({
  "dataservices": {
      "redis": {
        "host_flavor": "bx2.8x32"
      }
  }
})
  timeouts {
    create = "120m"
    update = "120m"
    delete = "15m"
  }
}

Eliminazione di un'istanza del servizio

Per eliminare le risorse gestite da Terraform, eseguire: terraform destroy

  • Quando Terraform crea un utente, genera automaticamente un file di stato ( terraform.tfstate ) e i dettagli vengono aggiunti alle risorse di tale file. Questo file tiene traccia di tutte le risorse gestite e viene utilizzato da Terraform per identificare quali elementi eliminare durante la cancellazione.

  • Terraform può eliminare solo le risorse che ha creato. Le risorse configurate tramite l'interfaccia utente, la CLI o l'API non possono essere eliminate da Terraform a meno che non siano state prima importate nello stato di Terraform.

  • Quando si esegue il comando destroy, tutte le voci presenti nelle risorse del file di stato vengono eliminate. Pertanto, assicurati che le risorse che desideri eliminare siano le uniche presenti nell'elenco delle risorse prima di eseguire terraform destroy

Ripristino da un backup di " Redis "

È possibile creare una nuova istanza di Redis a partire da un determinato backup utilizzando il seguente comando:

resource "ibm_resource_instance" "<your_instance_name>" {
  name = "<your_instance_name>"
  plan = "databases-for-redis-gen2-standard"
  service = "databases-for-redis"
  location = "us-east"
  tags      = ["terraform", "redis"]
    parameters_json = jsonencode({
      "dataservices": {
        "restore_backup_id": "<service-instance-crn>:backup:<backup-uuid>"
      }
    })
}