Menu Docs
Página inicial do Docs
/ /
Kubernetes Operator do MongoDB Atlas
/

AtlasDeployment Recurso personalizado

Nesta página

  • Exemplos
  • Exemplo de status
  • Exemplo de configuração
  • Exemplo de opções adicionais
  • Exemplo de instância sem servidor
  • Exemplo de cluster multirregional
  • Exemplo de vários provedores de serviços em cloud
  • Exemplo de índice Atlas Search
  • Exemplo de nós Atlas Search
  • Parâmetros

O recurso personalizado AtlasDeployment configura seu MongoDB cluster ou instância sem servidor no Atlas. Quando você cria o recurso personalizado AtlasDeployment , o Atlas Kubernetes Operator tenta criar ou atualizar um cluster ou instância sem servidor no Atlas.

Importante

ação necessária para alteração interruptiva com o Atlas Kubernetes Operator 2.0

  • Com o Atlas Kubernetes Operator 2.0, deploymentSpec substitui advancedDeploymentSpec no AtlasDeployment recurso personalizado. Você deve atualizar seu recurso personalizado do AtlasDeployment como segue:

    • Se você usar advancedDeploymentSpec, renomeie-o para deploymentSpec. Você não precisa alterar nenhuma formatação.

    • Se você usava deploymentSpec antes do Atlas Kubernetes Operator 2.0, reescreva seu AtlasDeployment recurso personalizado para corresponder à formatação usada nos exemplos.

  • O Atlas Kubernetes Operator usa arquivos de configuração derecurso personalizado para gerenciar sua configuração do Atlas . A partir do Atlas Kubernetes Operator 2.0, os recursos personalizados que você exclui no Kubernetes não são mais excluídos no Atlas. Em vez disso, o Atlas Kubernetes Operator simplesmente para de gerenciar estes recursos. Por exemplo, se você excluir um AtlasProject Recurso Personalizado em Kubernetes, o Atlas Kubernetes Operator não excluirá mais automaticamente o projeto correspondente do Atlas, evitando exclusões acidentais ou inesperadas. Para saber mais, incluindo como reverter este comportamento para o padrão utilizado antes do Atlas Kubernetes Operator 2.0, consulte Novo padrão: proteção de exclusão no Atlas Kubernetes Operator 2.0.

O Atlas Kubernetes Operator realiza uma das seguintes ação, dependendo dos valores que você especificar no recurso personalizado AtlasDeployment :

  • Se você especificar valores para campos em spec.deploymentSpec, o Atlas Kubernetes Operator utilizará o Recurso da API Atlas Clusters para criar um novo cluster ou atualizar um cluster existente.

  • Se você especificar valores para os campos em spec.serverlessSpec, o Atlas Kubernetes Operator utilizará o Recurso da API de Instância sem Servidor do Atlas para criar uma nova instância sem servidor ou atualizar uma instância sem servidor existente.

Criar ou atualizar um cluster ou uma instância sem servidor pode levar até 10 minutos. O Atlas Kubernetes Operator monitora o processo de atualização.

Você pode executar o seguinte comando para verificar o status:

kubectl get atlasdeployment -o yaml

O exemplo a seguir mostra a seção de status de um cluster que está provisionando:

status:
conditions:
- lastTransitionTime: "2021-03-18T16:32:43Z"
status: "False"
type: ClusterReady
reason: ClusterCreating
message: Cluster is provisioning

O status ClusterReady mudará para True quando o cluster ou a instância sem servidor estiver pronto.

O exemplo a seguir mostra o recurso AtlasDeployment com um status 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

O exemplo a seguir mostra uma especificação de recurso personalizada AtlasDeployment configurada para dimensionamento automático de cluster multirregional:

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

O exemplo a seguir mostra uma especificação de recurso personalizado AtlasDeployment configurada com algumas das opções adicionais.

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

O exemplo a seguir mostra uma especificação de recurso personalizada AtlasDeployment configurada para uma instância sem 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

Os clusters podem abranger regiões e provedores de serviços em nuvem. Para saber mais, consulte Considerações.

Observação

Enquanto o Atlas Cluster API Resource envia solicitações usando as versões daAPI v1.5 do Atlas , o campo Atlas Kubernetes Operator apiVersion usa v1. Nesse caso, v1 refere-se à versão da API do Kubernetes.

O exemplo seguinte mostra uma especificação de recurso personalizada do AtlasDeployment configurada para cluster multirregional:

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

O exemplo a seguir mostra uma especificação de recurso personalizada AtlasDeployment configurada para abranger vários provedores de serviços de cloud:

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

O exemplo seguinte mostra uma especificação de recurso personalizado AtlasDeployment configurada para criar um índice de Atlas Search para a coleção listingsAndReviews e 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

O exemplo seguinte mostra uma especificação de recurso personalizado do AtlasDeployment configurada para criar nós de Atlas Search :

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

Esta seção descreve alguns dos principais parâmetros de recursos personalizados AtlasDeployment disponíveis.

Para personalizar suas especificações, consulte estas descrições, os exemplos disponíveis e a documentação da API .

spec.backupRef

Tipo: objeto

Opcional

Lista que contém os detalhes do Recurso PersonalizadoAtlasBackupSchedule que você deseja aplicar. Você pode especificar um agendamento de backup por cluster.

spec.backupRef.name

Tipo: string

Opcional

metadata.name valor dentro do Recurso PersonalizadoAtlasBackupSchedule para o agendamento de backup que você deseja aplicar. Você pode especificar apenas um agendamento de backup por cluster, mas pode usar o mesmo agendamento de backup para vários clusters.

Se você omitir este parâmetro, o Atlas não aplicará sua configuração de cópia de segurança a este cluster.

spec.backupRef.namespace

Tipo: string

Opcional

String que indica o namespace que contém o Recurso PersonalizadoAtlasBackupSchedule para o agendamento de backup que você deseja aplicar.

spec.deploymentSpec

Tipo: array

Condicional

Lista que contém os parâmetros do cluster da API. Para obter uma lista completa dos parâmetros disponíveis, consulte a APIdo Atlas API.

Importante

Você deve especificar spec.deploymentSpec ou spec.serverlessSpec em sua configuração.

spec.deploymentSpec.clusterType

Tipo: string

Condicional

Etiqueta legível para humanos que identifica o tipo de cluster a ser criado.

Quando você deve usar esse parâmetro?

Condição
necessidade
Obrigatório
Você está implantando clusters globais.
Obrigatório
Você está implementando conjuntos de réplicas não globais e clusters fragmentados.
Opcional

Atlas aceita:

Valor
Tipo de cluster
Conjunto de réplicas
Conjunto de réplicas
Fragmentado
cluster fragmentado
Geofragmentado
spec.deploymentSpec.customZoneMapping

Tipo: array

Obrigatório

Lista que contém parâmetros do Cluster Global que mapeia zonas para regiões geográficas. Para obter uma lista completa dos parâmetros disponíveis, consulte a Atlas API Clusters.

spec.deploymentSpec.customZoneMapping.location

Tipo: string

Obrigatório

Código que representa um local mapeado para uma zona no seu cluster global.

spec.deploymentSpec.customZoneMapping.zone

Tipo: string

Obrigatório

Etiqueta legível para humanos que identifica a zona em seu cluster global.

spec.deploymentSpec.diskSizeGB

Tipo: número

Opcional

Capacidade, em gigabytes, que indica o volume raiz do host. Aumente esse número para adicionar capacidade, até um valor máximo possível de 4096 (4 TB). Você deve especificar um número positivo para esse valor.

Não é possível definir esse valor para clusters com SSDs NVMe locais.

Observação

Se você ativar o autoscaling para diskGB em qualquer região, não poderá editar esta opção. Para saber mais, consulte spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.diskGB.enabled.

O tamanho mínimo do disco para clusters dedicados é de 10 GB para AWS e Google Cloud. Se você especificar essa configuração com um tamanho de disco menor, o Atlas assumirá como padrão o valor mínimo do tamanho do disco.

Se o comando de banco de dados incluir nós Azure, esse valor deverá corresponder a um tipo de disco Azure existente (8, 16, 32, 64, 128, 256, 512, 1024, 2048 ou 4096).

O Atlas calcula as cobranças de armazenamento de forma diferente, dependendo se você escolher o valor padrão ou um valor personalizado.

O Atlas tem limites de capacidade de disco em conjuntos de réplicas únicas, podendo escalar até 4 TB para camadas de cluster mais altas. Para expandir o armazenamento total do cluster além dos limites padrão, você pode habilitar o armazenamento estendido nas Configurações do projeto. Para acomodar maior escalabilidade no futuro, recomendamos que você habilite a fragmentação para expansão de longo prazo.

Se o seu comando de banco de dados abranger provedores de serviços de cloud, esse valor assumirá como padrão o padrão mínimo dos provedores envolvidos.

Para saber mais, consulte Capacidade de armazenamento.

spec.deploymentSpec.encryptionAtRestProvider

Tipo: string

Opcional

Provedor de serviços de cloud que managed a chave do cliente para esse cluster. Você deve definir esse valor para habilitar a criptografia em descanso usando chaves managed pelo cliente para esse cluster, que fornece uma camada adicional de criptografia. Para saber mais, consulte Criptografar dados usando um serviço de gerenciamento de chaves.

O Atlas aceita os seguintes valores:

Valor
Provedor de nuvem
AWS
Amazon AWS
GCP
Google cloud
AZURE
Microsoft Azure
none
Sem fornecedor, o cluster não criptografa dados usando chaves gerenciadas pelo consumidor.
spec.deploymentSpec.managedNamespaces

Tipo: array

Obrigatório

Lista que contém informações para criar um namespace gerenciado em um cluster global especificado a ser criado. Para obter uma lista completa dos parâmetros disponíveis, consulte a Atlas API Clusters.

spec.deploymentSpec.managedNamespaces.collection

Tipo: string

Obrigatório

Rótulo legível por humanos da coleção a ser gerenciada neste cluster global.

spec.deploymentSpec.managedNamespaces.db

Tipo: string

Obrigatório

Etiqueta legível para humanos do banco de banco de dados a ser gerenciado neste cluster global.

spec.deploymentSpec.managedNamespaces.isCustomShardKeyHashed

Tipo: booleano

Opcional

Sinalizador que indica se o hash da chave de shard personalizada deve ser feito para a collection especificada. Este parâmetro é padronizado como false.

  • Defina como true para habilitar uma chave de shard personalizada para a collection.

  • Defina como false para desativar uma chave de shard personalizada para a coleção. Se diabled, o MongoDB usa sharding à distância.

Para saber mais, consulte Hashed Shard Keys.

spec.deploymentSpec.managedNamespaces.isCustomShardKeyUnique

Tipo: booleano

Opcional

Sinalizador que indica se a chave de shard personalizada para a collection especificada é exclusiva. Este parâmetro é padronizado como false.

  • Defina como true para habilitar uma chave de shard personalizada exclusiva para a collection.

  • Defina como false para desabilitar uma chave de shard personalizada exclusiva para a collection.

spec.deploymentSpec.managedNamespaces.numInitialChunks

Tipo: inteiro

Opcional

Número mínimo de chunks a serem criados inicialmente ao fragmentar uma coleção vazia com uma chave fragmentada com hash.

Para saber mais, consulte Shard a Global Collection.

spec.deploymentSpec.managedNamespaces.presplitHashedZones

Tipo: booleano

Opcional

Sinalizador que indica se o MongoDB cloud deve criar e distribuir partes iniciais para uma collection vazia ou inexistente. Este parâmetro é padronizado como false.

  • Defina como true para que o MongoDB cloud crie e distribua partes iniciais para uma collection vazia ou inexistente.

  • Defina como false para que o MongoDB cloud não crie e distribua partes iniciais para uma collection vazia ou inexistente.

spec.deploymentSpec.mongoDBMajorVersion

Tipo: string

Opcional

Versão do cluster a ser implementada. O Atlas suporta as seguintes versões MongoDB para clusters do M10+ :

  • 5.0

  • 6.0

  • 7.0

As seguintes condições produzem os seguintes resultados:

Condição
Resultado
Você omite este parâmetro e omite o parâmetro spec.deploymentSpec.versionReleaseSystem .
O Atlas implementa um cluster que executa o MongoDB 7.0.
Você omite este parâmetro e define o parâmetro spec.deploymentSpec.versionReleaseSystem como LTS.
O Atlas implementa um cluster que executa o MongoDB 7.0.
Você deve distribuir o MongoDB 7.0.
Você especifica este parâmetro.
O Atlas sempre implementa o cluster com a versão de patch estável mais recente da versão especificada.
Você define o parâmetro spec.deploymentSpec.versionReleaseSystem como CONTINUOUS.
Você deve omitir este parâmetro.
spec.deploymentSpec.pitEnabled

Tipo: booleano

Condicional

Configuração que habilita o backup em cloud contínuo. Para habilitar o backup em cloud contínuo, você deve especificar true para esta configuração.

spec.deploymentSpec.replicationSpecs

Tipo : array de objetos

Condicional

Lista que contém as configurações para suas regiões de cluster. Use esse parâmetro para clusters multirregionais. Você deve definir spec.deploymentSpec.replicationSpecs.regionConfigs.regionName ou spec.deploymentSpec.replicationSpecs.

Quando você deve usar esse parâmetro?

Condição
necessidade
Values
Você está implantando clusters globais.
Obrigatório
Cada objeto na array representa uma zona onde o Atlas implanta os nós do seu cluster.
Você está implementando conjuntos de réplicas não globais e clusters fragmentados.
Opcional
Essa array tem um objeto que representa onde o Atlas distribui os nós do cluster.

Se você especificar este parâmetro, você também deverá especificar spec.deploymentSpec.clusterType e spec.deploymentSpec.replicationSpecs.numShards.

spec.deploymentSpec.replicationSpecs.numShards

Tipo: inteiro

Condicional

Número inteiro positivo que especifica o número de fragmentos a serem distribuídos para um cluster fragmentado.

Se você utilizar o parâmetro spec.deploymentSpec.replicationSpecs , você deverá configurar este parâmetro.

O Atlas aceita de 1 a 50, inclusive. O valor padrão é 1.

  • Se você especificar um valor de 1 e definir spec.deploymentSpec.clusterType como SHARDED, o Atlas implantará um cluster fragmentado fragmentado de fragmento único.

  • Se você especificar 1 e configurar spec.deploymentSpec.clusterType para REPLICASET, o Atlas implantará um conjunto de réplicas.

    Não crie um cluster fragmentado com um único fragmento para ambientes de produção. Os clusters de fragmentos únicos não fornecem os mesmos benefícios que as configurações de vários fragmentos.

    Dica

    Veja também:

Observação

Para garantir a distribuição consistente de dados, você não pode aumentar o número de shards na mesma solicitação de atualização ao atualizar seu cluster de um conjunto de réplicas para um cluster fragmentado. Você pode adicionar shards adicionais quando seu cluster tiver sido atualizado e você tiver garantido que todos os clientes tenham se reconectado ao roteador do MongoDB.

spec.deploymentSpec.replicationSpecs.regionConfigs

Tipo: array

Obrigatório

Especificações de hardware para nós definidos para uma determinada região. Cada objeto regionConfigs descreve a prioridade da região nas eleições e o número e tipo de nós do MongoDB que o Atlas implementa na região.

Cada objeto regionConfigs deve ter um objeto analyticsSpecs , um objeto electableSpecs ou um objeto readOnlySpecs .

  • M0, M2 ou clusters M5 exigem apenas electableSpecs.

  • O cluster dedicado pode especificar qualquer uma dessas especificações, mas deve ter pelo menos um objeto electableSpecs dentro de um replicationSpec.

  • Toda especificação de hardware deve usar o mesmo instanceSize.

spec.deploymentSpec.replicationSpecs.regionConfigs.analyticsSpecs

Tipo: objeto

Opcional

Especificações de hardware para nós de analítica necessários na região. Os nós de analítica lidam com dados analíticos, como reportar queries do BI Connector for Atlas. Os nós de analítica são somente para leitura e nunca podem se tornar os primary.

Se você não especificar este parâmetro, o Atlas não implantará nenhuma analítica para esta região.

spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.diskGB.enabled

Tipo: booleano

Opcional

Sinalizador que indica se o comando de banco de dados permite o dimensionamento automático de disco. Este parâmetro é padronizado como true.

  • Defina como true para ativar o dimensionamento automático do disco.

  • Defina como false para desabilitar o dimensionamento automático do disco.

A quantidade máxima de RAM para a camada do cluster selecionada e o tamanho do oplog podem limitar o auto-scaling de armazenamento. Para saber mais, consulte Personalizar seu armazenamento.

spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabled

Tipo: booleano

Opcional

Sinalizador que indica se o autoscaling do tamanho da instância está habilitado. Este parâmetro é padronizado como false.

spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize

Tipo: string

Condicional

string que indica o tamanho máximo da instância para a qual o sistema de banco de dados pode ser dimensionado automaticamente (como M40). Você deve especificar este parâmetro se você configurar o spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabled para true.

Observação

Se você definir um tamanho máximo de instância menor que o tamanho de instância atual do comando de banco de dados com o autoscaling ativado, o Atlas dimensionará automaticamente o tamanho atual da instância para o valor máximo especificado.

Por exemplo, se o tamanho da instância atual do comando de banco de dados for M40 e você definir o tamanho máximo da instância como M30, o Atlas escalará automaticamente o tamanho da instância atual para M30.

Se o Atlas alterar o tamanho da instância atual e você não alterar o spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSize no Atlas Kubernetes Operator para corresponder ao novo tamanho da instância, o Atlas Kubernetes Operator exibirá um aviso nos registros, mas não impedirá o escalonamento automático.

spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSize

Tipo: string

Condicional

string que indica o tamanho mínimo da instância para a qual o sistema de banco de dados pode ser dimensionado automaticamente (como M10). Você deve especificar este parâmetro se você configurar o spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabled para true.

Observação

Se você definir um tamanho mínimo de instância maior que o tamanho de instância atual do comando de banco de dados com o autoscaling ativado, o Atlas dimensionará automaticamente o tamanho atual da instância para o valor mínimo especificado.

Por exemplo, se o tamanho da instância atual do comando de banco de dados for M10 e você definir o tamanho mínimo da instância como M30, o Atlas escalará automaticamente o tamanho da instância atual para M30.

Se o Atlas alterar o tamanho da instância atual e você não alterar o spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSize no Atlas Kubernetes Operator para corresponder ao novo tamanho da instância, o Atlas Kubernetes Operator exibirá um aviso nos registros, mas não impedirá o escalonamento automático.

spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs

Tipo: objeto

Opcional

Especificações de hardware para nós elegíveis na região. Os nós elegíveis podem se tornar o primary e podem habilitar leituras locais.

Se você não especificar esta opção, o Atlas não implantará nós elegíveis na região.

spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSize

Tipo: string

Condicional

Especificação de hardware para os tamanhos de instância nesta região. Cada tamanho de instância tem uma capacidade de armazenamento e memória padrão. O tamanho da instância selecionado se aplica a todos os hosts portadores de dados no tamanho da instância. Para saber mais, consulte os tamanhos de armazenamento personalizados da Amazon Web Services, GCP e Azure .

Se você implantar um cluster fragmentado ou cluster global, deverá escolher um tamanho de instância de M30 ou superior.

Se você alterar o nome do tamanho da instância após distribuir o cluster, o Atlas alterará o sistema de banco de dados para o tamanho da instância especificado, a menos que ele esteja fora do intervalo especificado em spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSize e spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize com o dimensionamento automático ativado. Para saber mais, consulte spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSize e spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize.

Observação

Se você tiver o autoscaling habilitado para o campo de computação, não poderá editar esta opção. Para saber mais, consulte spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabled.

Observação

Você pode alterar essa configuração para atualizar um cluster M0, M2 ou M5 para um cluster M10+ . No entanto, você não pode atualizar um cluster M0, M2 ou M5 para outro cluster compartilhado ou gratuito. Por exemplo, você não pode atualizar um cluster M0 para um cluster M5 .

spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.nodeCount

Tipo: inteiro

Condicional

Número de nós elegíveis para o Atlas implantar na região. Os nós elegíveis podem se tornar o primary e podem habilitar leituras locais.

O electableSpecs.nodeCount combinado em todos os objetos replicationSpecs.regionConfigs deve totalizar 3 , 5 ou 7 .

Não é possível criar nós elegíveis se spec.deploymentSpec.replicationSpecs.regionConfigs.priority for 0.

spec.deploymentSpec.replicationSpecs.regionConfigs.priority

Tipo: inteiro

Obrigatório

A precedência é dada a essa região quando ocorre uma eleição do primário.

Se o seu regionConfigs tiver apenas readOnlySpecs, analyticsSpecs ou ambos, defina este valor como 0.

Se você tiver vários objeto regionConfigs (seu cluster é multirregional ou cloud), eles deverão ter prioridade em ordem decrescente. A maior prioridade é 7.

Exemplo

Defina sua região de maior prioridade como 7, sua segunda maior prioridade como 6 e sua região de terceira prioridade como 5. Se você não tiver nós elegíveis, defina esse valor como 0.

Se sua região definiu electableSpecs.nodeCount como 1 ou superior, ela deverá ter uma prioridade de exatamente um a menos do que outra região na array replicationSpecs.regionConfigs , a menos que seja a primary. A região de maior prioridade deve ter uma prioridade de 7. A prioridade mais baixa possível é 1 .

A região de prioridade 7 identifica a Região Preferencial do cluster. O Atlas coloca o nó primário na região preferencial. As prioridades 1 a 7 são exclusivas: não é possível atribuir uma determinada prioridade a mais de uma região por cluster.

Exemplo

Se você tiver três regiões, suas prioridades serão 7, 6 e 5 respectivamente. Se você adicionasse mais duas regiões para apoiar nós elegíveis, as prioridades dessas regiões seriam 4 e 3 , respectivamente.

spec.deploymentSpec.replicationSpecs.regionConfigs.providerName

Tipo: string

Condicional

Fornecedor de serviços de cloud no qual o Atlas provisiona os hosts.

AWS
Amazon AWS
GCP
Google Cloud Platform
AZURE
Microsoft Azure
spec.deploymentSpec.replicationSpecs.regionConfigs.regionName

Tipo: string

Condicional

Localização física do cluster MongoDB. A região que você escolhe pode afetar a latência de rede para clientes que acessam os bancos de dados.

Para obter uma lista completa dos valores de nome de região, consulte as páginas de referência do fornecedor de serviços em nuvem:

Para agrupamentos de múltiplas regiões, consulte spec.deploymentSpec.replicationSpecs. Você deve definir spec.deploymentSpec.replicationSpecs.regionConfigs.regionName ou spec.deploymentSpec.replicationSpecs.

spec.deploymentSpec.replicationSpecs.regionConfigs.readOnlySpecs

Tipo: objeto

Opcional

Especificações de hardware para nós somente leitura na região. O nó somente leitura nunca pode se tornar o membro primary, mas pode habilitar leituras locais.

Se você não especificar este parâmetro, o Atlas não implantará nós somente leitura na região.

spec.deploymentSpec.replicationSpecs.zoneName

Tipo: string

Opcional

Rótulo legível por humanos que identifica a zona em um cluster global. Forneça esse valor somente se você definir spec.deploymentSpec.clusterType como GEOSHARDED.

spec.deploymentSpec.searchIndexes

Tipo: array

Opcional

Uma array de SearchIndex objetos com campos que descrevem o índice do Atlas Search . Cada objeto SearchIndex contém os seguintes campos:

Campo
Tipo
Descrição
name
string
Rótulo legível por humanos que identifica este índice. Deve ser exclusivo para um sistema.
DBName
string

Rótulo legível por humanos que identifica o banco de dados existente que contém a collection com um ou mais índices do Atlas Search.

IMPORTANTE: o banco de dados de dados que você especifica já deve existir. Se você não tiver um banco de banco de dados existente, crie um.

collectionName
string
Rótulo legível por humanos que identifica a coleção que contém um ou mais índices do Atlas Search.
type
string

Tipo de índice. O Atlas aceita os seguintes valores:

  • search

  • vectorSearch

search
objeto
Você deve incluir este objeto se type for search. Caso contrário, omita.
vectorSearch
objeto
Você deve incluir este objeto se type for vectorSearch. Caso contrário, omita.
spec.deploymentSpec.searchIndexes.search

Tipo: objeto

Opcional

Campo
Tipo
Descrição
synonyms
array
Conjuntos de regras que mapeiam palavras em relação a seus sinônimos neste índice
mappings
objeto

Especificações de índice para os campos da collection

Obrigatório

searchConfigurationRef
objeto

Uma referência de nome/namespace ao recurso personalizado AtlasSearchIndexConfig, descrito abaixo.

Obrigatório

spec.deploymentSpec.searchIndexes.search.synonyms

Tipo: array

Opcional

Uma array de objetos Synonym com campos que descrevem conjuntos de regras que mapeiam palavras até seus sinônimos neste índice. Cada objeto Synonym contém os seguintes campos:

Campo
Tipo
Descrição
name
string

Rótulo legível por humanos que identifica a definição de sinônimo. Cada nome deve ser exclusivo dentro da mesma definição de índice

Obrigatório

analyzer
string

Método pré-definido específico escolhido para aplicar aos sinônimos a serem pesquisados. Os valores possíveis são:

  • lucene.standard

  • lucene.standard

  • lucene.simple

  • lucene.whitespace

  • lucene.keyword

  • lucene.arabic

  • lucene.armenian

  • lucene.basque

  • lucene.bengali

  • lucene.brazilian

  • lucene.bulgarian

  • lucene.catalan

  • lucene.chinese

  • lucene.cjk

  • lucene.czech

  • lucene.danish

  • lucene.dutch

  • lucene.english

  • lucene.finnish

  • lucene.french

  • lucene.galician

  • lucene.german

  • lucene.greek

  • lucene.hindi

  • lucene.hungarian

  • lucene.indonesian

  • lucene.irish

  • lucene.italian

  • lucene.japanese

  • lucene.korean

  • lucene.kuromoji

  • lucene.latvian

  • lucene.lithuanian

  • lucene.morfologik

  • lucene.nori

  • lucene.norwegian

  • lucene.persian

  • lucene.portuguese

  • lucene.romanian

  • lucene.russian

  • lucene.smartcn

  • lucene.sorani

  • lucene.spanish

  • lucene.swedish

  • lucene.thai

  • lucene.turkish

  • lucene.ukrainian

Obrigatório

source
objeto

Conjunto de dados que armazena o mapeamento de uma ou mais palavras para um ou mais sinônimos dessas palavras

Obrigatório

spec.deploymentSpec.searchIndexes.search.synonyms.source

Tipo: objeto

Obrigatório

Campo
Tipo
Descrição
collection
string

Etiqueta legível por humanos que identifica a collection MongoDB que armazena palavras e seus sinônimos aplicáveis

Obrigatório

spec.deploymentSpec.searchIndexes.search.mappings

Tipo: objeto

Obrigatório

Um objeto com especificações de Índice para os campos da coleção:

dynamic
booleano
Sinalizador que indica se o índice utiliza mapeamentos dinâmicos ou estáticos. Obrigatório se maps.fields for omitido.
fields
JSON/YAML
Uma ou mais especificações de campo para o índice do Atlas Search. Obrigatório se mapeamentos.dynamic for omitido ou definido como falso.
spec.deploymentSpec.searchIndexes.vectorSearch

Tipo: objeto

Opcional

spec.deploymentSpec.searchNodes

Tipo: array

Opcional

Uma array de configurações de nós do Atlas Search . Cada elemento contém dois campos:

Campo
Tipo
Descrição
nodeCount
inteiro
Número de nós do Atlas Search no cluster. O Atlas aceita valores de 2 a 32, inclusive. O número padrão é 2.
instanceSize
string

Especificação de hardware para os tamanhos de instância de nó do Atlas Search . O Atlas aceita uma das seguintes opções:

  • S20_HIGHCPU_NVME

  • S30_HIGHCPU_NVME

  • S40_HIGHCPU_NVME

  • S50_HIGHCPU_NVME

  • S60_HIGHCPU_NVME

  • S70_HIGHCPU_NVME

  • S80_HIGHCPU_NVME

  • S30_LOWCPU_NVME

  • S40_LOWCPU_NVME

  • S50_LOWCPU_NVME

  • S60_LOWCPU_NVME

  • S80_LOWCPU_NVME

  • S90_LOWCPU_NVME

  • S100_LOWCPU_NVME

O tamanho da instância padrão é S20_HIGHCPU_NVME.

spec.deploymentSpec.tags

Tipo: array

Opcional

Lista que contém tags (pares chave-valor) para entender, organizar e identificar melhor seus sistemas de banco de dados. Para saber mais, consulte Marcações em clusters.

spec.deploymentSpec.versionReleaseSystem

Tipo: string

Condicional

Cadência de liberação que o Atlas usa para esse cluster. Atlas aceita:

  • CONTINUOUS: o Atlas cria seu cluster usando a versão mais recente do MongoDB. O Atlas atualiza automaticamente seu cluster para as versões principais e rápidas mais recentes do MongoDB à medida que elas são disponibilizadas.

  • LTS: o Atlas cria seu cluster usando a versão de patch mais recente da versão MongoDB que você especifica no parâmetro spec.deploymentSpec.mongoDBMajorVersion . O Atlas atualiza automaticamente seu cluster para versões de patch subsequentes desta versão do MongoDB. O Atlas não atualiza seu cluster para as versões rápidas ou principais mais recentes do MongoDB à medida que elas são disponibilizadas.

    Se omitido, o padrão é LTS.

    Se você definir este parâmetro como CONTINUOUS, deverá omitir o parâmetro spec.deploymentSpec.mongoDBMajorVersion .

spec.processArgs

Tipo: objeto

Opcional

Objeto que contém as opções de configuração adicionais para seu cluster.

spec.processArgs.defaultReadConcern

Tipo: string

Opcional

string que indica o nível padrão de confirmação solicitado do MongoDB para operações de leitura definidas para o cluster.

Os clusters MongoDB 5.0 são padronizados como locais.

spec.processArgs.defaultWriteConcern

Tipo: string

Opcional

string que indica o nível padrão de confirmação solicitado do MongoDB para operações de gravação definidas para o cluster.

As versões 5.0 e posteriores dos clusters do MongoDB são padronizadas como maioria.

spec.processArgs.failIndexKeyTooLong

Tipo: booleano

Opcional

Sinalizador que indica se a operação deve falhar e retornar um erro ao inserir ou atualizar documentos em que todas as entradas indexadas excedam 1024 bytes. Se você definir isso como false, mongod gravará documentos que excederem esse limite, mas não os indexará.

Esta opção corresponde ao parâmetro param.failIndexKeyTooLong mongod .

spec.processArgs.javascriptEnabled

Tipo: booleano

Opcional

Flag que indica se o cluster permite a execução de operações que realizam execuções em JavaScript no lado do servidor.

spec.processArgs.minimumEnabledTlsProtocol

Tipo: inteiro

Opcional

String que indica a versão mínima de TLS que o cluster aceita para conexões de entrada. Os clusters que usam TLS 1.0 ou 1.1 devem considerar a configuração do TLS 1.2 como a versão mínima do protocolo TLS .

Para saber mais, consulte Quais versões do TLS o Atlas suporta?.

Esta opção corresponde à opção de arquivo de configuração do net.ssl.disabledProtocols mongod .

spec.processArgs.noTableScan

Tipo: booleano

Opcional

Flag que indica se o cluster desativa a execução de qualquer query que exija uma varredura de coleção para retornar resultados.

Esta opção corresponde ao parâmetro notablescan mongod .

spec.processArgs.oplogSizeMB

Tipo: inteiro

Opcional

Número que indica o limite de armazenamento do oplog de um cluster expresso em megabytes. Um valor de null indica que o agrupamento utiliza o tamanho de oplog padrão que o Atlas calcula.

Esta opção corresponde à opção de arquivo de configuração do replication.oplogSizeMB mongod .

spec.processArgs.sampleRefreshIntervalBIConnector

Tipo: inteiro

Opcional

Número que indica os documentos por banco de dados a serem amostrados ao coletar informações do esquema.

Este parâmetro corresponde à opção sampleSize mongosqld .

spec.processArgs.sampleSizeBIConnector

Tipo: inteiro

Opcional

Número que indica o intervalo, em segundos, no qual o processo mongosqld faz uma nova amostra dos dados para criar seu esquema relacional.

Este parâmetro corresponde à opção sampleRefreshIntervalSecs mongosqld .

spec.projectRef.name

Tipo: string

Obrigatório

Nome do projeto ao qual o cluster pertence. Você deve especificar um Recurso PersonalizadoAtlasProject existente.

spec.serverlessSpec

Tipo: array

Condicional

Lista que contém os parâmetros de instância sem servidor da API. Para obter uma lista completa dos parâmetros disponíveis, consulte a API Atlas Instâncias sem Servidor API.

Importante

Você deve especificar spec.deploymentSpec ou spec.serverlessSpec em sua configuração.

spec.serverlessSpec.privateEndpoints

Tipo: array

Opcional

Lista que contém as configurações de endpoints privados para a instância sem servidor.

spec.serverlessSpec.providerSettings

Tipo: objeto

Condicional

Configuração que especifica as configurações para os hosts provisionados nos quais o MongoDB é executado. As opções disponíveis são específicas para o provedor de serviços de nuvem. Para saber mais, consulte as opções de configuração da Amazon Web Services, GCP e instância sem servidor Azure .

Se você deseja criar ou atualizar uma instância sem servidor, especifique esta configuração.

Importante

As seguintes configurações são preteridas e serão removidas em uma versão futura:

  • spec.serverlessSpec.providerSettings.DiskIOPS

  • spec.serverlessSpec.providerSettings.DiskTypeName

  • spec.serverlessSpec.providerSettings.EncryptEBSVolume

  • spec.serverlessSpec.providerSettings.InstanceSizeName

  • spec.serverlessSpec.providerSettings.VolumeType

  • spec.serverlessSpec.providerSettings.AutoScaling

Fornecer valores para qualquer uma dessas configurações não tem efeito.

spec.serverlessSpec.providerSettings.providerName

Tipo: string

Condicional

Fornecedor de serviços de nuvem no qual o Atlas provisiona o host para uma instância sem servidor.

O Atlas aceita os seguintes valores:

AWS
Amazon AWS
GCP
Google Cloud Platform
AZURE
Microsoft Azure
spec.serverlessSpec.providerSettings.regionName

Tipo: string

Condicional

Localização física da sua instância sem servidor MongoDB. A região que você escolhe pode afetar a latência de rede para clientes que acessam os bancos de dados.

Para obter uma lista completa dos valores de nome de região, consulte as páginas de referência do fornecedor de serviços em nuvem:

spec.serverlessSpec.tags

Tipo: array

Opcional

Lista que contém tags (pares chave-valor) para entender, organizar e identificar melhor seus sistemas de banco de dados. Para saber mais, consulte Marcações em clusters.

status.connectionStrings

Tipo: array

Obrigatório

Lista que contém as URLs de conexão para acessar o cluster. Esse parâmetro aparece depois que você cria ou atualiza um cluster.

Observação

Você não pode usar um URL de conexão diretamente. Os Atlas clusters exigem autenticação. Você deve criar pelo menos um AtlasDatabaseUser Recurso Personalizado antes que o aplicativo no seu cluster do Kubernetes possa se conectar ao cluster do Atlas. O Atlas Kubernetes Operator cria um segredo especial para cada combinação de cluster e usuário de banco de dados no projeto. O aplicativo em seu cluster do Kubernetes pode usar esse segredo para se conectar ao Atlas cluster. O parâmetro spec.scopes no recurso personalizado AtlasDatabaseUser restringe os clusters que criam o usuário do banco de dados.

Para obter os parâmetros de configuração disponíveis para um cluster a partir da API, consulte API do Atlas Clusters.

Observação

Os seguintes parâmetros são preteridos na API do Atlas e o Atlas Kubernetes Operator não suporta eles:

  • replicationSpec

  • replicationFactor

Voltar

Projeto Atlas