O recurso personalizado AtlasDeployment configura seu cluster MongoDB 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, - deploymentSpecsubstitui- advancedDeploymentSpecno- AtlasDeploymentrecurso personalizado. Você deve atualizar seu recurso personalizado do- AtlasDeploymentcomo segue:- Se você usar - advancedDeploymentSpec, renomeie-o para- deploymentSpec. Você não precisa alterar nenhuma formatação.
- Se você usava - deploymentSpecantes do Atlas Kubernetes Operator 2.0, reescreva seu- AtlasDeploymentrecurso 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 - AtlasProjectRecurso 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 - spec.serverlessSpecem, 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.
A criação ou atualização de um cluster ou de 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.
Exemplos
Exemplo de status
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 
Exemplo de configuração
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 
Exemplo de opções adicionais
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 
Exemplo de instância sem servidor
O exemplo a seguir mostra uma especificação de recurso personalizado 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 
Exemplo de cluster multirregional
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 
Exemplo de vários provedores de serviços em cloud
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 
Exemplo de índice Atlas Search
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 
Exemplo de nós Atlas Search
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 
Parâmetros
Esta seção descreve alguns dos principais parâmetros de recursos personalizados AtlasDeployment disponíveis.
- Para obter uma lista completa dos parâmetros disponíveis para clusters, consulte a API de Clusters do Atlas. 
- Para obter uma lista completa dos parâmetros disponíveis para instâncias sem servidor, consulte a API Atlas Instâncias sem Servidor API. 
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 Personalizado - AtlasBackupScheduleque você deseja aplicar. Você pode especificar um agendamento de backup por cluster.
- spec.backupRef.name
- Tipo: string - Opcional - metadata.namevalor dentro do Recurso Personalizado- AtlasBackupSchedulepara 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 Personalizado - AtlasBackupSchedulepara o agendamento de backup que você deseja aplicar.
- spec.connectionSecret.name
- Tipo: string - Condicional - Nome do segredo opaco segredo que contém o ID da organização e chaves de API que o Atlas Kubernetes Operator usa para se conectar ao Atlas. Se não for especificado, o Atlas Kubernetes Operator voltará para: - O parâmetro - spec.connectionSecretRef.namedo- atlasProjectpai
- O segredo - globalpadrão, se- spec.connectionSecretRef.nameestiver indefinido para o- atlasProjectpai
 - Este parâmetro é obrigatório para CRDs independentes. - O Atlas Kubernetes - atlas.mongodb.com/type=credentialsOperator observa segredos apenas com a etiqueta para evitar a exibição de segredos desnecessários.- O exemplo a seguir rotula um segredo: - kubectl label secret the-user-password atlas.mongodb.com/type=credentials 
- 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.deploymentSpecou- spec.serverlessSpecem 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çãonecessidade- 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: ValorTipo 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 - diskGBem 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: ValorProvedor 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 - truepara habilitar uma chave de shard personalizada para a collection.
- Defina como - falsepara 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 - truepara habilitar uma chave de shard personalizada exclusiva para a collection.
- Defina como - falsepara 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 - truepara que o MongoDB cloud crie e distribua partes iniciais para uma collection vazia ou inexistente.
- Defina como - falsepara 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 
- 8.0 
 - As seguintes condições produzem os seguintes resultados: CondiçãoResultado- Você omite este parâmetro e omite o - spec.deploymentSpec.versionReleaseSystemparâmetro.- O Atlas implementa um cluster que executa o MongoDB 7.0. - Você omite este parâmetro e define o - spec.deploymentSpec.versionReleaseSystemparâmetro- LTScomo.- O Atlas implementa um cluster que executa o MongoDB 7.0. - Você define o - spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSizeparâmetro- M0- M2como,- M5ou.- 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 - spec.deploymentSpec.versionReleaseSystemparâmetro- CONTINUOUScomo.- 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 - truepara 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.regionNameou- spec.deploymentSpec.replicationSpecs.- Quando você deve usar esse parâmetro? CondiçãonecessidadeValues- 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.clusterTypee- 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 - 1a- 50, inclusive. O valor padrão é- 1.- Se você especificar um valor de - 1e definir- spec.deploymentSpec.clusterTypecomo- SHARDED, o Atlas implantará um cluster fragmentado fragmentado de fragmento único.
- Se você especificar - 1e configurar- spec.deploymentSpec.clusterTypepara- 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. 
 - Aviso- Quando você usa um cluster fragmentado, o MongoDB exige que seus aplicativos - mongosse conectem a uma instância do para garantir que seus aplicativos interajam com os shards e outros componentes do cluster fragmentado corretamente. Se você migrar de um conjunto de réplicas para um cluster fragmentado, seus aplicativos deverão ser reiniciados para habilitar a conexão com o do- mongoscluster. Como resultado, a API de Admin do Atlas impede que você migre um conjunto de réplicas diretamente para um cluster fragmentado com mais de um shard. Depois de migrar com êxito seu conjunto de réplicas para um cluster de fragmento único e redefinir suas conexões de aplicação , você poderá adicionar fragmentos adicionais ao cluster.
- spec.deploymentSpec.replicationSpecs.regionConfigs
- Tipo: array - Obrigatório - Especificações de hardware para nós definidos para uma determinada região. Cada objeto - regionConfigsdescreve 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 - regionConfigsdeve ter um objeto- analyticsSpecs, um objeto- electableSpecsou um objeto- readOnlySpecs.- M0,- M2ou clusters- M5exigem apenas- electableSpecs.
- O cluster dedicado pode especificar qualquer uma dessas especificações, mas deve ter pelo menos um objeto - electableSpecsdentro 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 - truepara ativar o dimensionamento automático do disco.
- Defina como - falsepara 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.- Defina como - truepara habilitar o dimensionamento automático do tamanho da instância. Se habilitado, você deve especificar um valor para- spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize.
- Defina como - falsepara desabilitar o dimensionamento automático do tamanho da instância.
 
- 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.enabledpara- 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 - M40e 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.instanceSizeno 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.enabledpara- 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 - M10e 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.instanceSizeno 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 - M30ou 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.minInstanceSizee- spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSizecom o dimensionamento automático ativado. Para saber mais, consulte- spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSizee- 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,- M5ou Flex para um cluster- M10+. No entanto, você não pode atualizar um cluster- M0,- M2,- M5`, or Flex cluster to another free or shared cluster. For example, you can't upgrade an ``M0para um cluster Flex.
- 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.nodeCountcombinado em todos os objetos- replicationSpecs.regionConfigsdeve totalizar- 3,- 5ou- 7.- Não é possível criar nós elegíveis se - spec.deploymentSpec.replicationSpecs.regionConfigs.priorityfor- 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 - regionConfigstiver apenas- readOnlySpecs,- analyticsSpecsou 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- 6e 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.nodeCountcomo- 1ou 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 - 7identifica a Região Preferencial do cluster. O Atlas coloca o nó primário na região preferencial. As prioridades- 1a- 7sã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,- 6e- 5respectivamente. Se você adicionasse mais duas regiões para apoiar nós elegíveis, as prioridades dessas regiões seriam- 4e- 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.regionNameou- 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.clusterTypecomo- GEOSHARDED.
- spec.deploymentSpec.searchIndexes
- Tipo: array - Opcional - Uma array de - SearchIndexobjetos com campos que descrevem o índice do Atlas Search . Cada objeto- SearchIndexcontém os seguintes campos:CampoTipoDescriçã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 - typefor- search. Caso contrário, omita.- vectorSearch- objeto - Você deve incluir este objeto se - typefor- vectorSearch. Caso contrário, omita.
- spec.deploymentSpec.searchIndexes.search
- Tipo: objeto - Opcional CampoTipoDescriçã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 - Synonymcom campos que descrevem conjuntos de regras que mapeiam palavras até seus sinônimos neste índice. Cada objeto- Synonymcontém os seguintes campos:CampoTipoDescriçã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 CampoTipoDescriçã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: - dynamicbooleanoSinalizador 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 CampoTipoDescrição- fields- JSON/YAML - Array de objetos JSON. Consulte exemplos https://dochub.mongodb.org/core/avs-vector-type - Obrigatório 
- spec.deploymentSpec.searchNodes
- Tipo: array - Opcional - Uma array de configurações de nós do Atlas Search . Cada elemento contém dois campos: CampoTipoDescriçã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.externalProjectRef.id
- Tipo: string - Condicional - ID do projeto ao qual pertence o sistema. Você deve especificar o ID do projeto de um Atlas Project existente. Esse parâmetro é necessário para implantações que pertencem a projetos gerenciados por: - Uma instância diferente do Atlas Kubernetes Operator 
- Ferramentas diferentes do Atlas Kubernetes Operator 
 - Para implantações que pertencem a projetos gerenciados pela mesma instância do Atlas Kubernetes Operator, utilize - spec.projectRef.namese você não utilizar- spec.externalProjectRef.id.
- 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,- mongodgravará 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. - Esta opção corresponde à modificação da opção de arquivo de configuração do - security.javascriptEnabledpara cada- mongode- mongosno agrupamento.
 
- 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 - nullindica 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 - Condicional - Nome do projeto ao qual o sistema pertence. Você deve especificar um - AtlasProjectRecurso Personalizado existente. Este parâmetro se aplica somente a sistemas que pertencem a projetos gerenciados pela mesma instância do Atlas Kubernetes Operator.- Para implementações que pertencem a projetos gerenciados por: - uma instância diferente do Atlas Kubernetes Operator 
- ferramentas diferentes do Atlas Kubernetes Operator 
 - usar - spec.externalProjectRef.id.
- spec.serverlessSpec
- Tipo: array - Condicional - Lista que contém os parâmetros da 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.deploymentSpecou- spec.serverlessSpecem sua configuração.
- spec.serverlessSpec.privateEndpoints
- Tipo: array - Opcional - Lista que contém as configurações de endpoint privado 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 de instância do Amazon Web Services, GCP e Azure Serverless. - 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 - Provedor 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 - AtlasDatabaseUserRecurso Personalizado antes que o aplicação 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. A aplicação em seu cluster do Kubernetes pode usar esse segredo para se conectar ao cluster do Atlas. O parâmetro- spec.scopesno recurso personalizado- AtlasDatabaseUserrestringe os clusters que criam o usuário de 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