Suministro
Aprovisione una implantación de IBM Cloud® Databases for PostgreSQL a través del catálogo, el complemento CLI Cloud Databases, la API Cloud Databases, a través de Terraform o mediante módulos Terraform IBM(TIM) preconstruidos, de código abierto y preparados para empresas.
Aprovisionamiento a través de la consola IBM Cloud
Despliegue desde la consola especificando los siguientes parámetros:
Detalles de servicio
- Nombre del servicio- El nombre puede ser cualquier cadena y es el nombre que se utiliza en la web y en la CLI para identificar el nuevo despliegue.
- Grupo de recursos - Si está organizando sus servicios en grupos de recursos, especifique el grupo de recursos en este campo. De lo contrario, puede dejar el valor predeterminado. Para obtener más información, consulte Gestión de grupos de recursos.
- Ubicación: la región de la nube pública de la implementación.
Modelo de alojamiento
- Aislado: proteja la oferta de un solo arrendatario para cargas de trabajo empresariales complejas y de alto rendimiento.
- Compartido: Oferta multiarrendatario flexible para selecciones de capacidad dinámicas, ajustadas y disociadas. Para obtener más información, consulte Modelos de alojamiento.
Asignación de recursos
Ajuste con precisión la asignación de recursos. Las opciones disponibles difieren en función del modelo de alojamiento seleccionado.
- Aislado: Utilice la tabla para elegir el tamaño de máquina para cada miembro del despliegue y especifique el tamaño de disco.
- Compartido: De forma predeterminada, se selecciona la asignación de recursos más pequeña posible. Esto es ideal para pequeñas aplicaciones o pruebas. Para asignaciones más grandes, seleccione el mosaico Personalizado, que permite una configuración de recursos flexible con más de 2 núcleos.
El modelo de alojamiento Shared Compute admite asignaciones de recursos más precisas que no se muestran en la interfaz de usuario para mantener la claridad. Para obtener más información, consulte Modelos de alojamiento.
Especifique el tamaño de disco en función de sus requisitos. Se puede aumentar después del suministro, pero no se puede disminuir para evitar la pérdida de datos.
Configuración del servicio
- Versión de la base de datos Configurar sólo en el despliegue- La versión de despliegue de su base de datos. Para garantizar un rendimiento óptimo, ejecute la versión preferida. La última versión menor se utiliza automáticamente. Para obtener más información, consulte Política de versiones.
- Encriptación- Si se utiliza Key Protect, se puede seleccionar una instancia y una clave para encriptar el disco del despliegue. Si no utiliza su propia clave, el despliegue crea y gestiona automáticamente su propia clave de cifrado de disco.
- Puntos finales Configurar sólo en el despliegue- Configure losPuntos finales del servicio en su despliegue. La configuración por defecto es privada.
Después de seleccionar los valores adecuados, pulse Crear para iniciar el proceso de suministro.
Suministro a través de la CLI
Crear una instancia de servicio a través de la CLI
Antes de realizar el suministro, siga las instrucciones que se proporcionan en la documentación para instalar la herramienta de CLIIBM Cloud.
-
Inicie sesión en IBM Cloud. Si utiliza un ID de usuario federado, es importante que cambie a un código de acceso de una sola vez (
ibmcloud login --sso) o utilice una clave de API (ibmcloud --apikey key or @key_file) para la autenticación. Para obtener más información sobre cómo iniciar sesión mediante la CLI, consulte Comandos generales de la CLI(ibmcloud) enibmcloud login.ibmcloud login -
Seleccione el modelo de alojamiento en el que desea que se aprovisione su base de datos. Puede cambiarlo más adelante.
-
Aprovisione su base de datos con el siguiente 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>"Por ejemplo, para aprovisionar una instancia del modelo de alojamiento Shared Compute Databases for PostgreSQL, utilice un comando como
ibmcloud resource service-instance-create test-database databases-for-postgresql standard us-south -p '{"members_host_flavor": "multitenant", "members_memory_allocation_mb": "8192"}' --service-endpoints="private"Aprovisionar una Databases for PostgreSQL instancia Aislada con el mismo parámetro
"members_host_flavor"-p, ajustándolo al tamaño Aislado deseado. Los tamaños de alojamiento disponibles y sus parámetrosmembers_host_flavor valuese enumeran en Tabla 2. Por ejemplo,{"members_host_flavor": "b3c.4x16.encrypted"}. Tenga en cuenta que, dado que la selección del tipo de host incluye los tamaños de CPU y RAM (b3c.4x16.encryptedes 4 CPU y 16 RAM), esta solicitud no acepta tanto una selección de tamaño aislado como selecciones separadas de asignación de CPU y RAM.ibmcloud resource service-instance-create test-database databases-for-postgresql enterprise us-south -p '{"members_host_flavor": "b3c.4x16.encrypted"}' --service-endpoints="private"Los campos del mandato se describen en la tabla siguiente.
Campos básicos del formato de comandos Campo Descripción Distintivo INSTANCE_NAMERequeridoEl nombre de la instancia puede ser cualquier cadena y es el nombre que se utiliza en la web y en la CLI para identificar el nuevo despliegue. SERVICE_NAMERequeridoNombre o ID del servicio. Para Databases for PostgreSQL, utilice databases-for-postgresql.SERVICE_PLAN_NAMERequeridoPlan estándar ( standard)LOCATIONRequeridoLa ubicación donde desea desplegar. Para recuperar una lista de regiones, utilice el mandato ibmcloud regions.RESOURCE_GROUPEl nombre del grupo de recursos. El valor predeterminado es default.-g --parametersArchivo JSON o serie JSON de parámetros para crear instancia de servicio -p members_host_flavorPara aprovisionar una instancia de Computación Aislada o Compartida, utilice {"members_host_flavor": "<members_host_flavor value>"}. Para Shared Compute, especifiquemultitenant. Para Isolated Compute, seleccione la configuración de CPU y RAM deseada. Para obtener más información, consulte la siguiente tabla o Modelos de alojamiento.--service-endpointsRequeridoConfigure los Service endpoints de su despliegue, ya sea public,privateopublic-and-private.Verás una respuesta como:
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-postgresql: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-
Para comprobar el estado del aprovisionamiento, utilice el siguiente comando :
ibmcloud resource service-instance <INSTANCE_NAME_OR_CRN>Cuando haya terminado, verá una respuesta como:
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-postgresql:us-south:a/40ddc34a953a8c02f109835656860e:dd13152c-fe15-4bb6-af94-fde0af5303f4:: GUID: dd13152c-fe15-4bb6-af94-fde5654765 Location: <LOCATION> Service Name: databases-for-postgresql 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 postgresql with version 12 (100%) -
(Opcional) Supresión de una instancia de servicio. Suprima una instancia ejecutando un mandato como este:
ibmcloud resource service-instance-delete <INSTANCE_NAME_OR_CRN>
-
El parámetro members host flavor
El parámetro members_host_flavor define el tamaño de cálculo. Para suministrar una instancia de cálculo compartido, especifique multitenant. Para aprovisionar una instancia de Computación Aislada, introduzca el valor
apropiado para su configuración deseada de CPU y RAM.
| Socios Sabor anfitrión | valor de members_host_flavor |
|---|---|
| Computación compartida | 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 |
El autoescalado de CPU y RAM no es compatible con Cloud Databases Isolated Compute. El escalado automático de disco está disponible. Si ha aprovisionado una instancia aislada o ha pasado de un despliegue con autoescalado, vigile sus recursos mediante la integración de IBM Cloud® Monitoring, que proporciona métricas de utilización de memoria, espacio en disco y E/S de disco. Para añadir recursos a la instancia, escale manualmente el despliegue.
El parámetro --parameters
El comando service-instance-create admite un parámetro -p, que permite pasar parámetros con formato JSON al proceso de provisión. Por ejemplo, puede pasar Nombres de recursos en la nube (CRN) como valores de parámetros,
que identifican de forma exclusiva un recurso en la nube. Todos los nombres y valores de parámetros se pasan como series.
Por ejemplo, si se está aprovisionando una base de datos a partir de una copia de seguridad concreta y el nuevo despliegue de la base de datos necesita un total de 12 GB de memoria en tres miembros, el comando para aprovisionar 4 GB por miembro tiene el siguiente aspecto:
ibmcloud resource service-instance-create databases-for-postgresql <INSTANCE_NAME> standard us-south \
-p \ '{
"backup_id": "crn:v1:blue:public:databases-for-postgresql:us-south:a/54e8ffe85dcedf470db5b5ee6ac4a8d8:1b8f53db-fc2d-4e24-8470-f82b15c71717:backup:06392e97-df90-46d8-98e8-cb67e9e0a8e6",
"members_memory_allocation_mb": "4096"
}' --service-endpoints="private"
Suministro mediante la API del controlador de recursos
Siga estos pasos para aprovisionar mediante la API de controlador de recursos.
-
Obtenga un token IAM a partir de su token API.
-
Debe conocer el ID del grupo de recursos en el que desea realizar el despliegue. Utilice este comando para obtener una lista de los grupos de recursos de su cuenta:
curl -X GET "https://resource-controller.cloud.ibm.com/v2/resource_groups?account_id=<YOUR_ACCOUNT>" -H "Authorization: Bearer <TOKEN>" -
Debe conocer la región en la que desea desplegarse. Para obtener una lista de todas las regiones en las que se pueden realizar implantaciones desde la región actual, utilice este comando de la API:
curl -X GET https://api.<YOUR-REGION>.databases.cloud.ibm.com/v5/ibm/regions -H 'Authorization: Bearer <TOKEN>' \ -
Seleccione el modelo de alojamiento en el que desea que se aprovisione su base de datos. Puede cambiarlo más adelante.
Un sabor de host representa tamaños fijos de asignaciones de recursos garantizados. Para ver qué tipos de host están disponibles en su región, llame al punto final de capacidad de tipos de host de la siguiente manera:
curl -X POST https://api.{region}.databases.cloud.ibm.com/v5/ibm/capability/flavors \ -H 'Authorization: Bearer <>' \ -H 'ContentType: application/json' \ -d '{ "deployment": { "type": "postgresql", "location": "us-south" } }'Esto devuelve:
{ "deployment": { "type": "postgresql", "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": "" } ] } }Como se muestra, los sabores de host Isolated Compute disponibles para una instancia Databases for PostgreSQL en la región
us-southson:b3c.4x16.encryptedb3c.8x32.encryptedm3c.8x64.encryptedb3c.16x64.encryptedb3c.32x128.encryptedm3c.30x240.encrypted
Para aprovisionar o escalar su instancia a 4 CPUs y
16384megabytes o RAM, envíe el siguiente comando:{ "parameters": { "members_host_flavor": "b3c.4x16.encrypted" } }Para escalar su instancia hasta 8 CPUs y
32768megabytes de RAM, envíe un comando scale con un nuevomembers_host_flavor:{ "parameters": { "members_host_flavor": "b3c.8x32.encrypted" } } -
Una vez tengas toda la información, aprovisiona una nueva instancia de recurso con el IBM Cloud Resource Controller.
curl -X POST \ https://resource-controller.cloud.ibm.com/v2/resource_instances \ -H "Authorization: Bearer <>" \ -H 'Content-Type: application/json' \ -d '{ "name": "<INSTANCE_NAME_OR_CRN", "target": "<LOCATION>", "resource_group": "RESOURCE_GROUP_ID", "resource_plan_id": "<SERVICE_PLAN_NAME>" "parameters": { "members_host_flavor": "<members_host_flavor_value>", "service_endpoints": "<ENDPOINT>", "version": "<version>" } }'Por ejemplo, para crear una instancia de Shared Compute, siga este comando:
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-postgresql-standard" "parameters": { "members_host_flavor": "multitenant", "service_endpoints":"private", "members_memory_allocation_mb": 16384, "members_cpu_allocation_count": 4 } }'Aprovisionar una Databases for PostgreSQL instancia Aislada con el mismo parámetro
"members_host_flavor", ajustándolo al tamaño Aislado deseado. Los tamaños de alojamiento disponibles y sus parámetrosmembers_host_flavor valuese enumeran en Tabla 2. Por ejemplo,{"members_host_flavor": "b3c.4x16.encrypted"}. Tenga en cuenta que, dado que la selección del tipo de host incluye los tamaños de CPU y RAM (b3c.4x16.encryptedes 4 CPU y 16 RAM), esta solicitud no acepta tanto una selección de tamaño aislado como selecciones separadas de asignación de CPU y 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-postgresql-standard" "parameters": { "member_host_flavor": "b3c.4x16.encrypted", "service_endpoints": "private" } }'Los parámetros
name,target,resource_group,resource_plan_id, yservice_endpointsson obligatorios.Los campos del mandato se describen en la tabla siguiente.
Campos básicos del formato de comandos Campo Descripción Distintivo nameRequeridoEl nombre de la instancia puede ser cualquier cadena y es el nombre que se utiliza en la web y en la CLI para identificar el nuevo despliegue. targetRequeridoLa región en la que desea desplegar. Para recuperar una lista de regiones, utilice el mandato ibmcloud regions.resource_groupEl nombre del grupo de recursos. El valor predeterminado es default.-g resource_plan_idRequeridoNombre o ID del servicio. Para Databases for PostgreSQL, utilice databases-for-postgresql-standard.--parametersArchivo JSON o serie JSON de parámetros para crear instancia de servicio -p members_host_flavorPara aprovisionar una instancia de Computación Aislada o Compartida, utilice un parámetro como {"members_host_flavor": "<members_host_flavor value>"}. Para Shared Compute, especifiquemultitenant. Para Isolated Compute, seleccione la configuración de CPU y RAM deseada. Para obtener más información, consulte la tabla siguiente o Modelos de alojamiento.service_endpointsRequeridoConfigure los Service endpoints de su despliegue, ya sea public,privateopublic-and-private.versionLa versión de la base de datos que se va a aprovisionar. Si se omite, la base de datos se crea con la versión principal y menor más reciente.
El parámetro host flavor
El parámetro members_host_flavor define el tamaño de cálculo. Para suministrar una instancia de cálculo compartido, especifique multitenant. Para aprovisionar una instancia de Computación Aislada, introduzca el valor
apropiado para su configuración deseada de CPU y RAM.
| Socios Sabor anfitrión | valor de members_host_flavor |
|---|---|
| Computación compartida | 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 |
El autoescalado de CPU y RAM no es compatible con Cloud Databases Isolated Compute. El escalado automático de disco está disponible. Si ha aprovisionado una instancia aislada o ha pasado de un despliegue con autoescalado, vigile sus recursos mediante la integración de IBM Cloud® Monitoring, que proporciona métricas de utilización de memoria, espacio en disco y E/S de disco. Para añadir recursos a la instancia, escale manualmente el despliegue.
Lista de parámetros adicionales
-
backup_id- Un CRN de un recurso de copia de seguridad desde el que restaurar. La copia de seguridad debe ser creada por un despliegue de base de datos con el mismo ID de servicio. La copia de seguridad se carga después del suministro y se inicia el nuevo despliegue que utiliza estos datos. Un CRN de copia de seguridad tiene el formatocrn:v1:<...>:backup:<uuid>- Si se omite, la base de datos se aprovisiona vacía. -
disk_encryption_key_crn- El CRN de una clave KMS ( Key Protect ), que se utiliza para el cifrado del disco. El CRN de una clave KMS tiene el formatocrn:v1:<...>:key:<id>. -
backup_encryption_key_crn- El CRN de una clave KMS ([Key Protect ), que luego se utiliza para el cifrado de la copia de seguridad. El CRN de una clave KMS tiene el formatocrn:v1:<...>:key:<id>.Para utilizar una clave para las copias de seguridad, primero debe habilitar la delegación de servicio a servicio.
-
members_memory_allocation_mb- La asignación de RAM es total por despliegue. Cantidad total de memoria que se compartirá entre los miembros de la base de datos dentro de la base de datos. Por ejemplo, si el valor es "8192", y hay dos miembros de la base de datos, entonces el despliegue obtiene 8 GB de RAM en total, dando 4 GB de RAM por miembro. Si se omite, se utiliza el valor predeterminado para el tipo de base de datos. Este parámetro sólo se aplica amultitenant. -
members_disk_allocation_mb- La asignación de discos es total por implantación. Cantidad total de disco a compartir entre los miembros de la base de datos dentro de la base de datos. Por ejemplo, si el valor es "30720" y hay tres miembros, el despliegue obtiene 30 GB de disco total, lo que significa 10 GB de disco por miembro. Si se omite, se utiliza el valor predeterminado para el tipo de base de datos. Este parámetro sólo se aplica amultitenant. -
members_cpu_allocation_count- La asignación de CPU es por miembro individual de la base de datos. Habilita y asigna el número de núcleos especificados a su implantación. Por ejemplo, para utilizar dos núcleos dedicados por miembro, utilice"members_cpu_allocation_count":"2". Si se omite, se aplicarán las proporciones predeterminadas de CPU:RAM de Shared Compute. Este parámetro sólo se aplica amultitenant. -
remote_leader_id- Un CRN de la base de datos líder para realizar el despliegue de la réplica (sólo lectura). La base de datos líder se crea mediante un despliegue Databases for PostgreSQL. Se configura una réplica de solo lectura para replicar todos los datos del despliegue de líder en el despliegue de réplica utilizando la réplica asíncrona. Para obtener más información, consulte Configuración de réplicas de solo lectura.
Suministro con Terraform
Utilice Terraform para gestionar su infraestructura a través del recurso ibm_database para Terraform soporta el aprovisionamiento
de despliegues Cloud Databases. Como alternativa, puede utilizar Terraform IBM Modules para gestionar su infraestructura a través de Terraform IBM Modules for Databases for PostgreSQL.
Seleccione el modelo de alojamiento en el que desea que se aprovisione su base de datos. Puede cambiarlo más adelante.
Aprovisionamiento de computación aislada con Terraform
Aprovisionar una Databases for PostgreSQL instancia Aislada con el mismo parámetro "host_flavor", ajustándolo al tamaño Aislado deseado. Los tamaños de alojamiento disponibles y sus parámetros host_flavor value se enumeran en Tabla 1. Por ejemplo, {"host_flavor": "b3c.4x16.encrypted"}. Tenga en cuenta que, dado que la selección del tipo de host incluye los tamaños de
CPU y RAM (b3c.4x16.encrypted es 4 CPU y 16 RAM), esta solicitud no acepta tanto una selección de tamaño aislado como selecciones separadas de asignación de CPU y 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-postgresql"
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 Postgresql database connection string" {
value = "http://${ibm_database.test_acc.ibm_database_connection.icd_conn}"
}
El parámetro host flavor
El parámetro host_flavor define el tamaño de cálculo.
- Computación compartida- Para aprovisionar una instancia de Computación compartida, especifique
multitenant. - Computación aislada- Para aprovisionar una instancia de Computación Aislada, introduzca el valor apropiado para la configuración de CPU y RAM que desee. Los valores pueden verse en la tabla siguiente.
| Tipo de host | valor host_flavor |
|---|---|
| Computación compartida | 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 |
El autoescalado de CPU y RAM no es compatible con Cloud Databases Isolated Compute. El escalado automático de disco está disponible. Si ha aprovisionado una instancia aislada o ha pasado de un despliegue con autoescalado, vigile sus recursos mediante la integración de IBM Cloud® Monitoring, que proporciona métricas de utilización de memoria, espacio en disco y E/S de disco. Para añadir recursos a la instancia, escale manualmente el despliegue.