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

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

Os Recursos Personalizados Não Excluem Mais Objetos por Padrão

O Atlas Kubernetes Operator usa arquivos de configuração de recurso personalizado para gerenciar sua configuração do Atlas , mas 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.

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

A partir do Atlas Kubernetes Operator 2.0, quando você exclui um recurso personalizado do Kubernetes, o objeto permanece no Atlas por padrão, mas o Atlas Kubernetes Operator não controla mais o objeto. Você pode reverter esse padrão para todo o seu sistema ou substituir esse padrão por um recurso personalizado específico por uma anotação para permitir que o Atlas Kubernetes Operator exclua o objeto correspondente do Atlas. Se você substituir por uma anotação, o seguinte fluxo de trabalho será iniciado:

  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 novo comportamento padrão do Atlas Kubernetes Operator.

  • Se você adicionar a mongodb.com/atlas-resource-policy: "delete" anotação ao de um recurso metadata personalizado, o Atlas Kubernetes Operator excluirá o objeto correspondente no Atlas 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: "delete"
  • Se você tiver revertido o novo comportamento de exclusão para o padrão usado antes do Atlas Kubernetes Operator 2.0, você poderá adicionar a mongodb.com/atlas-resource-policy: "keep" anotação ao de um recurso personalizado metadata para que o Atlas Kubernetes Operator não exclua o recurso quando você excluir o Atlas Kubernetes Recurso do operador.

  • 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 usar essa 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 essa anotação, o Atlas Kubernetes Operator reconcilia o recurso e o sincroniza 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 do recurso for uma versão principal atrás da versão do Atlas Kubernetes Operator, os recursos mais recentes podem não funcionar. As inconsistências de versão secundárias são compatíveis com versões anteriores.

Voltar

Serviços de terceiros

Nesta página