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

AtlasNetworkContainer Recurso personalizado

O recurso personalizado do AtlasNetworkContainer define umcontainer de rede do para um projeto Atlas. Você cria conexões de peering deVPC entre os containers de rede e as redes que hospedam seus aplicativos.

Importante

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

  • O Atlas Kubernetes Operator utiliza 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 (por padrão) excluídos no Atlas. Em vez disso, o Atlas Kubernetes Operator simplesmente para de gerenciar estes recursos no Atlas. Por exemplo, se você excluir um AtlasProject Recurso Personalizado no Kubernetes, por padrão, o Atlas Kubernetes Operator não excluirá mais automaticamente o projeto correspondente do Atlas. Essa mudança no comportamento destina-se a ajudar a evitar exclusões acidentais ou inesperadas. Para saber mais, incluindo como reverter este comportamento para o padrão utilizado antes do Atlas Kubernetes Operator.,2 0consulte Novo padrão: Proteção de exclusão no Atlas Kubernetes 2 0Operator..

    Da mesma forma, o Atlas Kubernetes Operator não exclui equipes do Atlas se você as remover de um projeto do Atlas no Kubernetes com o Atlas Kubernetes Operator.

  • Defina explicitamente os detalhes de configuração desejados para evitar o uso implícito de valores de configuração padrão do Atlas . Em alguns casos, herdar os padrões do Atlas pode resultar em um loop de reconciliação que pode impedir que seu recurso personalizado atinja um estado READY. Por exemplo, definir explicitamente o comportamento de autoscaling desejado em seu recurso personalizado AtlasDeployment, conforme mostrado no exemplo incluído, garante que um tamanho de instância estática em seu recurso personalizado não esteja sendo aplicado repetidamente a um sistema do Atlas que tenha o autoscaling ativado.

    autoScaling:
    diskGB:
    enabled: true
    compute:
    enabled: true
    scaleDownEnabled: true
    minInstanceSize: M30
    maxInstanceSize: M40

O Atlas Kubernetes Operator realiza uma das seguintes ações usando o recurso da API de emparelhamento de rede do Atlas :

  • Cria um novo container de rede.

  • Atualiza um container de rede existente.

Os exemplos a seguir ilustram configurações para CRDs do AtlasNetworkContainer.

  • A configuração básica de exemplo define um recurso que você gerencia com a mesma instância do Atlas Kubernetes Operator com a qual você gerencia seu projeto pai do Atlas .

  • O exemplo de CRD independente configura o mesmo container de rede que o exemplo básico, mas para um projeto do Atlas que você gerencia fora da instância do Atlas Kubernetes Operator com a qual você gerencia o container de rede.

O seguinte mostra um recurso personalizado do AtlasNetworkContainer para um contêiner denominado my-atlas-nc que permite criar uma conexão de emparelhamento de VPC entre Atlas e Amazon Web Services dentro do projeto my-project. Para gerenciar esse recurso na mesma instância do Atlas Kubernetes Operator que seu projeto Atlas pai, você deve identificar o projeto com projectRef em vez de externalProjectRef.

apiVersion: atlas.mongodb.com/v1
kind: AtlasNetworkContainer
metadata:
name: my-atlas-nc
spec:
projectRef:
name: my-project
namespace: my-operator-namespace
provider: AWS
id: 66e2f2b7e69a89b66b621571
cidrBlock: 10.11.0.0/16
region: US_EAST_1

O exemplo a seguir mostra um AtlasNetworkContainer CRD independente que habilita o emparelhamento de VPC sob os mesmos parâmetros habilitados pelo exemplo básico. Para habilitar a operação independente, você deve usar um externalProjectRef em vez de um projectRef e deve fornecer um connectionSecret diretamente, pois esse recurso não pode herdar credenciais de API de seu projeto pai.

apiVersion: atlas.mongodb.com/v1
kind: AtlasNetworkContainer
metadata:
name: my-atlas-nc
spec:
externalProjectRef:
projectId: 66e2f2b621571b7e69a89b66
connectionSecret:
name: atlas-connection-secret
provider: AWS
id: 66e2f2b7e69a89b66b621571
cidrBlock: 10.11.0.0/16
region: US_EAST_1

Esta seção descreve os parâmetros do AtlasNetworkContainer disponíveis nesta definição de recurso personalizada.

metadata.name

Tipo: string

Obrigatório

Nome que o AtlasNetworkContainer Recurso Personalizado utiliza para adicionar este contêiner de rede a um projeto.

metadata.namespace

Tipo: string

Opcional

Namespace diferente do default que você deseja que contenha o recurso personalizado do AtlasNetworkContainer.

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 padronizará para uma das seguintes opções:

  • O parâmetro spec.connectionSecretRef.name do atlasProjectpai

  • O segredo global padrão, se você não tiver definido o spec.connectionSecretRef.name para o atlasProjectpai

Esse parâmetro é necessário para CRDs independentes.

O Atlas Kubernetes atlas.mongodb.com/type=credentials Operator 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.externalProjectRef.id

Tipo: string

Condicional

ID do projeto ao qual pertence o container de rede. Você deve especificar o ID do projeto de um Atlas Project existente. Você deve especificar este parâmetro para containers de rede 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 o spec.projectRef.name. Esses parâmetros são mutuamente exclusivos entre si.

spec.projectRef.name

Tipo: string

Condicional

Nome do projeto ao qual pertence o container de rede. Você deve especificar um AtlasProject Recurso Personalizado existente. Este parâmetro se aplica somente a containers de rede que pertencem a projetos gerenciados pela mesma instância do Atlas Kubernetes Operator.

Para containers de rede que pertencem a projetos gerenciados por:

  • uma instância diferente do Atlas Kubernetes Operator

  • ferramentas diferentes do Atlas Kubernetes Operator

usar spec.externalProjectRef.id. Esses parâmetros são mutuamente exclusivos entre si.

spec.projectRef.namespace

Tipo: string

Condicional

Namespace no qual o AtlasProject Recurso Personalizado especificado spec.projectRef.name no existe.

Não defina este parâmetro para implantações que pertencem a projetos gerenciados por:

  • uma instância diferente do Atlas Kubernetes Operator

  • ferramentas diferentes do Atlas Kubernetes Operator

spec.provider

Tipo: string

Obrigatório

Fornecedor de nuvem com o qual oferecer suporte a uma conexão de emparelhamento VPC. Deve ser um dos seguintes:

  • AWS

  • Azure

  • GCP

spec.id

Tipo: string

Condicional

Identificador exclusivo do container de rede existente no Atlas. Este parâmetro é necessário e limitado a cenários em que o Atlas Kubernetes Operator gerencia um container de emparelhamento de rede preexistente.

spec.cidrBlock

Tipo: string

Obrigatório

Bloco CIDR do seu container de rede Atlas .

spec.region

Tipo: string

Condicional

Região do Atlas na qual hospedar o container de rede. Deve estar em conformidade com o formato Atlas para regiões de hospedagem. Este parâmetro é necessário e limitado a contêineres de rede da Amazon Web Services e do Azure.

Voltar

AtlasIPAccessList

Nesta página