El recurso personalizado AtlasDeployment configura su clúster de MongoDB o instancia de Serverless en Atlas. Al crear el recurso personalizado AtlasDeployment, el operador de Kubernetes de Atlas intenta crear o actualizar un clúster o una instancia de Serverless en Atlas.
Importante
Acción necesaria para realizar cambios importantes con el operador Atlas Kubernetes 2.0
Con el operador 2.0 de Atlas Kubernetes,
deploymentSpecreemplaza aadvancedDeploymentSpecen el recurso personalizadoAtlasDeployment. Debe actualizar su recurso personalizadoAtlasDeploymentde la siguiente manera:Si usa
advancedDeploymentSpec, renómbrelo adeploymentSpec. No necesita cambiar el formato.Si utilizó
deploymentSpecantes del operador Atlas Kubernetes,2.0 reescriba suAtlasDeploymentrecurso personalizado para que coincida con el formato utilizado en los ejemplos.
El operador de Kubernetes de Atlas utiliza Archivos de configuración de recursos personalizados para administrar la configuración de Atlas. A partir del Operador de 2.0 Kubernetes de Atlas, los recursos personalizados que elimine en Kubernetes ya no se eliminan en Atlas. En su lugar, el Operador de Kubernetes de Atlas simplemente deja de administrarlos. Por ejemplo, si elimina un
AtlasProjectRecurso Personalizado en Kubernetes, el Operador de Kubernetes de Atlas ya no elimina automáticamente el proyecto correspondiente de Atlas, lo que evita eliminaciones accidentales o inesperadas. Para obtener más información, incluido cómo revertir este comportamiento al valor predeterminado utilizado antes 2 del0 Operador de Kubernetes de Atlas.,2 0consulte Nuevo valor predeterminado: Protección contra eliminación en el Operador de Kubernetes de Atlas..
El operador Atlas Kubernetes realiza una de las siguientes acciones según los valores que especifique en el recurso personalizado AtlasDeployment:
Si especifica valores para los campos
spec.deploymentSpecen, Atlas Kubernetes Operator utiliza el recurso de API de clústeres de Atlas para crear un nuevo clúster o actualizar uno existente.Si especifica valores para los campos
spec.serverlessSpecen, Atlas Kubernetes Operator utiliza el recurso de API de instancia de Atlas Serverless para crear una nueva instancia de Serverless o actualizar una instancia de Serverless existente.
La creación de un clúster Atlas de nivel gratuito lleva menos de 15 segundos.
Crear o actualizar un clúster Flex o un clúster Dedicado puede tardar hasta 10 minutos. Atlas Kubernetes Operator supervisa el proceso de actualización.
Puede ejecutar el siguiente comando para comprobar el estado:
kubectl get atlasdeployment -o yaml
El siguiente ejemplo muestra la sección de estado de un clúster que se está aprovisionando:
status: conditions: - lastTransitionTime: "2021-03-18T16:32:43Z" status: "False" type: ClusterReady reason: ClusterCreating message: Cluster is provisioning
El estado ClusterReady cambiará a True cuando el clúster o la instancia sin servidor estén listos.
Ejemplos
Ejemplo de estado
El siguiente ejemplo muestra el recurso AtlasDeployment con un estado ClusterReady de True:
apiVersion: atlas.mongodb.com/v1 kind: AtlasDeployment metadata: name: my-atlas-cluster namespace: mongodb-atlas-system spec: projectRef: name: my-project deploymentSpec: name: test-cluster tags: - key: "environment" value: "production" replicationSpecs: - zoneName: US-Zone numShards: 3 regionConfigs: - regionName: CENTRAL_US providerName: GCP backingProviderName: GCP priority: 7 electableSpecs: instanceSize: M10 nodeCount: 3 status: conditions: - lastTransitionTime: "2021-03-18T16:32:43Z" status: "True" type: Ready - lastTransitionTime: "2021-03-18T16:32:43Z" status: "True" type: ClusterReady connectionStrings: standard: mongodb://test-cluster-shard-00-00.kpc8f.mongodb.net:27017,test-cluster-shard-00-01.kpc8f.mongodb.net:27017,test-cluster-shard-00-02.kpc8f.mongodb.net:27017/?ssl=true&authSource=admin&replicaSet=atlas-1gm1pv-shard-0 standardSrv: mongodb+srv://test-cluster.kpc8f.mongodb.net mongoDBVersion: 6.0 mongoURIUpdated: "2021-03-12T12:21:41Z" observedGeneration: 1 stateName: IDLE
Ejemplo de configuración
El siguiente ejemplo muestra una especificación de recurso personalizada AtlasDeployment configurada para escalar automáticamente clústeres multirregionales:
apiVersion: atlas.mongodb.com/v1 kind: AtlasDeployment metadata: name: test-cluster-name namespace: mongodb-atlas-system spec: projectRef: name: development deploymentSpec: clusterType: REPLICASET name: service-name tags: - key: "environment" value: "production" backupEnabled: true replicationSpecs: - numShards: 1 regionConfigs: - regionName: EASTERN_US providerName: GCP autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40 analyticsSpecs: instanceSize: M30 nodeCount: 1 electableSpecs: instanceSize: M30 nodeCount: 3 priority: 7 readOnlySpecs: instanceSize: M30 nodeCount: 1
Ejemplo de opciones adicionales
El siguiente ejemplo muestra una AtlasDeployment especificación de recurso personalizada configurada con algunas de las opciones adicionales.
apiVersion: atlas.mongodb.com/v1 kind: AtlasDeployment metadata: name: my-atlas-cluster spec: projectRef: name: my-project deploymentSpec: name: test-cluster tags: - key: "environment" value: "production" replicationSpecs: - zoneName: Zone 1 regionConfigs: - electableSpecs: instanceSize: M10 nodeCount: 3 providerName: AWS regionName: US_EAST_1 priority: 7 processArgs: javascriptEnabled: false
Ejemplo de instancia sin servidor
El siguiente ejemplo muestra una especificación de recurso personalizada AtlasDeployment configurada para una instancia sin servidor:
apiVersion: atlas.mongodb.com/v1 kind: AtlasDeployment metadata: name: test-cluster-name namespace: mongodb-atlas-system spec: projectRef: name: development serverlessSpec: name: serverless-instance tags: - key: "environment" value: "production" providerSettings: providerName: AWS regionName: US_EAST_1
Ejemplo de clúster multirregional
Los clústeres pueden abarcar regiones y proveedores de servicios en la nube. Para obtener más información, consulte Consideraciones.
Nota
Mientras que el recurso API del clúster Atlas envía solicitudes mediante el v1.5 Atlas Versiones de la API: el campo Operador de Atlas Kubernetes apiVersion v1usa. En este caso, v1 se refiere a la versión de la API de Kubernetes.
El siguiente ejemplo muestra una especificación de recurso personalizada AtlasDeployment configurada para clústeres multirregionales:
apiVersion: atlas.mongodb.com/v1 kind: AtlasDeployment metadata: name: my-atlas-cluster spec: projectRef: name: my-project deploymentSpec: clusterType: REPLICASET name: tenantCluster tags: - key: "environment" value: "production" replicationSpecs: - zoneName: Zone 1 regionConfigs: priority: 7 - electableSpecs: instanceSize: M10 nodeCount: 3 providerName: AWS regionName: US_EAST_1
Ejemplo de múltiples proveedores de servicios en la nube
El siguiente ejemplo muestra una especificación de recurso personalizada AtlasDeployment configurada para abarcar múltiples proveedores de servicios en la nube:
apiVersion: atlas.mongodb.com/v1 kind: AtlasDeployment metadata: name: my-atlas-cluster spec: projectRef: name: my-project deploymentSpec: clusterType: REPLICASET name: tenantCluster tags: - key: "environment" value: "production" replicationSpecs: - regionConfigs: - electableSpecs: instanceSize: M10 nodeCount: 3 providerName: AWS regionName: US_EAST_1 priority: 7 - electableSpecs: instanceSize: M10 nodeCount: 2 providerName: AZURE regionName: US_EAST_2 priority: 6 - electableSpecs: instanceSize: M10 nodeCount: 2 providerName: GCP regionName: CENTRAL_US priority: 5
Ejemplo de índice de búsqueda
El siguiente ejemplo muestra una especificación de recurso personalizada AtlasDeployment configurada para crear un índice de búsqueda para la colección listingsAndReviews y grades:
apiVersion: atlas.mongodb.com/v1 kind: AtlasDeployment metadata: name: my-atlas-cluster namespace: mongodb-atlas-system spec: deploymentSpec: backupEnabled: true clusterType: REPLICASET name: Test-cluster-M10 replicationSpecs: - regionConfigs: - backingProviderName: AWS electableSpecs: instanceSize: M10 nodeCount: 3 priority: 7 providerName: AWS regionName: US_EAST_1 zoneName: Zone 1 searchIndexes: - DBName: sample_training collectionName: grades name: test-vector-search-index type: vectorSearch vectorSearch: fields: - numDimensions: 1000 path: student_id similarity: euclidean type: vector - DBName: sample_airbnb collectionName: listingsAndReviews name: my-index search: mappings: dynamic: true searchConfigurationRef: name: atlassearchindexconfig-sample namespace: mongodb-atlas-system type: search terminationProtectionEnabled: false projectRef: name: my-project namespace: mongodb-atlas-system
Ejemplo de nodos de búsqueda
El siguiente ejemplo muestra una especificación de recurso personalizada AtlasDeployment configurada para crear nodos de búsqueda:
apiVersion: atlas.mongodb.com/v1 kind: AtlasDeployment metadata: name: my-atlas-cluster namespace: mongodb-atlas-system spec: deploymentSpec: backupEnabled: true clusterType: REPLICASET name: Test-cluster-M10 replicationSpecs: - regionConfigs: - backingProviderName: AWS electableSpecs: instanceSize: M10 nodeCount: 3 priority: 7 providerName: AWS regionName: US_EAST_1 zoneName: Zone 1 searchNodes: - instanceSize: S20_HIGHCPU_NVME nodeCount: 2
Parámetros
Esta sección describe algunos de los parámetros clave de recursos personalizados de AtlasDeployment disponibles.
Para obtener una lista completa de los parámetros disponibles para los clústeres, consulte la API de clústeres de Atlas.
Para obtener una lista completa de los parámetros disponibles para instancias sin servidor, consulte la API de instancias sin servidor de Atlas.
Para personalizar sus especificaciones, consulte estas descripciones, los ejemplos disponibles y la documentación de la API.
spec.backupRefTipo: objeto
Opcional
Lista que contiene los detalles del
AtlasBackupSchedulerecurso personalizado que desea aplicar. Puede especificar una programación de copia de seguridad por clúster.
spec.backupRef.nameTipo: string
Opcional
metadata.nameValor dentro del recursoAtlasBackupSchedulepersonalizado para la programación de copias de seguridad que desea aplicar. Puede especificar solo una programación de copias de seguridad por clúster, pero puede usar la misma programación para varios clústeres.Si omites este parámetro, Atlas no aplicará la configuración de tu copia de seguridad a este clúster.
spec.backupRef.namespaceTipo: string
Opcional
Cadena que indica el espacio de nombres que contiene el recurso
AtlasBackupSchedulepersonalizado para la programación de copia de seguridad que desea aplicar.
spec.connectionSecret.nameTipo: string
Condicional
Nombre del secreto opacoQue contiene el ID de la organización y las claves API que Atlas Kubernetes Operator utiliza para conectarse a Atlas. Si no se especifica, Atlas Kubernetes Operator recurre a:
El parámetro
spec.connectionSecretRef.namedel padreatlasProjectEl secreto predeterminado
global, sispec.connectionSecretRef.nameno está definido para el padreatlasProject
Este parámetro es obligatorio para los CRD independientes.
El operador Atlas Kubernetes solo observa secretos con la etiqueta
atlas.mongodb.com/type=credentialspara evitar observar secretos innecesarios.El siguiente ejemplo etiqueta un secreto:
kubectl label secret the-user-password atlas.mongodb.com/type=credentials
spec.deploymentSpecTipo: arreglo
Condicional
Lista que contiene los parámetros del clúster de la API. Para obtener una lista completa de los parámetros disponibles, consulte la API de clústeres de Atlas.
Importante
Debe especificar
spec.deploymentSpecospec.serverlessSpecen su configuración.
spec.deploymentSpec.clusterTypeTipo: string
Condicional
Etiqueta legible por humanos que identifica el tipo de clúster a crear.
¿Cuándo se debe utilizar este parámetro?
CondiciónNecesidadConfigura
spec.deploymentSpec.replicationSpecs.Requerido
Estás implementando clústeres globales.
Requerido
Está implementando conjuntos de réplicas no globales y clústeres fragmentados.
Opcional
Atlas acepta:
ValorTipo de clústerRÉPLICASET
set de réplicas
FRAGUADO
clúster fragmentado
GEOSHARDED
spec.deploymentSpec.customZoneMappingTipo: arreglo
Requerido
Lista que contiene parámetros de clúster global que asignan zonas a regiones geográficas. Para obtener una lista completa de los parámetros disponibles, consulte la API de clústeres globales de Atlas.
spec.deploymentSpec.customZoneMapping.locationTipo: string
Requerido
Código que representa una ubicación que se asigna a una zona de su clúster global.
spec.deploymentSpec.customZoneMapping.zoneTipo: string
Requerido
Etiqueta legible por humanos que identifica la zona en su clúster global.
spec.deploymentSpec.diskSizeGBTipo: número
Opcional
Capacidad, en gigabytes, que indica el volumen raíz del host. Aumente este número para añadir capacidad, hasta un valor máximo posible de
4096(4 TB). Debe especificar un número positivo para este valor.No se puede establecer este valor para clústeres con SSD NVMe locales.
Nota
Si habilita el escalado automático para
diskGBen cualquier región, no podrá editar esta opción. Para obtener más información,spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.diskGB.enabledconsulte.El tamaño mínimo de disco para clústeres dedicados es de 10 GB para AWS y Google Cloud. Si especifica esta configuración con un tamaño de disco menor, Atlas utilizará el valor mínimo de disco de forma predeterminada.
Si su implementación de base de datos incluye nodos de Azure, este valor debe corresponder a un tipo de disco de Azure existente (,,,,,,,,8 16326412825651210242048 4096o).
Atlas calcula los cargos de almacenamiento de manera diferente dependiendo de si elige el valor predeterminado o un valor personalizado.
Atlas tiene límites de capacidad de disco en conjuntos de réplicas individuales, que se pueden escalar hasta 4 TB para niveles de clúster superiores. Para ampliar el almacenamiento total del clúster más allá de los límites predeterminados, puede habilitar el almacenamiento extendido en la configuración del proyecto. Para permitir un mayor escalamiento en el futuro, le recomendamos habilitar la fragmentación para la expansión a largo plazo.
Si la implementación de su base de datos abarca proveedores de servicios en la nube, este valor predeterminado es el valor mínimo predeterminado de los proveedores involucrados.
Para obtener más información, consulte Capacidad de almacenamiento.
spec.deploymentSpec.encryptionAtRestProviderTipo: string
Opcional
Proveedor de servicios en la nube que administra la clave de cliente para este clúster. Debe configurar este valor para habilitar el cifrado en reposo mediante claves administradas por el cliente para este clúster, lo que proporciona una capa adicional de cifrado. Para obtener más información, consulte Cifrar datos mediante un servicio de administración de claves.
Atlas acepta los siguientes valores:
ValorProveedor de nubeAWS
Amazon AWS
GCP
Google Cloud
AZUR
Microsoft Azure
NINGUNO
Sin proveedor; el clúster no cifra datos utilizando claves administradas por el cliente.
spec.deploymentSpec.managedNamespacesTipo: arreglo
Requerido
Lista que contiene información para crear un espacio de nombres administrado en un clúster global específico. Para obtener una lista completa de los parámetros disponibles, consulte la API de clústeres globales de Atlas.
spec.deploymentSpec.managedNamespaces.collectionTipo: string
Requerido
Etiqueta legible por humanos de la colección a gestionar en este Clúster Global.
spec.deploymentSpec.managedNamespaces.dbTipo: string
Requerido
Etiqueta legible por humanos de la base de datos que se administrará en este Clúster Global.
spec.deploymentSpec.managedNamespaces.isCustomShardKeyHashedTipo: booleano
Opcional
Indicador que indica si se debe aplicar un hash a la clave de fragmento personalizada para la colección especificada. Este parámetro tiene el valor predeterminado
false.Establezca en
truepara habilitar una clave de fragmento personalizada para la colección.Establézcalo en
falsepara deshabilitar una clave de fragmento personalizada para la colección. Si está deshabilitada, MongoDB usa fragmentación por rango.
Para obtener más información, consulte Claves de fragmentos con hash.
spec.deploymentSpec.managedNamespaces.isCustomShardKeyUniqueTipo: booleano
Opcional
Indicador que indica si la clave de fragmento personalizada de la colección especificada es única. Este parámetro tiene el valor predeterminado
false.Establezca en
truepara habilitar una clave de fragmento personalizada única para la colección.Establezca en
falsepara deshabilitar una clave de fragmento personalizada única para la colección.
spec.deploymentSpec.managedNamespaces.numInitialChunksTipo: entero
Opcional
Número mínimo de fragmentos a crear inicialmente al fragmentar una colección vacía con una clave de fragmento con hash.
Para obtener más información, consulte Fragmentar una colección global.
spec.deploymentSpec.managedNamespaces.presplitHashedZonesTipo: booleano
Opcional
Indicador que indica si MongoDB Cloud debe crear y distribuir fragmentos iniciales para una colección vacía o inexistente. Este parámetro tiene el valor predeterminado
false.Establezca en
truepara que MongoDB Cloud cree y distribuya fragmentos iniciales para una colección vacía o inexistente.Establezca en
falsepara que MongoDB Cloud no cree ni distribuya fragmentos iniciales para una colección vacía o inexistente.
spec.deploymentSpec.mongoDBMajorVersionTipo: string
Opcional
Versión del clúster que se va a implementar. Atlas admite las siguientes versiones de MongoDB para los clústeres
M10+:5.0
6.0
7.0
8.0
Las siguientes condiciones producen los siguientes resultados:
CondiciónResultadoOmite este parámetro y omite el
spec.deploymentSpec.versionReleaseSystemparámetro.Atlas implementa un clúster que ejecuta MongoDB 7.0.
Omite este parámetro y establece el
spec.deploymentSpec.versionReleaseSystemparámetroLTSen.Atlas implementa un clúster que ejecuta MongoDB 7.0.
Establece el
spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSizeparámetroM0en,M2M5o.Debe implementar MongoDB 7.0.
Usted especifica este parámetro.
Atlas siempre implementa el clúster con la última versión del parche estable de la versión especificada.
Establece el parámetro
spec.deploymentSpec.versionReleaseSystemen.CONTINUOUSDebes omitir este parámetro.
spec.deploymentSpec.pitEnabledTipo: booleano
Condicional
Configuración que permite la copia de seguridad continua en la nube. Para habilitarla, debe especificar
trueen esta configuración.
spec.deploymentSpec.replicationSpecsTipo: matriz de objetos
Condicional
Lista que contiene las configuraciones para las regiones de tu clúster. Use este parámetro para clústeres multiregionales. Debe configurar
spec.deploymentSpec.replicationSpecs.regionConfigs.regionNameospec.deploymentSpec.replicationSpecs.¿Cuándo se debe utilizar este parámetro?
CondiciónNecesidadValuesEstás implementando clústeres globales.
Requerido
Cada objeto de la matriz representa una zona donde Atlas implementa los nodos de su clúster.
Está implementando conjuntos de réplicas no globales y clústeres fragmentados.
Opcional
Este arreglo contiene un objeto que representa donde Atlas implementa los nodos de tu clúster.
Si especifica este parámetro, también debe especificar
spec.deploymentSpec.clusterTypespec.deploymentSpec.replicationSpecs.numShardsy.
spec.deploymentSpec.replicationSpecs.numShardsTipo: entero
Condicional
Entero positivo que especifica la cantidad de fragmentos a implementar para un clúster fragmentado.
Si utiliza el parámetro, debe configurar este
spec.deploymentSpec.replicationSpecsparámetro.Atlas acepta valores de
1a50, ambos inclusive. El valor predeterminado es1.Si especifica un valor de
1yspec.deploymentSpec.clusterTypeestableceSHARDEDen, Atlas implementa un clúster fragmentado de un solo fragmento.Si especifica
1yspec.deploymentSpec.clusterTypeestableceREPLICASETen, Atlas implementa un conjunto de réplicas.No se debe crear un clúster particionado con una única partición para entornos de producción. Los clústeres particionados de una sola partición no ofrecen los mismos beneficios que las configuraciones multipartición.
Advertencia
Al usar un clúster fragmentado, MongoDB requiere que sus aplicaciones se conecten a una
mongosinstancia para garantizar que interactúen correctamente con los fragmentos y otros componentes del clúster. Si migra de un conjunto de réplicas a un clúster fragmentado, sus aplicaciones deben reiniciarse para habilitar la conexión con la instancia delmongosclúster. Por lo tanto, la API de administración de Atlas impide migrar un conjunto de réplicas directamente a un clúster fragmentado con más de un fragmento. Después de migrar correctamente su conjunto de réplicas a un clúster de un solo fragmento y restablecer las conexiones de sus aplicaciones, puede agregar fragmentos adicionales al clúster.
spec.deploymentSpec.replicationSpecs.regionConfigsTipo: arreglo
Requerido
Especificaciones de hardware para los nodos definidos para una región determinada. Cada objeto
regionConfigsdescribe la prioridad de la región en las elecciones, así como la cantidad y el tipo de nodos MongoDB que Atlas implementa en ella.Cada objeto
regionConfigsdebe tener un objetoanalyticsSpecs, un objetoelectableSpecso un objetoreadOnlySpecs.M0Los clústeresM2,M5o solo requierenelectableSpecs.Los clústeres dedicados pueden especificar cualquiera de estas especificaciones, pero deben tener al menos un objeto
electableSpecsdentro de unreplicationSpec.Cada especificación de hardware debe utilizar el mismo
instanceSize.
spec.deploymentSpec.replicationSpecs.regionConfigs.analyticsSpecsTipo: objeto
Opcional
Especificaciones de hardware para los nodos de análisis necesarios en la región. Los nodos de análisis gestionan datos analíticos, como consultas de informes de BI Connector for Atlas. Son de solo lectura y nunca pueden convertirse en el nodo principal.
Si no especifica este parámetro, Atlas no implementará ningún análisis en esta región.
spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.diskGB.enabledTipo: booleano
Opcional
Indicador que indica si esta implementación de base de datos habilita el escalado automático de discos. Este parámetro tiene el valor predeterminado
true.Establezca en
truepara habilitar el escalamiento automático del disco.Establezca en
falsepara deshabilitar el escalamiento automático del disco.
La cantidad máxima de RAM para el nivel de clúster seleccionado y el tamaño del registro de operaciones pueden limitar el escalado automático del almacenamiento. Para obtener más información, consulte Personalizar el almacenamiento.
spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabledTipo: booleano
Opcional
Indicador que indica si el escalado automático del tamaño de instancia está habilitado. Este parámetro tiene el valor predeterminado
false.Establezca
truepara habilitar el escalado automático del tamaño de la instancia. Si está habilitado, debe especificar un valorspec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSizepara.Establezca en
falsepara deshabilitar el escalamiento automático del tamaño de la instancia.
spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSizeTipo: string
Condicional
Cadena que indica el tamaño máximo de instancia al que se puede escalar automáticamente la implementación de la base de datos (por
M40ejemplo,). Debe especificar este parámetro sispec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabledestablecetrueen.Nota
Si establece un tamaño de instancia máximo menor que el tamaño de instancia actual de la implementación de la base de datos con el escalado automático habilitado, Atlas escala automáticamente el tamaño de instancia actual al valor máximo que especifique.
Por ejemplo, si el tamaño de instancia actual de la implementación de la base de datos es
M40y usted establece el tamaño máximo de instancia enM30, Atlas escala automáticamente el tamaño de instancia actual aM30.Si Atlas cambia el tamaño de la instancia actual y usted no cambia
spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSizeen Atlas Kubernetes Operator para que coincida con el nuevo tamaño de instancia, Atlas Kubernetes Operator muestra una advertencia en los registros, pero no impide el escalado automático.
spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSizeTipo: string
Condicional
String que indica el tamaño mínimo de instancia al que tu implementación de la base de datos puede escalar automáticamente (como
M10). Debes especificar este parámetro si configurasspec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabledentrue.Nota
Si establece un tamaño de instancia mínimo mayor que el tamaño de instancia actual de la implementación de la base de datos con el escalado automático habilitado, Atlas escala automáticamente el tamaño de instancia actual al valor mínimo que especifique.
Por ejemplo, si el tamaño de instancia actual de la implementación de la base de datos es
M10y usted establece el tamaño de instancia mínimo enM30, Atlas escala automáticamente el tamaño de instancia actual aM30.Si Atlas cambia el tamaño de la instancia actual y usted no cambia
spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSizeen Atlas Kubernetes Operator para que coincida con el nuevo tamaño de instancia, Atlas Kubernetes Operator muestra una advertencia en los registros, pero no impide el escalado automático.
spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecsTipo: objeto
Opcional
Especificaciones de hardware para nodos elegibles en la región. Los nodos elegibles pueden convertirse en los principales y habilitar lecturas locales.
Si no especifica esta opción, Atlas no implementará ningún nodo elegible en la región.
spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSizeTipo: string
Condicional
Especificación de hardware para los tamaños de instancia en esta región. Cada tamaño de instancia tiene una capacidad de almacenamiento y memoria predeterminada. El tamaño de instancia que seleccione se aplica a todos los hosts que contienen datos en su tamaño de instancia. Para obtener más información, consulte los tamaños de almacenamiento personalizados de AWS, GCP y Azure.
Si implementa un clúster fragmentado o un clúster global, debe elegir un tamaño de instancia de
M30o mayor.Si cambia el nombre del tamaño de la instancia después de implementar el clúster, Atlas cambiará la implementación de la base de datos al tamaño de instancia que especifique, a menos que esté fuera del rango especificado
spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSizeen yspec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSizecon el escalado automático habilitado. Para obtener más información, consultespec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSizespec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSizey.Nota
Si tiene habilitado el escalado automático para el campo de cálculo, no podrá editar esta opción. Para obtener más información,
spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabledconsulte.Nota
Puedes cambiar esta configuración para actualizar un
M0,M2,M5o clúster Flex a un clústerM10+. Sin embargo, no se puede actualizar un clústerM0,M2,M5`, or Flex cluster to another free or shared cluster. For example, you can't upgrade an ``M0a un clúster Flex.
spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.nodeCountTipo: entero
Condicional
Número de nodos elegibles que Atlas puede implementar en la región. Los nodos elegibles pueden convertirse en los principales y habilitar lecturas locales.
El total combinado de
electableSpecs.nodeCountentre todos los objetosreplicationSpecs.regionConfigsdebe sumar3,5o7.No se pueden crear nodos elegibles
spec.deploymentSpec.replicationSpecs.regionConfigs.prioritysi0es.
spec.deploymentSpec.replicationSpecs.regionConfigs.priorityTipo: entero
Requerido
Se da prioridad a esta región cuando se realizan elecciones primarias.
Si su
regionConfigssolo tienereadOnlySpecs,analyticsSpecso ambos, configure este valor en0.Si tiene varios objetos
regionConfigs(su clúster es multirregión o multinube), deben tener prioridades en orden descendente. La prioridad más alta es7.Ejemplo
Establezca su región de mayor prioridad en
7, su segunda prioridad en6y su tercera prioridad en5. Si no tiene nodos elegibles, establezca este valor en0.Si su región ha establecido
electableSpecs.nodeCounten1o superior, debe tener una prioridad exactamente igual a una región menor que otra en lareplicationSpecs.regionConfigsmatriz, a menos que sea la principal. La región con mayor prioridad debe tener una prioridad7de. La prioridad más baja posible1es.La
7región de prioridad identifica la región preferida del clúster. Atlas coloca el nodo principal en la región preferida. Las prioridades1a7son excluyentes: no se puede asignar una prioridad determinada a más de una región por clúster.Ejemplo
Si tiene tres regiones, sus prioridades serían
7,6y5, respectivamente. Si añadiera dos regiones más para admitir nodos elegibles, sus prioridades serían4y3, respectivamente.
spec.deploymentSpec.replicationSpecs.regionConfigs.providerNameTipo: string
Condicional
Proveedor de servicios en la nube en el que Atlas aprovisiona los hosts.
AWS
Amazon AWS
GCP
Google Cloud Platform
AZUR
Microsoft Azure
spec.deploymentSpec.replicationSpecs.regionConfigs.regionNameTipo: string
Condicional
Ubicación física de su clúster de MongoDB. La región que elija puede afectar la latencia de red de los clientes que acceden a sus bases de datos.
Para obtener una lista completa de los valores de los nombres de las regiones, consulte las páginas de referencia del proveedor de la nube:
Para clústeres multirregionales, consulte. Debe
spec.deploymentSpec.replicationSpecsconfigurarspec.deploymentSpec.replicationSpecs.regionConfigs.regionNamespec.deploymentSpec.replicationSpecso.
spec.deploymentSpec.replicationSpecs.regionConfigs.readOnlySpecsTipo: objeto
Opcional
Especificaciones de hardware para nodos de solo lectura en la región. Los nodos de solo lectura nunca pueden convertirse en el miembro principal, pero pueden habilitar lecturas locales.
Si no especifica este parámetro, Atlas no implementará ningún nodo de solo lectura en la región.
spec.deploymentSpec.replicationSpecs.zoneNameTipo: string
Opcional
Etiqueta legible que identifica la zona en un clúster global. Proporcione este valor solo si
spec.deploymentSpec.clusterTypeestableceGEOSHARDEDen.
spec.deploymentSpec.searchIndexesTipo: arreglo
Opcional
Una matriz de
SearchIndexobjetos con campos que describen el índice de búsqueda. Cada objetoSearchIndexcontiene los siguientes campos:CampoTipoDescripciónnamestring
Etiqueta legible que identifica este índice. Debe ser única para una implementación.
DBNamestring
Etiqueta legible por humanos que identifica la base de datos existente que contiene la colección con uno o más índices de Atlas Search.
IMPORTANTE: La base de datos que especifique debe existir previamente. Si notiene una, cree una.
collectionNamestring
Etiqueta legible por humanos que identifica la colección que contiene uno o más índices de Atlas Search.
typestring
Tipo de índice. Atlas acepta los siguientes valores:
searchvectorSearch
searchObjeto
Debe incluir este objeto si
typeessearch. De lo contrario, omítalo.vectorSearchObjeto
Debe incluir este objeto si
typeesvectorSearch. De lo contrario, omítalo.
spec.deploymentSpec.searchIndexes.searchTipo: objeto
Opcional
CampoTipoDescripciónsynonymsarreglo
Conjuntos de reglas que asignan palabras a sus sinónimos en este índice
mappingsObjeto
Especificaciones de índice para los campos de la colección
Requerido
searchConfigurationRefObjeto
Una referencia de nombre/espacio de nombres al recurso personalizado AtlasSearchIndexConfig, que se describe a continuación.
Requerido
spec.deploymentSpec.searchIndexes.search.synonymsTipo: arreglo
Opcional
Una matriz de
Synonymobjetos con campos que describen conjuntos de reglas que asignan palabras a sus sinónimos en este índice. Cada objetoSynonymcontiene los siguientes campos:CampoTipoDescripciónnamestring
Etiqueta legible que identifica la definición del sinónimo. Cada nombre debe ser único dentro de la misma definición del índice.
Requerido
analyzerstring
Método específico predefinido seleccionado para aplicar a los sinónimos que se buscarán. Los valores posibles son:
lucene.estándar
lucene.estándar
lucene.simple
lucene.whitespace
lucene.keyword
lucene.arabic
lucene.armenio
lucene.basque
lucene.bengalí
lucene.brasileño
lucene.búlgaro
lucene.catalán
lucene.chino
lucene.cjk
lucene.checo
lucene.danés
lucene.dutch
lucene.inglés
lucene.finnish
lucene.francés
lucene.gallego
lucene.alemán
lucene.griego
lucene.hindi
lucene.húngaro
lucene.indonesio
lucene.irlandés
lucene.italiano
lucene.japonés
lucene.korean
lucene.kuromoji
lucene.letón
lucene.lituano
lucene.morfologik
lucene.nori
lucene.noruego
lucene.persa
lucene.portugués
lucene.rumano
lucene.ruso
lucene.smartcn
lucene.sorani
lucene.español
lucene.sueco
lucene.thai
lucene.turco
lucene.ucraniano
Requerido
sourceObjeto
Conjunto de datos que almacena la correspondencia entre una o más palabras y uno o más sinónimos de esas palabras.
Requerido
spec.deploymentSpec.searchIndexes.search.synonyms.sourceTipo: objeto
Requerido
CampoTipoDescripcióncollectionstring
Etiqueta legible por humanos que identifica la colección de MongoDB que almacena palabras y sus sinónimos aplicables
Requerido
spec.deploymentSpec.searchIndexes.search.mappingsTipo: objeto
Requerido
Un objeto con especificaciones de índice para los campos de la colección:
dynamicbooleanoIndicador que indica si el índice utiliza asignaciones dinámicas o estáticas. Obligatorio si se omite mappings.fields.fieldsJSON/YAML
Una o más especificaciones de campo para el índice de búsqueda de Atlas. Obligatorio si mappings.dynamic se omite o se establece como falso.
spec.deploymentSpec.searchIndexes.vectorSearchTipo: objeto
Opcional
CampoTipoDescripciónfieldsJSON/YAML
Matriz de objetos JSON. Ver ejemplos en https://dochub.mongodb.org/core/avs-vector-type
Requerido
spec.deploymentSpec.searchNodesTipo: arreglo
Opcional
Una matriz de configuraciones de nodos de búsqueda. Cada elemento contiene dos campos:
CampoTipoDescripciónnodeCountentero
Número de nodos de búsqueda en el clúster. Atlas acepta valores de 2 a 32, ambos inclusive. El valor predeterminado es
2.instanceSizestring
Especificación de hardware para el tamaño de las instancias de nodo de búsqueda. Atlas acepta una de las siguientes opciones:
S20_HIGHCPU_NVMES30_HIGHCPU_NVMES40_HIGHCPU_NVMES50_HIGHCPU_NVMES60_HIGHCPU_NVMES70_HIGHCPU_NVMES80_HIGHCPU_NVMES30_LOWCPU_NVMES40_LOWCPU_NVMES50_LOWCPU_NVMES60_LOWCPU_NVMES80_LOWCPU_NVMES90_LOWCPU_NVMES100_LOWCPU_NVME
El tamaño de instancia predeterminado es
S20_HIGHCPU_NVME.
spec.deploymentSpec.tagsTipo: arreglo
Opcional
Lista que contiene etiquetas (pares clave-valor) para comprender, organizar e identificar mejor las implementaciones de bases de datos. Para obtener más información, consulte Etiquetas en clústeres.
spec.deploymentSpec.versionReleaseSystemTipo: string
Condicional
Cadencia de lanzamiento que Atlas utiliza para este clúster. Atlas acepta:
CONTINUOUSAtlas crea su clúster con la versión más reciente de MongoDB. Atlas actualiza automáticamente su clúster con las últimas versiones principales y rápidas de MongoDB a medida que están disponibles.LTSAtlas crea su clúster con la última versión de parche de MongoDB que especifique en elspec.deploymentSpec.mongoDBMajorVersionparámetro. Atlas actualiza automáticamente su clúster con las siguientes versiones de parche de esta versión de MongoDB. Atlas no actualiza su clúster con las nuevas versiones rápidas o principales de MongoDB a medida que estén disponibles.Si se omite, es por defecto
LTS.Si establece este parámetro en,
CONTINUOUSdebe omitir elspec.deploymentSpec.mongoDBMajorVersionparámetro.
spec.externalProjectRef.idTipo: string
Condicional
ID del proyecto al que pertenece la implementación. Debe especificar el ID de proyecto de un proyecto Atlas existente. Este parámetro es obligatorio para las implementaciones que pertenecen a proyectos gestionados por:
Una instancia diferente de Atlas Kubernetes Operator
Herramientas distintas a Atlas Kubernetes Operator
Para las implementaciones que pertenecen a proyectos administrados por la misma instancia de Atlas Kubernetes Operator, use
spec.projectRef.namesi no usaspec.externalProjectRef.id.
spec.processArgsTipo: objeto
Opcional
Objeto que contiene las opciones de configuración adicionales para su clúster.
spec.processArgs.defaultReadConcernTipo: string
Opcional
Cadena que indica el nivel predeterminado de reconocimiento solicitado a MongoDB para las operaciones de lectura establecidas para este clúster.
Los 5.0 clústeres MongoDB tienen como valor predeterminado ser locales.
spec.processArgs.defaultWriteConcernTipo: string
Opcional
Cadena que indica el nivel predeterminado de reconocimiento solicitado a MongoDB para las operaciones de escritura establecidas para este clúster.
Las versiones y posteriores de MongoDB tienen como valor predeterminado 5.0 la mayoría de los clústeres.
spec.processArgs.failIndexKeyTooLongTipo: booleano
Opcional
Marca que indica si se debe fallar la operación y devolver un error al insertar o actualizar documentos cuyas entradas indexadas superen 1024 bytes. Si se establece
falseen, escribe los documentosmongodque superen este límite, pero no los indexa.Esta opción corresponde al
param.failIndexKeyTooLongmongodparámetro.
spec.processArgs.javascriptEnabledTipo: booleano
Opcional
Bandera que indica si el clúster permite la ejecución de operaciones que realizan ejecuciones de JavaScript del lado del servidor.
Esta opción corresponde a modificar la
security.javascriptEnabledopción del archivo de configuración para cadamongody en elmongosclúster.
spec.processArgs.minimumEnabledTlsProtocolTipo: entero
Opcional
Cadena que indica la versión mínima de TLS que el clúster acepta para las conexiones entrantes. Los clústeres que usan TLS 1.0 o 1.1 deberían considerar configurar 1TLS.2 como la versión mínima del protocolo TLS.
Para aprender más, consulte ¿Qué versiones de TLS admite Atlas?.
Esta opción corresponde a la
net.ssl.disabledProtocolsmongodopción del archivo de configuración.
spec.processArgs.noTableScanTipo: booleano
Opcional
Bandera que indica si el clúster deshabilita la ejecución de cualquier consulta que requiera un escaneo de colección para devolver resultados.
Esta opción corresponde al
notablescanmongodparámetro.
spec.processArgs.oplogSizeMBTipo: entero
Opcional
Número que indica el límite de almacenamiento del registro de operaciones de un clúster, expresado en megabytes. Un valor de
nullindica que el clúster utiliza el tamaño predeterminado del registro de operaciones calculado por Atlas.Esta opción corresponde a la
replication.oplogSizeMBmongodopción del archivo de configuración.
spec.processArgs.sampleRefreshIntervalBIConnectorTipo: entero
Opcional
Número que indica los documentos por base de datos a muestrear al momento de recopilar información del esquema.
Este parámetro corresponde a la opción sampleSize mongosqld.
spec.processArgs.sampleSizeBIConnectorTipo: entero
Opcional
Número que indica el intervalo en segundos en el que el proceso mongosqld vuelve a muestrear los datos para crear su esquema relacional.
Este parámetro corresponde a la opción mongosqld sampleRefreshIntervalSecs.
spec.projectRef.nameTipo: string
Condicional
Nombre del proyecto al que pertenece la implementación. Debe especificar un recurso personalizado existente. Este parámetro solo se aplica a las implementaciones que pertenecen a proyectos administrados por la misma instancia del operador de Kubernetes de
AtlasProjectAtlas.Para implementaciones que pertenecen a proyectos administrados por:
una instancia diferente de Atlas Kubernetes Operator
herramientas distintas de Atlas Kubernetes Operator
utilice
spec.externalProjectRef.id.
spec.serverlessSpecTipo: arreglo
Condicional
Lista que contiene los parámetros de instancia sin servidor de la API. Para obtener una lista completa de los parámetros disponibles, consulte la API de instancias sin servidor de Atlas.
Importante
Debe especificar
spec.deploymentSpecospec.serverlessSpecen su configuración.
spec.serverlessSpec.privateEndpointsTipo: arreglo
Opcional
Lista que contiene las configuraciones de puntos finales privados para la instancia Serverless.
spec.serverlessSpec.providerSettingsTipo: Objeto
Condicional
Configuración que especifica la configuración de los hosts aprovisionados donde se ejecuta MongoDB. Las opciones disponibles son específicas del proveedor de servicios en la nube. Para obtener más información, consulte las opciones de configuración de instancias de AWS, GCP y Azure Serverless.
Si desea crear o actualizar una instancia sin servidor, debe especificar esta configuración.
Importante
Las siguientes configuraciones están obsoletas y se eliminarán en una versión futura:
spec.serverlessSpec.providerSettings.DiskIOPSspec.serverlessSpec.providerSettings.DiskTypeNamespec.serverlessSpec.providerSettings.EncryptEBSVolumespec.serverlessSpec.providerSettings.InstanceSizeNamespec.serverlessSpec.providerSettings.VolumeTypespec.serverlessSpec.providerSettings.AutoScaling
Proporcionar valores para cualquiera de estas configuraciones no tiene ningún efecto.
spec.serverlessSpec.providerSettings.providerNameTipo: string
Condicional
Proveedor de servicios en la nube en el que Atlas aprovisiona el host para una instancia sin servidor.
Atlas acepta los siguientes valores:
AWS
Amazon AWS
GCP
Google Cloud Platform
AZUR
Microsoft Azure
spec.serverlessSpec.providerSettings.regionNameTipo: string
Condicional
Ubicación física de su instancia de MongoDB Serverless. La región que elija puede afectar la latencia de red para los clientes que acceden a sus bases de datos.
Para obtener una lista completa de los valores de los nombres de las regiones, consulte las páginas de referencia del proveedor de la nube:
spec.serverlessSpec.tagsTipo: arreglo
Opcional
Lista que contiene etiquetas (pares clave-valor) para comprender, organizar e identificar mejor las implementaciones de bases de datos. Para obtener más información, consulte Etiquetas en clústeres.
status.connectionStringsTipo: arreglo
Requerido
Lista que contiene las URL de conexión para acceder al clúster. Este parámetro aparece después de crear o actualizar un clúster.
Nota
No se puede usar una URL de conexión directamente. Los clústeres de Atlas requieren autenticación. Debe crear al menos un
AtlasDatabaseUserrecurso personalizado para que la aplicación de su clúster de Kubernetes pueda conectarse a él. El operador de Kubernetes de Atlas crea un secreto especial para cada combinación de clúster y usuario de base de datos del proyecto. La aplicación de su clúster de Kubernetes puede usar este secreto para conectarse al clúster de Atlas. Elspec.scopesparámetro delAtlasDatabaseUserrecurso personalizado restringe los clústeres que crean el usuario de base de datos.
Para conocer los parámetros de configuración disponibles para un clúster desde la API, consulte la API de clústeres Atlas.
Nota
Los siguientes parámetros están obsoletos en la API de Atlas y el Atlas Kubernetes Operator no los admite:
replicationSpecreplicationFactor