Provisioning
Provisionate un'implementazione IBM Cloud® Databases for MySQL attraverso catalogo, Cloud Databases Plug-in CLI, Cloud Databases API, Terraform, o Moduli Terraform IBM(TIM) pre-costruito, open-source e pronto per l'impresa.
Provisioning tramite la console IBM Cloud
Distribuire dalla console specificando i seguenti parametri.
Dettagli del servizio
- Nome del servizio: Il nome può essere una stringa qualsiasi ed è il nome utilizzato sul web e nella CLI per identificare la nuova installazione client.
- Gruppo di risorse: Se si organizzano i servizi in gruppi di risorse, specificare il gruppo di risorse in questo campo. Altrimenti, è possibile lasciare il valore predefinito. Per ulteriori informazioni, vedi Gestione dei gruppi di risorse.
- Posizione: la regione del cloud pubblico della distribuzione.
Modello di hosting
- Isolato: offerta a singolo tenant sicura per carichi di lavoro aziendali complessi e ad alte prestazioni.
- Condiviso: Offerta flessibile multi-tenant per selezioni di capacità dinamiche, mirate e disaccoppiate. Per ulteriori informazioni, vedere Modelli di hosting.
Assegnazione delle risorse
Ottimizzare l'assegnazione delle risorse. Le opzioni disponibili differiscono in base al modello di host selezionato.
- Isolato: utilizzare la tabella per scegliere la dimensione della macchina per ciascun membro della distribuzione e specificare la dimensione del disco.
- Condiviso: per impostazione predefinita, viene selezionata l'allocazione di risorse più piccola possibile. Questo è l'ideale per piccole applicazioni o test. Per allocazioni più grandi, seleziona il riquadro Personalizzato, che consente la configurazione di risorse flessibili con 2 + core.
Il modello di hosting Shared Compute supporta allocazioni di risorse a grana più fine che non sono mostrate nell'interfaccia utente per mantenere la chiarezza. Per ulteriori informazioni, vedere Modelli di hosting.
Specificare la dimensione del disco in base ai requisiti. Può essere aumentato dopo il provisioning, ma non può essere diminuito per evitare la perdita di dati.
Configurazione del servizio
- Versione del database: Imposta solo al momento della distribuzione La versione di distribuzione del database. Per garantire prestazioni ottimali, eseguire la versione preferita. L'ultima versione secondaria viene utilizzata automaticamente. Per ulteriori informazioni, vedere Politiche di versione.
- Crittografia: Impostazione solo alla distribuzione Se si usaKey Protect, è possibile selezionare un'istanza e una chiave per crittografare il disco dell'installazione client. Se non si utilizza la propria chiave, la distribuzione crea e gestisce automaticamente la propria chiave di codifica del disco.
- Endpoint: Impostare solo al momento della distribuzione- Configurare gliEndpoint del servizio sulla distribuzione. L'impostazione predefinita è privata.
Dopo aver selezionato le impostazioni appropriate, fare clic su Crea per avviare il processo di provisioning.
Provisioning tramite la CLI
Crea un'istanza del servizio tramite la CLI
Prima del provisioning, segui le istruzioni fornite nella documentazione per installare lo strumento CLI IBM Cloud.
-
Accedi a IBM Cloud. Se si utilizza un ID utente federato, è importante passare a un codice di accesso unico (
ibmcloud login --sso) o utilizzare una chiave API (ibmcloud --apikey key or @key_file) per l'autenticazione. Per ulteriori informazioni su come effettuare il login utilizzando la CLI, vedere Comandi generali della CLI(ibmcloud) inibmcloud login.ibmcloud login -
Selezionare il modello di hosting su cui si desidera che il database venga fornito. Puoi modificarlo in un secondo momento.
-
Eseguire il provisioning del database con il seguente comando:
ibmcloud resource service-instance-create <INSTANCE_NAME> <SERVICE_NAME> <SERVICE_PLAN_NAME> <LOCATION> <RESOURCE_GROUP> -p '{"members_host_flavor": "<members_host_flavor value>"}' --service-endpoints="<endpoint>"Ad esempio, per eseguire il provisioning di un'istanza del modello di hosting Databases for MySQL Shared Compute, utilizzare un comando come:
ibmcloud resource service-instance-create test-database databases-for-mysql standard us-south -p '{"members_host_flavor": "multitenant", "members_memory_allocation_mb": "12288"}' --service-endpoints="private"Predisporre un'istanza Databases for MySQL isolata con lo stesso parametro
"members_host_flavor"-p, impostandolo alla dimensione isolata desiderata. Le dimensioni di hosting disponibili e i relativi parametrimembers_host_flavor valuesono elencati nella Tabella 2. Ad esempio,{"members_host_flavor": "b3c.4x16.encrypted"}. Si noti che, poiché la selezione del sapore dell'host include le dimensioni della CPU e della RAM (b3c.4x16.encryptedè 4 CPU e 16 RAM), questa richiesta non accetta sia una selezione di dimensioni isolate che selezioni separate di allocazione di CPU e RAM.ibmcloud resource service-instance-create test-database databases-for-mysql standard us-south -p '{"members_host_flavor": "b3c.4x16.encrypted"}' --service-endpoints="private"I campi nel comando sono descritti nella seguente tabella.
Campi del formato del comando di base Campo Descrizione Indicatore INSTANCE_NAMERichiestoIl nome dell'istanza può essere una stringa qualsiasi ed è il nome utilizzato sul web e nella CLI per identificare la nuova installazione client. SERVICE_NAMERichiestoNome o ID del servizio. Per Databases for MySQL, usare databases-for-mysql.SERVICE_PLAN_NAMERichiestoPiano standard ( standard)LOCATIONRichiestoLa posizione in cui si desidera distribuire. Per recuperare un elenco di regioni, utilizzare il comando ibmcloud regions.RESOURCE_GROUPIl nome del gruppo di risorse. Il valore predefinito è default.-g --parametersFile o stringa JSON dei parametri per creare l'istanza del servizio -p members_host_flavorPer eseguire il provisioning di un'istanza di calcolo isolata o condivisa, utilizzare {"members_host_flavor": "<members_host_flavor value>"}. Per Shared Compute, specificaremultitenant. Per Isolated Compute, selezionare la configurazione di CPU e RAM desiderata. Per ulteriori informazioni, consultare la tabella seguente o Modelli di hosting.--service-endpointsRichiestoConfigurare gli endpoint del servizio della distribuzione, sia public,privateopublic-and-private.Nella CLI
service-endpointsè un indicatore, non un parametro.Verrà visualizzata una risposta come:
Creating service instance INSTANCE_NAME in resource group default of account USER... OK Service instance INSTANCE_NAME was created. Name: INSTANCE_NAME ID: crn:v1:bluemix:public:databases-for-mysql:us-south:a/ 40ddc34a846383BGB5b60e:dd13152c-fe15-4bb6-af94-fde0af5303f4:: GUID: dd13152c-fe15-4bb6-af94-fde0af56897 Location: LOCATION State: provisioning Type: service_instance Sub Type: Public Service Endpoints: private Allow Cleanup: false Locked: false Created at: 2023-06-26T19:42:07Z Updated at: 2023-06-26T19:42:07Z Last Operation: Status create in progress Message Started create instance operation-
Per controllare lo stato di provisioning, utilizzare il seguente comando:
ibmcloud resource service-instance <INSTANCE_NAME>Al termine, verrà visualizzata una risposta come:
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-mysql:us-south:a/40ddc34a953a8c02f109835656860e:dd13152c-fe15-4bb6-af94-fde0af5303f4:: GUID: dd13152c-fe15-4bb6-af94-fde5654765 Location: <LOCATION> Service Name: databases-for-mysql Service Plan Name: standard Resource Group Name: default State: active Type: service_instance Sub Type: Public Locked: false Service Endpoints: private Created at: 2023-06-26T19:42:07Z Created by: USER Updated at: 2023-06-26T19:53:25Z Last Operation: Status create succeeded Message Provisioning mysql with version 12 (100%) -
(Facoltativo) Eliminare un'istanza eseguendo un comando come questo:
ibmcloud resource service-instance-delete <INSTANCE_NAME_OR_CRN>
-
Il parametro members host flavor
Il parametro members_host_flavor definisce il dimensionamento del calcolo. Per eseguire il provisioning di un'istanza di calcolo condiviso, specificare multitenant. Per eseguire il provisioning di un'istanza di Computing
isolato, immettere il valore appropriato per la configurazione di CPU e RAM desiderata.
| Sapore dell'host dei membri | valore di members_host_flavor |
|---|---|
| Shared compute | multitenant |
| 4 CPU x 16 RAM | b3c.4x16.encrypted |
| 8 CPU x 32 RAM | b3c.8x32.encrypted |
| 8 CPU x 64 RAM | m3c.8x64.encrypted |
| 16 CPU x 64 RAM | b3c.16x64.encrypted |
| 32 CPU x 128 RAM | b3c.32x128.encrypted |
| 30 CPU x 240 RAM | m3c.30x240.encrypted |
L'autoscaling di CPU e RAM non è supportato su Cloud Databases Isolated Compute. Il ridimensionamento automatico del disco è disponibile. Se avete effettuato il provisioning di un'istanza isolata o siete passati da un'implementazione con autoscaling, tenete d'occhio le vostre risorse usando l'integrazione di IBM Cloud® Monitoring, che fornisce metriche per la memoria, lo spazio su disco e l'utilizzo dell'I/O su disco. Per aggiungere risorse alla tua istanza, ridimensiona manualmente la tua distribuzione.
Il parametro --parameters
Il comando service-instance-create supporta un indicatore -p, che consente ai parametri in formato JSON di passare al processo di provisioning. Ad esempio, è possibile passare come valori di parametro i Cloud Resource
Name (CRN), che identificano in modo univoco una risorsa nel cloud. Tutti i nomi e i valori dei parametri vengono passati come stringhe.
Ad esempio, se si sta eseguendo il provisioning di un database da un particolare backup e la nuova distribuzione del database necessita di un totale di 12 GB di memoria su tre membri, il comando per eseguire il provisioning di 4 GB per membro si presenta come segue:
ibmcloud resource service-instance-create databases-for-mysql <SERVICE_NAME> standard us-south \
-p \ '{
"backup_id": "crn:v1:blue:public:databases-for-mysql:us-south:a/54e8ffe85dcedf470db5b5ee6ac4a8d8:1b8f53db-fc2d-4e24-8470-f82b15c71717:backup:06392e97-df90-46d8-98e8-cb67e9e0a8e6",
"members_memory_allocation_mb": "12288"
}' --service-endpoints="private"
Provisioning tramite l'API del controller di risorse
Segui questa procedura per eseguire il provisioning utilizzando l'API del controller di risorse.
-
Ottieni un token IAM dal tuo token API.
-
Devi conoscere l'ID del gruppo di risorse a cui vuoi eseguire la distribuzione. Queste informazioni sono disponibili tramite la CLI IBM Cloud.
Utilizzare un comando come:
ibmcloud resource groups -
È necessario conoscere la regione in cui si desidera distribuire.
Per elencare tutte le regioni in cui è possibile eseguire il provisioning delle distribuzioni dalla regione corrente, utilizza il plug-in della CLICloud Databases.
Il comando è simile al seguente:
ibmcloud cdb regions --json -
Selezionare il modello di hosting su cui si desidera che il database venga fornito. Puoi modificarlo in un secondo momento.
Un sapore di host rappresenta dimensioni fisse di allocazioni di risorse garantite. Per vedere quali sono gli host flavor disponibili nella vostra regione, chiamate l'endpoint host flavors capability in questo modo:
curl -X POST https://api.{region}.databases.cloud.ibm.com/v5/ibm/capability/flavors \
-H 'Authorization: Bearer <>' \
-H 'ContentType: application/json' \
-d '{
"deployment": {
"type": "mysql",
"location": "us-south"
},
}'
Questa restituisce:
{
"deployment": {
"type": "mysql",
"location": "us-south",
"platform": "classic"
},
"capability": {
"flavors": [
{
"id": "b3c.4x16.encrypted",
"name": "4x16",
"cpu": {
"allocation_count": 4
},
"memory": {
"allocation_mb": 16384
},
"hosting_size": "xs"
},
{
"id": "b3c.8x32.encrypted",
"name": "8x32",
"cpu": {
"allocation_count": 8
},
"memory": {
"allocation_mb": 32768
},
"hosting_size": "s"
},
{
"id": "m3c.8x64.encrypted",
"name": "8x64",
"cpu": {
"allocation_count": 8
},
"memory": {
"allocation_mb": 65536
},
"hosting_size": "s+"
},
{
"id": "b3c.16x64.encrypted",
"name": "16x64",
"cpu": {
"allocation_count": 16
},
"memory": {
"allocation_mb": 65536
},
"hosting_size": "m"
},
{
"id": "b3c.32x128.encrypted",
"name": "32x128",
"cpu": {
"allocation_count": 32
},
"memory": {
"allocation_mb": 131072
},
"hosting_size": "l"
},
{
"id": "m3c.30x240.encrypted",
"name": "30x240",
"cpu": {
"allocation_count": 30
},
"memory": {
"allocation_mb": 245760
},
"hosting_size": "xl"
},
{
"id": "multitenant",
"name": "multitenant",
"cpu": {
"allocation_count": 0
},
"memory": {
"allocation_mb": 0
},
"hosting_size": ""
}
]
}
}
Come mostrato, i sapori dell'host di calcolo isolato disponibili per un'istanza Databases for MySQL nella regione us-south sono:
b3c.4x16.encryptedb3c.8x32.encryptedm3c.8x64.encryptedb3c.16x64.encryptedb3c.32x128.encryptedm3c.30x240.encrypted
Per fornire o scalare l'istanza a 4 CPU e 16384 megabyte o RAM, inviare un comando di scala con un nuovo members_host_flavor:
{
"parameters": {
"members_host_flavor": "b3c.4x16.encrypted"
}
}
Per scalare l'istanza fino a 8 CPU e 32768 megabyte di RAM, inviare un comando di scala con un nuovo members_host_flavor:
{
"parameters": {
"members_host_flavor": "b3c.8x32.encrypted"
}
}
-
Una volta ottenute tutte le informazioni, provvedere a una nuova istanza di risorsa con il controllore di risorse IBM Cloud.
curl -X POST \ https://resource-controller.cloud.ibm.com/v2/resource_instances \ -H "Authorization: Bearer <>" \ -H 'Content-Type: application/json' \ -d '{ "name": "<INSTANCE_NAME", "target": "<region>", "resource_group": "RESOURCE_GROUP_ID", "resource_plan_id": "<SERVICE_PLAN_NAME>" "parameters": { "members_host_flavor": "<members_host_flavor_value>", "service_endpoints": "<ENDPOINT>", "version":"<version>" } }'
Ad esempio, per creare un'istanza di Shared Compute, seguire questo esempio:
curl -X POST \
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H "Authorization: Bearer <>" \
-H 'Content-Type: application/json' \
-d '{
"name": "my-instance",
"target": "us-south",
"resource_group": "5g9f447903254bb58972a2f3f5a4c711",
"resource_plan_id": "databases-for-mysql-standard"
"parameters": {
"members_host_flavor": "multitenant",
"service_endpoints": "private",
"members_memory_allocation_mb": 12288,
"members_cpu_allocation_count": 3
}
}'
Creare un'istanza Databases for MySQL isolata con lo stesso parametro "members_host_flavor", impostandolo sulla dimensione isolata desiderata. Le dimensioni di hosting disponibili e i relativi parametri members_host_flavor value sono elencati nella Tabella 2. Ad esempio, {"members_host_flavor": "b3c.4x16.encrypted"}. Si noti che, poiché la selezione del sapore dell'host include le dimensioni
della CPU e della RAM (b3c.4x16.encrypted è 4 CPU e 16 RAM), questa richiesta non accetta sia una selezione di dimensioni isolate che selezioni separate di allocazione di CPU e RAM.
curl -X POST \
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H "Authorization: Bearer <>" \
-H 'Content-Type: application/json' \
-d '{
"name": "my-instance",
"target": "us-south",
"resource_group": "5g9f447903254bb58972a2f3f5a4c711",
"resource_plan_id": "databases-for-mysql-enterprise"
"parameters": {
"host_flavor": {
"member_host_flavor": "b3c.4x16.encrypted",
"service_endpoints": "private"
}
}
}'
I parametri name, target, resource_group e resource_plan_id sono tutti obbligatori.
I campi nel comando sono descritti nella seguente tabella.
| Campo | Descrizione | Indicatore |
|---|---|---|
name Richiesto |
Il nome dell'istanza può essere una stringa qualsiasi ed è il nome utilizzato sul web e nella CLI per identificare la nuova installazione client. | |
target Richiesto |
La regione in cui si desidera distribuire. Per recuperare un elenco di regioni, utilizzare il comando ibmcloud regions. |
|
resource_group |
Il nome del gruppo di risorse. Il valore predefinito è default. |
-g |
resource_plan_id Richiesto |
Nome o ID del servizio. Per Databases for MySQL, usare databases-for-mysql-standard. |
|
--parameters |
File o stringa JSON dei parametri per creare l'istanza del servizio | -p |
members_host_flavor |
Per eseguire il provisioning di un'istanza di calcolo isolata o condivisa, utilizzare un parametro come {"members_host_flavor": "<members_host_flavor value>"}. Per Shared Compute, specificare multitenant.
Per Isolated Compute, selezionare la configurazione di CPU e RAM desiderata. Per ulteriori informazioni, consultare la tabella seguente o Modelli di hosting. |
|
service-endpoints Richiesto |
Configurare gli endpoint del servizio della distribuzione, sia public, private o public-and-private. |
Il parametro members host flavor
Il parametro members_host_flavor definisce il dimensionamento del calcolo. Per eseguire il provisioning di un'istanza di calcolo condiviso, specificare multitenant. Per eseguire il provisioning di un'istanza di Computing
isolato, immettere il valore appropriato per la configurazione di CPU e RAM desiderata.
| Sapore dell'host dei membri | valore di members_host_flavor |
|---|---|
| Shared compute | multitenant |
| 4 CPU x 16 RAM | b3c.4x16.encrypted |
| 8 CPU x 32 RAM | b3c.8x32.encrypted |
| 8 CPU x 64 RAM | m3c.8x64.encrypted |
| 16 CPU x 64 RAM | b3c.16x64.encrypted |
| 32 CPU x 128 RAM | b3c.32x128.encrypted |
| 30 CPU x 240 RAM | m3c.30x240.encrypted |
L'autoscaling di CPU e RAM non è supportato su Cloud Databases Isolated Compute. Il ridimensionamento automatico del disco è disponibile. Se avete effettuato il provisioning di un'istanza isolata o siete passati da un'implementazione con autoscaling, tenete d'occhio le vostre risorse usando l'integrazione di IBM Cloud® Monitoring, che fornisce metriche per la memoria, lo spazio su disco e l'utilizzo dell'I/O su disco. Per aggiungere risorse alla tua istanza, ridimensiona manualmente la tua distribuzione.
Elenco dei parametri aggiuntivi
-
backup_id- Un CRN di una risorsa di backup da cui ripristinare. Il backup deve essere creato da una installazione database con lo stesso ID servizio. Il backup viene caricato dopo il provisioning e viene avviata la nuova distribuzione che utilizza tali dati. Un CRN di backup ha il formatocrn:v1:<...>:backup:<uuid>. Se omesso, il database viene fornito vuoto. -
version- La versione del database di cui eseguire il provisioning. Se omesso, il database viene creato con la versione principale e secondaria più recente. -
disk_encryption_key_crn- Il CRN di una chiave KMS (ad esempio, Key Protect ), che viene utilizzata per la crittografia del disco. Una chiave KMS CRN ha il formatocrn:v1:<...>:key:<id>. -
backup_encryption_key_crn- Il CRN di una chiave KMS (ad esempio, Key Protect ), che viene utilizzata per la crittografia di backup. Una chiave KMS CRN ha il formatocrn:v1:<...>:key:<id>.Per utilizzare una chiave per i tuoi backup, devi prima abilitare la delega da servizio a servizio.
-
members_memory_allocation_mb- quantità totale di memoria da condividere tra i membri del database all'interno del database. Ad esempio, se il valore è "12288" e ci sono tre membri del database, l'installazione riceve 12 GB di RAM in totale, con 4 GB di RAM per membro. Se omesso, viene utilizzato il valore predefinito per il tipo di database. Questo parametro si applica solo a 'multitenante'. -
members_disk_allocation_mb- quantità totale di disco da condividere tra i membri del database all'interno del database. Ad esempio, se il valore è "30720" e ci sono tre membri, la distribuzione ottiene 30 GB di disco totale, fornendo 10 GB di disco per membro. Se omesso, viene utilizzato il valore predefinito per il tipo di database. Questo parametro si applica solo a 'multitenante'. -
members_cpu_allocation_count- Abilita e alloca il numero di core specificato per l'installazione. Ad esempio, per utilizzare due core dedicati per membro, utilizzare"members_cpu_allocation_count":"2". Se si omette, verranno applicati i rapporti CPU:RAM predefiniti di Shared Compute. Questo parametro si applica solo a 'multitenante'.
Provisioning con Terraform
Utilizzate Terraform per gestire la vostra infrastruttura attraverso ibm_database Resource for Terraform supporta il provisioning
delle distribuzioni Cloud Databases. In alternativa, è possibile utilizzare i moduli Terraform IBM per gestire l'infrastruttura attraverso i moduli Terraform IBM per Databases for MySQL.
Selezionare il modello di hosting su cui si desidera che il database venga fornito. Puoi modificarlo in un secondo momento.
Provisioning di calcolo isolato con Terraform
Creare un'istanza Databases for MySQL isolata con lo stesso parametro "host_flavor", impostandolo sulla dimensione isolata desiderata. Le dimensioni di hosting disponibili e i relativi parametri host_flavor value sono elencati nella Tabella 1. Ad esempio, {"host_flavor": "b3c.4x16.encrypted"}. Si noti che, poiché la selezione del sapore dell'host include le dimensioni
della CPU e della RAM (b3c.4x16.encrypted è 4 CPU e 16 RAM), questa richiesta non accetta sia una selezione di dimensioni isolate che selezioni separate di allocazione di CPU e RAM.
data "ibm_resource_group" "group" {
name = "<your_group>"
}
resource "ibm_database" "<your_database>" {
name = "<your_database_name>"
plan = "standard"
location = "eu-gb"
service = "databases-for-mysql"
resource_group_id = data.ibm_resource_group.group.id
service_endpoints = "private"
tags = ["tag1", "tag2"]
adminpassword = "password12"
group {
group_id = "member"
host_flavor {
id = "b3c.8x32.encrypted"
}
disk {
allocation_mb = 256000
}
}
users {
name = "user123"
password = "password12"
}
allowlist {
address = "172.168.1.1/32"
description = "desc"
}
}
output "ICD MySQL database connection string" {
value = "http://${ibm_database.test_acc.ibm_database_connection.icd_conn}"
}
Il parametro host flavor
Il parametro host_flavor definisce il dimensionamento del calcolo.
- Compute condiviso- Per eseguire il provisioning di un'istanza di Shared Compute, specificare
multitenant. - Isolated compute- Per eseguire il provisioning di un'istanza Isolated Compute, immettere il valore appropriato per la configurazione di CPU e RAM desiderata. I valori sono riportati nella tabella seguente.
| flavor host | Valore host_flavor |
|---|---|
| Shared compute | multitenant |
| 4 CPU x 16 RAM | b3c.4x16.encrypted |
| 8 CPU x 32 RAM | b3c.8x32.encrypted |
| 8 CPU x 64 RAM | m3c.8x64.encrypted |
| 16 CPU x 64 RAM | b3c.16x64.encrypted |
| 32 CPU x 128 RAM | b3c.32x128.encrypted |
| 30 CPU x 240 RAM | m3c.30x240.encrypted |
L'autoscaling di CPU e RAM non è supportato su Cloud Databases Isolated Compute. Il ridimensionamento automatico del disco è disponibile. Se avete effettuato il provisioning di un'istanza isolata o siete passati da un'implementazione con autoscaling, tenete d'occhio le vostre risorse usando l'integrazione di IBM Cloud® Monitoring, che fornisce metriche per la memoria, lo spazio su disco e l'utilizzo dell'I/O su disco. Per aggiungere risorse alla tua istanza, ridimensiona manualmente la tua distribuzione.