Começando com o Atlas Kubernetes Operator versão 2.6, várias configurações de recursos que anteriormente assumiam a forma de parâmetros fizeram a transição para CRDs próprios. O suporte para a configuração do recurso pai baseado em parâmetros está obsoleto. As configurações existentes de recursos pai baseados em parâmetros continuarão funcionando, mas o suporte para essas configurações será removido em uma versão futura.
Para continuar gerenciando estes recursos pelo Atlas Kubernetes Operator no futuro, migre para o CRD apropriado.
Configurações afetadas
As seguintes configurações são afetadas:
Procedimento de migração
Para migrar do gerenciamento de recursos em nível de parâmetros para o gerenciamento CRD:
Desative a reconciliação do projeto e edite as referências do subrecurso.
- Adicione a anotação - mongodb.com/atlas-reconciliation-policy: "skip"ao- metadatado recurso pai. Isto impede que o Atlas Kubernetes Operator tente reconciliar o recurso principal e os seus sub-recursos.
- Para evitar conflitos com o novo CRD criado, você deve excluir os parâmetros correspondentes ao recurso que deseja migrar do recurso pai. 
Considere o seguinte exemplo de um atlasProject com uma configuração customRoles:
apiVersion: atlas.mongodb.com/v1 kind: AtlasProject metadata:   name: my-project spec:   name: Test project   connectionSecretRef:     name: my-atlas-key   customRoles:     role:       name: my-role       actions:         - name: getShardMap           resources:             cluster: true         - name: shardingState           resources:             cluster: true         - name: connPoolStats           resources:             cluster: true         - name: getLog           resources:             cluster: true         inheritedRoles:           - name: operator-role-1             role: backup    projectIpAccessList:      - cidrBlock: "203.0.113.0/24"        comment: "CIDR block for Application Server B - D" 
Certifique-se de ter adicionado o bloco annotations nas linhas 5 e 6 e removido o bloco customRoles mostrado no exemplo anterior.
apiVersion: atlas.mongodb.com/v1 kind: AtlasProject metadata:   name: my-project annotations:   mongodb.com/atlas-reconciliation-policy: "skip" spec:   name: Test project   connectionSecretRef:     name: my-atlas-key   projectIpAccessList:     - cidrBlock: "203.0.113.0/24"       comment: "CIDR block for Application Server B - D" 
Aviso
Se você não aplicar esta anotação, o Atlas Kubernetes Operator continuará tentando tentar a reconciliação à medida que você modifica seus outros recursos. Para usuários com Novo Padrão: Proteção Contra Exclusão no Atlas Kubernetes Operator 2.0 desabilitado, isso pode fazer com que o Atlas Kubernetes Operator remova o projeto do Atlas quando você remover o atlasProject recurso ou insira um estado bloqueado tentando remover um projeto com subrecursos ativos como usuários ou sistemas de banco de dados de dados.
Exclua os parâmetros do CRD principal.
Para evitar conflitos com o novo CRD criado, você deve primeiro excluir os parâmetros correspondentes ao recurso que deseja migrar do recurso pai. Por exemplo, remova o parâmetro customRoles do CRD atlasProject mostrado anteriormente:
apiVersion: atlas.mongodb.com/v1 kind: AtlasProject metadata:  name: my-project  annotations:    mongodb.com/atlas-reconciliation-policy: "skip" spec:   name: Test project   connectionSecretRef:     name: my-atlas-key   projectIpAccessList:     - cidrBlock: "203.0.113.0/24"   comment: "CIDR block for Application Server B - D" 
Crie o novo CRD.
Crie um CRD do kind apropriado para o parâmetro que você deseja migrar, de acordo com sua sintaxe. Por exemplo, para migrar o customRoles parâmetro do atlasProject CRD mostrado anteriormente, crie um AtlasCustomRole Recurso Personalizado.
apiVersion: atlas.mongodb.com/v1 kind: AtlasCustomRole metadata:   name: shard-operator-role   namespace: mongodb-atlas-system labels:   mongodb.com/atlas-reconciliation-policy: keep spec:   projectRef:     name: my-project     namespace: my-operator-namespace role:   name: my-role   actions:     - name: getShardMap       resources:         cluster: true     - name: shardingState       resources:         cluster: true     - name: connPoolStats       resources:         cluster: true     - name: getLog       resources:         cluster: true   inheritedRoles:     - name: operator-role-1       role: backup 
Além disso, agora você pode configurar este recurso como um CRD independente.