Docs Menu
Docs Home
/
Atlas Open Service Broker
/

Implementar un clúster particionado

Importante

Atlas Open Service Broker está obsoleto. Utilice el Operador Atlas de MongoDB en su lugar.

Los clústeres fragmentados proporcionan escalamiento horizontal para grandes conjuntos de datos y permiten operaciones de alto rendimiento al distribuir el conjunto de datos en un grupo de servidores.

Para obtener más información sobre la fragmentación, consulte Introducción a la fragmentación en el manual de MongoDB.

Para implementar un nuevo clúster fragmentado que Atlas pueda administrar, utilice Atlas Open Service Broker y Kubernetes. Tras la implementación, utilice Atlas para agregar fragmentos y realizar otras operaciones de mantenimiento en el clúster.

You create Atlas sharded clusters by defining an object. To deploy a sharded cluster using an Kubernetes object, you must first install the Atlas Open Service Broker.

Atlas Open Service Broker uses the Create a Cluster endpoint of the Atlas API to deploy sharded clusters. Any requirements or limitations of that API also apply to the Atlas Open Service Broker.

1
  1. Copie uno de los siguientes ejemplos de definición de recursos según el alcance de su instancia de Atlas Open Service Broker.

    Si registró la instancia de Atlas Open Service Broker como:

    • A ClusterServiceBroker, select the Cluster-scoped Instance tab.

    • A,ServiceBroker seleccione la pestaña Instancia con ámbito de espacio de nombres.


    Copy the following YAML file, which you can modify to meet your desired configuration:

    1apiVersion: servicecatalog.k8s.io/v1beta1
    2kind: ServiceInstance
    3metadata:
    4 name: <CLUSTER_NAME>
    5 namespace: <NAMESPACE>
    6spec:
    7 clusterServiceClassExternalName: <CLOUD_SERVICE_PROVIDER_CLASS>
    8 clusterServicePlanExternalName: <INSTANCE_SIZE_PLAN>
    9 parameters:
    10 cluster:
    11 numShards: <NUMBER_OF_SHARDS>
    12 providerSettings:
    13 regionName: <ATLAS_REGION>

    Copy the following YAML file, which you can modify to meet your desired configuration:

    1apiVersion: servicecatalog.k8s.io/v1beta1
    2kind: ServiceInstance
    3metadata:
    4 name: <CLUSTER_NAME>
    5 namespace: <NAMESPACE>
    6spec:
    7 serviceClassExternalName: <CLOUD_SERVICE_PROVIDER_CLASS>
    8 servicePlanExternalName: <INSTANCE_SIZE_PLAN>
    9 parameters:
    10 cluster:
    11 numShards: <NUMBER_OF_SHARDS>
    12 providerSettings:
    13 regionName: <ATLAS_REGION>
  2. Abra su editor de texto preferido y pegue la definición del recurso en un nuevo archivo de texto.

2

Para implementar un clúster fragmentado, debe especificar las siguientes configuraciones:

Clave
Descripción
Ejemplo

metadata.name

Nombre del clúster en Kubernetes. Atlas genera aleatoriamente el nombre del clúster correspondiente.

my-atlas-cluster

metadata.namespace

Espacio de nombres de Kubernetes donde se crea este clúster.

atlas

spec.clusterServiceClassExternalName

Clase de Kubernetes que corresponde a su proveedor de servicios en la nube Atlas.

Vea las clases disponibles invocando el siguiente comando:

svcat marketplace -n <NAMESPACE>

Los nombres de clase se enumeran en la columna CLASS de la salida del comando.

mongodb-atlas-aws

spec.clusterServicePlanExternalName

Plan de servicio de Kubernetes que corresponde al tamaño de instancia de Atlas deseado.

Vea los planes disponibles invocando el siguiente comando:

svcat marketplace -n <NAMESPACE>

Los nombres de los planes se enumeran en la columna PLANS de la salida del comando.

M30

spec.parameters.cluster
.numShards

Número de fragmentos en el clúster fragmentado.

3

spec.parameters.cluster
.providerSettings.regionName

Región del Atlas donde se crea el clúster.

Importante

Asegúrese de usar el nombre de la región de Atlas para la región deseada, no el nombre de la región del proveedor de la nube. Asegúrese de que la región seleccionada sea compatible con el tamaño del clúster.

Para obtener una lista de las regiones disponibles, consulte la documentación de Atlas para su proveedor de servicios en la nube:

EU_CENTRAL_1

Clave
Descripción
Ejemplo

metadata.name

Nombre del clúster en Kubernetes. Atlas genera aleatoriamente el nombre del clúster correspondiente.

my-atlas-cluster

metadata.namespace

Espacio de nombres de Kubernetes donde se crea este clúster.

atlas

spec.serviceClassExternalName

Clase de Kubernetes que corresponde a su proveedor de servicios en la nube Atlas.

Vea las clases disponibles invocando el siguiente comando:

svcat marketplace -n <NAMESPACE>

Los nombres de clase se enumeran en la columna CLASS de la salida del comando.

mongodb-atlas-aws

spec.servicePlanExternalName

Plan de servicio de Kubernetes que corresponde al tamaño de instancia de Atlas deseado.

Vea los planes disponibles invocando el siguiente comando:

svcat marketplace -n <NAMESPACE>

Los nombres de los planes se enumeran en la columna PLANS de la salida del comando.

M30

spec.parameters.cluster
.numShards

Número de fragmentos en el clúster fragmentado.

3

spec.parameters.cluster
.providerSettings.regionName

Región del Atlas donde se crea el clúster.

Importante

Asegúrese de usar el nombre de la región de Atlas para la región deseada, no el nombre de la región del proveedor de la nube. Asegúrese de que la región seleccionada sea compatible con el tamaño del clúster.

Para obtener una lista de las regiones disponibles, consulte la documentación de Atlas para su proveedor de servicios en la nube:

EU_CENTRAL_1

3

You can specify additional cluster settings under the spec.parameters.cluster key. These settings correspond to the request body parameters of the Create a Cluster API method.

Importante

Los siguientes parámetros de API se sobrescriben con las configuraciones requeridas de Atlas Open Service Broker del paso anterior y no se deben especificar:

  • providerSettings.instanceSizeName

  • providerSettings.providerName

  • name

Ejemplo

Esta definición de recurso de ejemplo crea un clúster fragmentado llamado my-sharded-cluster en el atlas espacio de nombres que tiene la siguiente configuración:

  • Administrado por un Atlas Open Service Broker con ámbito de clúster (ClusterServiceBroker)

  • AWS como proveedor de servicios en la nube

  • Un tamaño de instancia de M30

  • Compuesto por tres particiones

  • Ubicado en la región de la UE (Frankfurt)

  • Escalado automático deshabilitado

  • Instantáneas de proveedor de nube Atlas habilitadas

apiVersion: servicecatalog.k8s.io/v1beta1
kind: ServiceInstance
metadata:
name: my-sharded-cluster
namespace: atlas
spec:
clusterServiceClassExternalName: mongodb-atlas-aws
clusterServicePlanExternalName: M30
parameters:
cluster:
numShards: 3
providerSettings:
regionName: EU_CENTRAL_1
autoscaling:
diskGBEnabled: false
providerBackupEnabled: true

Ejemplo

Esta definición de recurso de ejemplo crea un clúster fragmentado llamado my-sharded-cluster en el atlas espacio de nombres que tiene la siguiente configuración:

  • Administrado por un Atlas Open Service Broker con ámbito de espacio de nombres (ServiceBroker)

  • AWS como proveedor de servicios en la nube

  • Un tamaño de instancia de M30

  • Compuesto por tres particiones

  • Ubicado en la región de la UE (Frankfurt)

  • Escalado automático deshabilitado

  • Instantáneas de proveedor de nube Atlas habilitadas

apiVersion: servicecatalog.k8s.io/v1beta1
kind: ServiceInstance
metadata:
name: my-sharded-cluster
namespace: atlas
spec:
serviceClassExternalName: mongodb-atlas-aws
servicePlanExternalName: M30
parameters:
cluster:
numShards: 3
providerSettings:
regionName: EU_CENTRAL_1
autoscaling:
diskGBEnabled: false
providerBackupEnabled: true
4
5

Invoque el siguiente comando de Kubernetes para crear su clúster fragmentado:

kubectl apply -f sharded-cluster.yaml
6

Para ver el estado de su implementación, pase metadata.name de sharded-cluster.yaml al siguiente comando:

svcat describe instance <METADATA.NAME> -n <NAMESPACE>

A medida que se implementa el clúster fragmentado, el comando devuelve el siguiente estado:

Provisioning - The instance is being provisioned asynchronously

Una vez que el clúster fragmentado se implementa correctamente, el comando devuelve el siguiente estado:

Ready - The instance was provisioned successfully

Volver

Implementar un set de réplicas

En esta página