Suministro
Aprovisione una implantación de IBM Cloud® Databases for MongoDB a través de catálogo, Cloud Databases Complemento CLI, Cloud Databases API, Terraform, Terraform, o a través de Módulos Terraform IBM(TIM), una solución de código abierto preconfigurada y preparada para la empresa.
Suministro a través de la consola de IBM Cloud
Provisión 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 del despliegue.
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.
Databases for MongoDB Las funciones Enterprise sólo están disponibles en Isolated Compute.
Para obtener más información, consulte Modelos de alojamiento y Planes deDatabases for MongoDB.
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 hospedaje de Computación Compartida admite asignaciones de recursos más detalladas que no se muestran en la interfaz de usuario para mantener la claridad. Para más información, ver Modelos de hosting.
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: Sólo se establece en el despliegue Esta es la versión de despliegue de su base de datos. Recomendamos utilizar la versión preferida para garantizar un rendimiento óptimo. Para más información, ver Política de versiones.
- Edición de base de datos: Establecer sólo en el despliegue Seleccione entre los planes Standard, Enterprise o Enterprise Sharding. Tenga en cuenta que los planes Enterprise y Enterprise Sharding no están disponibles con el alojamiento compartido. Para más información, ver Planes.
- Cifrado: Establecer sólo en el despliegue Si utilizaKey Protect, se puede seleccionar una instancia y una clave para cifrar 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: Establecer solo en la implementación Configurar elPuntos finales de servicio en su implementación. La configuración por defecto es privada.
Un despliegue de Databases for MongoDB no puede tener simultáneamente puntos finales públicos y privados.
Después de seleccionar los valores adecuados, pulse Crear para iniciar el proceso de suministro.
Suministro a través de la CLI
Cree 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 suministre la 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> -g <RESOURCE_GROUP> -p '{"members_host_flavor": "<members_host_flavor value>"}' --service-endpoints="<endpoint>"
Por ejemplo, para aprovisionar una instancia de modelo de alojamiento Databases for MongoDB Shared Compute, utilice un comando como:
ibmcloud resource service-instance-create test-database databases-for-mongodb standard us-south -p '{"members_host_flavor": "multitenant", "members_memory_allocation_mb": "12288"}' --service-endpoints="private"
Aprovisionar una Databases for MongoDB instancia Aislada con el mismo parámetro "members_host_flavor" -p, ajustándolo al tamaño Aislado deseado. Tamaños de hosting disponibles y sus members_host_flavor value Los parámetros se 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.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.
ibmcloud resource service-instance-create test-database databases-for-mongodb enterprise us-south -p '{"members_host_flavor": "b3c.4x16.encrypted"}' --service-endpoints="private"
Los campos del mandato se describen en la tabla siguiente.
| Campo | Descripción | Distintivo |
|---|---|---|
INSTANCE_NAME Requerido |
El 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_NAME Requerido |
Nombre o ID del servicio. Para Databases for MongoDB, usar databases-for-mongodb. |
|
SERVICE_PLAN_NAME Requerido |
enterprise, enterprise-sharding o standard |
|
LOCATION Requerido |
La ubicación donde desea desplegar. Para recuperar una lista de regiones, utilice el ibmcloud regions dominio. |
|
RESOURCE_GROUP |
El nombre del grupo de recursos. El valor predeterminado es default. |
-g |
--parameters |
Archivo JSON o serie JSON de parámetros para crear instancia de servicio | -p |
members_host_flavor |
Para aprovisionar una instancia de Computación aislada o compartida, use {"members_host_flavor": "<members_host_flavor value>"}. Para Computación compartida, especifique multitenant.
Para Computación aislada, seleccione la configuración de CPU y RAM que desee. Para obtener más información, consulte la siguiente tabla o Modelos de alojamiento. |
|
--service-endpoints Requerido |
Configure los Service endpoints de su despliegue, ya sea public o private. |
En la CLI, service-endpoints es una bandera, no un parámetro.
El parámetro members host flavor
El parámetro members_host_flavor define el tamaño de cálculo.
-
Para aprovisionar una instancia de Shared Compute, especifique
multitenant. Para aprovisionar una instancia de Computación aislada, ingrese el valor apropiado para la configuración de CPU y RAM que desee.Miembros parámetro de tamaño de sabor de host Sabor anfitrión de los miembros valor de members_host_flavor Computación compartida multitenant4 CPU x 16 RAM b3c.4x16.encrypted8 CPU x 32 RAM b3c.8x32.encrypted8 CPU x 64 RAM m3c.8x64.encrypted16 CPU x 64 RAM b3c.16x64.encrypted32 CPU x 128 RAM b3c.32x128.encrypted30 CPU x 240 RAM m3c.30x240.encryptedVerá 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-mongodb: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>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-mongodb:us-south:a/40ddc34a953a8c02f109835656860e:dd13152c-fe15-4bb6-af94-fde0af5303f4:: GUID: dd13152c-fe15-4bb6-af94-fde5654765 Location: <LOCATION> Service Name: databases-for-mongodb 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 mongodb with version 7.17 (100%) -
Opcional: Para eliminar una instancia de servicio, ejecute el siguiente comando :
ibmcloud resource service-instance-delete <INSTANCE_NAME_OR_CRN>
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 una bandera -p, que permite pasar parámetros con formato JSON al proceso de provisión. Por ejemplo, puede pasar nombres de recursos de nube (CRN) como valores de parámetro,
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-mongodb <SERVICE_NAME> standard us-south \
-p \ '{
"backup_id": "crn:v1:blue:public:databases-for-mongodb: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.
-
Obtener un Token IAM.
-
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 suministre la base de datos. Puede cambiarlo más adelante.
Un tipo de host representa tamaños fijos de asignaciones de recursos garantizadas. Para ver qué tipos de host están disponibles en su región, llame al punto final de capacidad de tipos de host como esto:
curl -X POST https://api.{region}.databases.cloud.ibm.com/v5/ibm/capability/flavors \ -H 'Authorization: Bearer <>' \ -H 'ContentType: application/json' \ -d '{ "deployment": { "type": "mongodb", "location": "us-south" } }'Esto devuelve:
{ "deployment": { "type": "mongodb", "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 MongoDB en la región
us-southson:b3c.4x16.encryptedb3c.8x32.encryptedm3c.8x64.encryptedb3c.16x64.encryptedb3c.32x128.encryptedm3c.30x240.encrypted
Más abajo encontrará más información sobre el parámetro
members_host_flavor. -
Una vez tengas toda la información anterior, 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 <TOKEN>" \ -H 'Content-Type: application/json' \ -d '{ "name": "<INSTANCE_NAME>", "target": "<targeted-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>" } }'Ejemplo
Para crear una instancia de Shared Compute, siga este ejemplo:
curl -X POST \ https://resource-controller.cloud.ibm.com/v2/resource_instances \ -H "Authorization: Bearer <TOKEN>" \ -H 'Content-Type: application/json' \ -d '{ \ "name": "my-instance", \ "target": "us-south", \ "resource_group": "<RESOURCE_GROUP_ID>", \ "resource_plan_id": "databases-for-mongodb-standard", \ "parameters": { "members_host_flavor": "multitenant", "service_endpoints":"private", "members_memory_allocation_mb": 12288, "members_cpu_allocation_count: 4 } \ }' \Aprovisione una instancia Databases for Elasticsearch Isolated con el mismo parámetro
"members_host_flavor", estableciéndolo en el tamaño Isolated deseado. Tamaños de hosting disponibles y susmembers_host_flavor valueLos parámetros se 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 de los miembros 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 de asignación de CPU y RAM independientes.Para desplegar una instancia con 16 GB de RAM y 4 núcleos de CPU en Isolated Compute, consulte el siguiente ejemplo. Asegúrese de sustituir el valor
RESOURCE GROUP IDpor un ID que se encuentre en Gestionar > Cuenta > Grupos de recursos.curl -X POST \ https://resource-controller.cloud.ibm.com/v2/resource_instances -H 'Authorization: Bearer <token>' \ -H 'Content-Type: application/json' \ -d '{ "name": "my-mongo", "target": "eu-gb", "resource_group": "<RESOURCE_GROUP_ID>", "resource_plan_id": "databases-for-mongodb-standard", "parameters": { "members_host_flavor":"b3c.4x16.encrypted"}, "service_endpoints":"private" } \ }' \Los campos del mandato se describen en la tabla siguiente.
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. resource_plan_idRequeridoNombre o ID del servicio. Para Databases for MongoDB, utilice databases-for-mongodb-enterpriseodatabases-for-mongodb-standard.targetRequeridoLa ubicación donde desea desplegar. Para recuperar una lista de regiones, utilice el ibmcloud regionsdominio.resource_groupRequeridoEl nombre del grupo de recursos. El valor predeterminado es default.-g --parametersArchivo JSON o cadena JSON de parámetros para crear la instancia de servicio. Más información -p members_host_flavorPara aprovisionar una instancia de Computación aislada o compartida, use {"members_host_flavor": "<members_host_flavor value>"}. Para Computación compartida, especifiquemultitenant. Para Computación aislada, seleccione la configuración de CPU y RAM que desee. Para obtener más información, consulte la tabla siguiente o Modelos de alojamiento.service_endpointsRequeridos- LosPuntos finales de servicio soportados en su despliegue,publicoprivate.
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, ingrese el valor
apropiado para la configuración de CPU y RAM que desee.
| Sabor anfitrión de los miembros | 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
En el objeto --parameters puedes proporcionar información adicional para crear tu instancia de servicio, incluyendo:
-
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 suministra vacía. -
version: la versión de la base de datos que se va a suministrar. Si se omite, la base de datos se crea con la versión principal y menor más reciente. -
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 sus copias de seguridad, primero debe activar la delegación de servicio a servicio.
-
members_memory_allocation_mb: cantidad total de memoria que se va a compartir entre los miembros de la base de datos dentro de la base de datos. Por ejemplo, si el valor es "12288", y hay tres miembros de la base de datos, entonces el despliegue obtiene 12 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 a ` multitenant '. -
members_disk_allocation_mb: cantidad total de disco que se va 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 a ` multitenant '. -
members_cpu_allocation_count- 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 a ` multitenant '. -
members_allocation_count- El número total de miembros de la base de datos. Este parámetro sólo se aplica a las bases de datos escalables horizontalmente.
Suministro con Terraform
Antes de empezar:
- Instale la CLI de Terraform y el complemento IBM Cloud Provider.
- Asegúrese de que dispone de una IBM Cloud.
Utilice Terraform para gestionar su infraestructura a través de ibm_database Resource for 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 MongoDB.
Seleccione el modelo de alojamiento en el que desea que se suministre la base de datos. Puede cambiarlo más adelante.
Aprovisionamiento de computación aislada con Terraform
Proporcionar un Databases for MongoDB Instancia aislada con el mismo "host_flavor" parámetro, configurá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 tamaños de CPU
y RAM (b3c.4x16.encrypted es 4 CPU y 16 RAM), esta solicitud no acepta ambas, una selección de tamaño aislado y selecciones de asignación de CPU y RAM separadas.
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-mongodb"
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 MongoDB 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 adecuado para la configuración de CPU y RAM que desee. Consulte los valores 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.