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

Recursos personalizados

O Atlas Kubernetes Operator oferece suporte aos seguintes recursos personalizados:

Resource
Descrição

AtlasBackupPolicy Recurso personalizado

Configuração de uma política de backup para fazer backup do seu Atlas cluster.

Configuração de um cronograma de backup para fazer backup do seu cluster Atlas.

Configuração de um cluster dentro de algum projeto no Atlas.

Configuração de um trigger de banco de dados dentro de algum projeto no Atlas.

Configuração de um projeto no Atlas.

Configuração de uma equipe de projeto no Atlas.

Configuração de uma instância do banco de dados federado e seus endpoints privados no Atlas.

Configuração da autenticação federada no Atlas.

Importante

Definições de recursos personalizados têm prioridade

O Atlas Kubernetes Operator usa arquivos de configuração derecurso personalizado para gerenciar sua configuração do Atlas . Cada definição de recurso personalizado substitui as configurações especificadas de outras formas, como na UI do Atlas . Se você excluir um recurso personalizado, o Atlas Kubernetes Operator excluirá o objeto do Atlas , a menos que você use anotações para ignorar a exclusão. Para saber mais, consulte o Processo de criação e atualização e o Processo de exclusão.

Ao utilizar o Atlas Kubernetes Operator, você pode criar um novo projeto do Atlas ou pode trabalhar com um projeto do Atlas existente.

Você precisa das seguintes informações da chave de API pública, chave de API privada e ID da organização para configurar o acesso do Atlas Kubernetes Operator ao Atlas.

  • Se você quiser que o Atlas Kubernetes Operator crie um novo projeto do Atlas , concedaacesso programático a uma organização. Se sua organização exigir uma lista de acesso IP para a API Atlas Administration, você também deverá configurar a lista de acesso da API.

    Importante

    Você deve atribuir a chave API ao role da organização Organization Project Creator ou superior.

  • Se você quiser trabalhar com um projeto Atlas existente, adicione acesso a um projeto. Se sua organização exigir uma lista de acesso IP para a API Atlas Administration, você também deverá configurar a lista de acesso da API.

    Importante

    Você deve atribuir à chave de API ao role de projeto Project Owner .

Para saber mais, consulte Configurar Acesso ao Atlas.

Cada vez que você altera o campo spec em qualquer um dos recursos personalizados suportados, o seguinte fluxo de trabalho é iniciado no Atlas Kubernetes Operator:

  1. O Atlas Kubernetes Operator recebe um evento sobre o recurso personalizado alterado.

  2. O Atlas Kubernetes Operator atualiza o campo status.conditions para refletir que o recurso não está pronto:

    conditions:
    - lastTransitionTime: "2021-03-13T16:26:17Z"
    status: "False"
    type: Ready
  3. Para se conectar à API de Administração do Atlas, o Atlas Kubernetes Operator lê o ID da organização e as chaves deAPI do de um dos seguintes locais:

  4. Para criar ou atualizar recursos no Atlas, o Atlas Kubernetes Operator utiliza as informações de conexão para fazer chamadas de API para o Atlas.

    Observação

    Às vezes, o Atlas Kubernetes Operator faz múltiplas chamadas de API no Atlas durante a reconciliação de um recurso personalizado. Por exemplo, AtlasProject tem uma configuração de lista de acesso IP para chamar a API correspondente.

  5. Se ocorrer algum erro durante a reconciliação, status.conditions será atualizado para refletir o erro.

    Exemplo

    - lastTransitionTime: "2021-03-15T14:26:44Z"
    message: 'POST https://cloud.mongodb.com/api/atlas/v1.0/groups/604a47de73cd8cag77239021/accessList:
    400 (request "INVALID_IP_ADDRESS_OR_CIDR_NOTATION") The address 192.0.2.1dfdfd5
    must be in valid IP address or CIDR notation.'
    reason: ProjectIPAccessListNotCreatedInAtlas
    status: "False"
    type: IPAccessListReady
  6. Se a atualização for bem-sucedida, status.conditions reflete que o recurso está pronto:

    conditions:
    - lastTransitionTime: "2021-03-13T16:26:17Z"
    status: "True"
    type: Ready

Se você remover um recurso personalizado do Kubernetes, o Atlas Kubernetes Operator tentará limpar o estado no Atlas, e o seguinte fluxo de trabalho começará:

  1. O Atlas Kubernetes Operator recebe um evento sobre o recurso personalizado excluído.

  2. Para se conectar à API de Administração do Atlas, o Atlas Kubernetes Operator lê o ID da organização e as chaves de API de um dos seguintes locais:

  3. Para excluir o recurso do Atlas, o Atlas Kubernetes Operator utiliza as informações de conexão para fazer chamadas de API para o Atlas.

    Observação

    O Atlas Kubernetes Operator remove quaisquer objetos relacionados criados no Kubernetes. Por exemplo, se você AtlasDatabaseUser remover o, o Atlas Kubernetes Operator removerá os segredos de conexão relacionados.

Você pode utilizar anotações para modificar o comportamento padrão do Atlas Kubernetes Operator.

Se você adicionar a mongodb.com/atlas-resource-policy: "keep" anotação ao de um recurso metadata personalizado, o Atlas Kubernetes Operator não excluirá o recurso quando você excluir o recurso do Atlas Kubernetes Operator.

Exemplo

apiVersion: atlas.mongodb.com/v1
kind: AtlasProject
metadata:
name: my-project
annotations:
mongodb.com/atlas-resource-policy: "keep"

Se você adicionar a mongodb.com/atlas-reconciliation-policy: "skip" anotação ao de um metadata recurso personalizado, o Atlas Kubernetes Operator não iniciará a reconciliação para o recurso. Essa anotação permite pausar a sincronização com a especificação até remover a anotação. Você pode utilizar esta anotação para fazer alterações manuais em um recurso personalizado e evitar que o Atlas Kubernetes Operator as desfaça durante uma sincronização. Quando você remove esta anotação, o Atlas Kubernetes Operator deve reconciliar o recurso e sincronizá-lo com a especificação.

Se você adicionar a mongodb.com/atlas-resource-version-policy: "allow" anotação ao de um metadata recurso personalizado, o Atlas Kubernetes Operator permitirá que você use um recurso mesmo que o rótulo de versão não corresponda à versão do Atlas Kubernetes Operator que você está usando. Se a sua versão de recursos for uma versão principal inferior à versão do Atlas Kubernetes Operator, os recursos mais recentes podem não funcionar. As discrepâncias de versão menor são compatíveis com versões anteriores.

Voltar

Serviços de terceiros

Nesta página