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

AtlasPrivateEndpoint Recurso personalizado

Nesta página

  • Exemplos
  • Exemplo básico
  • Exemplo de CRD independente
  • Parâmetros

O AtlasPrivateEndpoint recurso personalizado do configura um endpoint privado do para um projeto do Atlas . Isso permite que você conecte seu provedor de nuvem ao Atlas sem enviar informações por meio de uma rede pública. Endpoints privados são conexões unidirecionais com o Atlas a partir da sua rede virtual.

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 (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 em 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.0, consulte Novo Padrão: Proteção de Exclusão no Atlas Kubernetes 2 Operator.0.

    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 do Atlas Private Endpoint Service:

  • Cria um novo serviço de endpoint privado.

  • Atualiza um serviço de endpoint privado existente.

Para saber mais sobre como implementar endpoints privados no Atlas Kubernetes Operator, consulte Gerenciar endpoints privados.

O exemplo a seguir mostra um AtlasPrivateEndpoint recurso personalizado que define um endpoint privado daAWS dentro do my-project projeto.

apiVersion: atlas.mongodb.com/v1
kind: AtlasPrivateEndpoint
metadata:
name: my-atlas-pe1
spec:
projectRef:
name: my-project
namespace: my-operator-namespace
provider: AWS
region: us-east-1
awsConfiguration:
- id: vpcpe-xyz

O exemplo a seguir mostra um AtlasPrivateEndpoint CRD independente que define o mesmo endpoint privado definido no exemplo básico. Esta definição de recurso personalizada permite a você criar este endpoint privado em um projeto que você não gerencia na mesma instância do Atlas Kubernetes Operator com a qual você define este recurso. 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: AtlasPrivateEndpoint
metadata:
name: my-atlas-pe1
spec:
atlasRef:
projectID: 66e2f2b621571b7e69a89b66
credentials:
name: atlas-connection-secret
provider: AWS
region: us-east-1
awsConfiguration:
- id: vpcpe-xyz

Esta seção descreve os parâmetros de recurso personalizado AtlasPrivateEndpoint disponíveis.

metadata.name

Tipo: string

Obrigatório

Nome que o AtlasProject Recurso Personalizado utiliza para adicionar este endpoint privado a um projeto.

metadata.namespace

Tipo: string

Opcional

Namespace diferente do default que você deseja que contenha o atlasPrivateEndpoint recurso personalizado do. Se você definir um namespace personalizado, deverá adicioná-lo ao AtlasProject Recurso Personalizado no spec.privateEndpoint.privateEndpointRef.namespace campo.

spec.awsConfiguration.id

Tipo: string

Condicional

ID da interface de rede do endpoint privado. Este parâmetro é obrigatório e limitado a endpoints privados da AWS.

spec.azureConfiguration.id

Tipo: string

Condicional

ID da interface de rede do endpoint privado. Este parâmetro é obrigatório e limitado a endpoints privados do Azure.

spec.azureConfiguration.ipAddress

Tipo: string

Condicional

Endereço IP do endpoint privado na sua VNet do Azure. Este parâmetro é obrigatório e limitado a endpoints privados do Azure.

spec.connectionSecret.name

Tipo: string

Condicional

Nome do segredo opaco que contém o ID da organização e as 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.name do atlasProjectpai

  • O segredo global padrão, se spec.connectionSecretRef.name estiver indefinido para o atlasProjectpai

Este parâmetro é obrigatório para CRDs independentes.

Atlas Kubernetes Operator observa segredos apenas com a etiqueta atlas.mongodb.com/type=credentials 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 endpoint privado. Você deve especificar o ID do projeto de um Atlas Project existente. Esse parâmetro é necessário para endpoints privados 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.name se você não utilizar spec.externalProjectRef.id.

Um endpoint privado só pode pertencer a um projeto. Para definir o mesmo endpoint privado para vários projetos, crie definições de recursos personalizadas para cada projeto.

spec.gcpConfiguration.endpoints

Tipo: array

Condicional

Lista de endpoints privados individuais que compõem este grupo de endpoints. Este parâmetro é obrigatório e limitado a endpoints privados do Google Cloud.

spec.gcpConfiguration.endpoints.[n].ipAddress

Tipo: string

Condicional

Endereço IP para o qual o endpoint privado do Google Cloud fornecido se resolve. Este parâmetro é obrigatório e limitado a endpoints privados do Google Cloud.

spec.gcpConfiguration.endpoints.[n].name

Tipo: string

Condicional

Nome que identifica exclusivamente o endpoint privado do Google Cloud fornecido. Este parâmetro é obrigatório e limitado a endpoints privados do Google Cloud.

spec.gcpConfiguration.groupName

Tipo: string

Condicional

Nome que identifica exclusivamente um conjunto de endpoints privados do Google Cloud. Este parâmetro é obrigatório e limitado a endpoints privados do Google Cloud.

spec.gcpConfiguration.projectId

Tipo: string

Condicional

Identificador exclusivo do projeto do Google Cloud ao qual seus endpoints privados pertencem.

spec.projectRef.name

Tipo: string

Condicional

Nome do projeto ao qual o endpoint privado pertence. Você deve especificar um AtlasProject Recurso Personalizado existente. Este parâmetro se aplica somente a endpoints privados que pertencem a projetos gerenciados pela mesma instância 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.

Um endpoint privado só pode pertencer a um projeto. Para definir o mesmo endpoint privado para vários projetos, crie definições de recursos personalizadas para cada projeto.

spec.projectRef.namespace

Tipo: string

Condicional

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

Para implementações que pertencem a projetos gerenciados por:

  • uma instância diferente do Atlas Kubernetes Operator

  • ferramentas diferentes do Atlas Kubernetes Operator

não defina este parâmetro.

spec.provider

Tipo: string

Obrigatório

Nome do provedor de serviços de nuvem para o qual criar um serviço de endpoint privado.

spec.region

Tipo: string

Obrigatório

Região do provedor de nuvem na qual criar um serviço de endpoint privado.

Voltar

Política de compliance do AtlasBackup