MongoDB.local SF, Jan 15: See the speaker lineup & ship your AI vision faster. Use WEB50 to save 50%
Find out more >
Menu Docs
Página inicial do Docs
/ /
/ / /

AtlasNetworkPeering Recurso personalizado

Importante

Os subrecursos legados são preteridos a partir do lançamento de seus CRDs correspondentes. Se a sua configuração atualmente depender da forma de subrecurso desta definição de recurso, migre para um CRD.

O recurso personalizado do AtlasNetworkPeering define uma conexão de peering de rede para um projeto do Atlas. As conexões de peering de rede isolam o tráfego de redes públicas para aumentar a segurança.

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 uma nova conexão de peering de rede.

  • Atualiza uma conexão de peering de rede existente.

Observação

Uma conexão de peering de rede pode pertencer somente a um projeto. Para definir a mesma conexão de peering de rede para vários projetos, crie definições de recursos personalizadas para cada projeto.

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

  • 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 CRD independente configura a mesma conexão de emparelhamentoVPC que o exemplo básico, mas para um projeto Atlas que você gerencia fora da instância do Atlas Kubernetes Operator com a qual você gerencia a conexão de emparelhamento VPC.

O exemplo a seguir mostra um recurso personalizado do AtlasNetworkPeering que define a conexão do green-leaf-peering entre o projeto VPC do my-project e seu Amazon Web Services VPC. 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: AtlasNetworkPeering
metadata:
name: green-leaf-peering
spec:
projectRef:
name: my-project
namespace: my-operator-namespace
containerRef:
id: 72a6d2a69388ba121943ae27
id: 72a6d2a69388ba121943ae27
provider: AWS
awsConfiguration:
accepterRegionName: us-east-1
awsAccountId: 389226183042
routeTableCiderBlock: 10.0.0.0/21
vpcId: vpc-abc

O exemplo a seguir mostra um AtlasNetworkPeering CRD independente que configura a mesma conexão de emparelhamento de VPC definida pelo Exemplo Básico. Para habilitar o gerenciamento de recursos independentemente do projeto pai, 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: AtlasNetworkPeering
metadata:
name: green-leaf-peering
spec:
externalProjectRef:
projectId: 66e2f2b621571b7e69a89b66
connectionSecret:
name: atlas-connection-secret
containerRef:
id: 72a6d2a69388ba121943ae27
id: 72a6d2a69388ba121943ae27
provider: AWS
awsConfiguration:
accepterRegionName: us-east-1
awsAccountId: 389226183042
routeTableCiderBlock: 10.0.0.0/21
vpcId: vpc-abc

AtlasNetworkPeering é o esquema para a API AtlasNetworkPeering

Name
Tipo
Descrição
Obrigatório

apiVersion

string

atlas.mongodb.com/v1

true

kind

string

AtlasNetworkPeering

true

metadata

objeto

Consulte a documentação do Kubernetes API para os campos do campo metadata.

true

spec

objeto

AtlasNetworkPeeringSpec define o estado alvo de AtlasNetworkPeering. Validações:

  • (has(auto.''externalProjectRef'') && !has(auto.''projectRef'')) || (!has(auto.''externalProjectRef'') && has(auto.``projectRef``)): deve definir apenas uma referência do projeto por meio de externalProjectRef ou projectRef

  • (has(auto.''externalProjectRef'') && has(auto.``connectionSecret``)) || !has(auto.''externalProjectRef''): deve definir um segredo de conexão local ao fazer referência a um projeto externo

  • (has(auto.``containerRef``.name) && !has(auto.``containerRef``.id)) || (!has(auto.''containerRef''.name) && has(auto.``containerRef``.id)): deve ter um id de contêiner Atlas ou nome Kubernetes, mas não ambos (ou nenhum)

  • (auto.``containerRef``.name == oldSelf.``containerRef``.name) || (!has(auto.''containerRef''.name) && !has(oldSelf.``containerRef``.name)): o nome de referência do contêiner é imutável

  • (auto.``containerRef``.id == oldSelf.``containerRef``.id) || (!has(auto.``containerRef``.id) && !has(oldSelf.``containerRef``.id)): a ID de referência do contêiner é imutável

  • (auto.id == oldSelf.id) || (!has(auto.id) && !has(oldSelf.id)): id é imutável

false

status

objeto

AtlasNetworkPeeringStatus é um status para o recurso Personalizado AtlasNetworkPeering. Não aquele incluído no AtlasProject

false

AtlasNetworkPeeringSpec define o estado de destino do AtlasNetworkPeering.

Name
Tipo
Descrição
Obrigatório

containerRef

objeto

ContainerDualReference refere-se a um contêiner de rede pelo nome Kubernetes ou Atlas ID.

true

provider

enum

Nome do serviço de nuvem provider para o qual você deseja criar o serviço de emparelhamento de rede. enumeração: AWS, GCP, AZURE

true

awsConfiguration

objeto

AWSConfiguration são as configurações específicas do AWS para emparelhamento de rede.

false

azureConfiguration

objeto

AzureConfiguration são as configurações específicas do Azure para emparelhamento de rede.

false

connectionSecret

objeto

Nome do segredo contendo as chaves privada e pública do Atlas API.

false

externalProjectRef

objeto

externalProjectRef contém o projeto principal do Atlas ID. Mutualmente exclusivo com o campo"projectRef".

false

gcpConfiguration

objeto

GCPConfiguration são as configurações específicas do Google Cloud para emparelhamento de rede.

false

id

string

ID é o identificador de emparelhamento para um emparelhamento de rede já existente a ser gerenciado pelo operador. Este campo é imutável.

false

projectRef

objeto

projectRef é uma referência ao recurso pai AtlasProject. Mutualmente exclusivo com o campo"externalProjectRef".

false

ContainerDualReference refere-se a um contêiner de rede pelo nome Kubernetes ou ID Atlas.

Name
Tipo
Descrição
Obrigatório

id

string

ID é o identificador Atlas do recurso Atlas do contêiner de rede do qual essa conexão de emparelhamento depende. Use o nome ou ID, não ambos.

false

name

string

O nome do recurso contêiner Kubernetes deve estar presente no mesmo namespace. Use name ou ID, não ambos.

false

AWSConfiguration são as configurações específicas da AWS para emparelhamento de rede.

Name
Tipo
Descrição
Obrigatório

accepterRegionName

string

AccepterRegionName é o nome da região do provedor do vpc do usuário no formato de região nativo do AWS.

true

awsAccountId

string

AccountID do vpc do usuário.

true

routeTableCidrBlock

string

Usuário VPC CIDR.

true

vpcId

string

AWS VPC ID.

true

AzureConfiguration são as configurações específicas do Azure para emparelhamento de rede.

Name
Tipo
Descrição
Obrigatório

azureDirectoryId

string

AzureDirectoryID é o identificador exclusivo de um diretório Azure AD.

true

azureSubscriptionId

string

AzureSubscriptionID é o identificador exclusivo da assinatura do Azure na qual a VNet reside.

true

resourceGroupName

string

ResourceGroupName é o nome do seu grupo de recursos do Azure.

true

vNetName

string

VNetName é o nome da sua VNet do Azure. É aplicável apenas ao Azure.

true

Nome do segredo que contém as chaves privadas e públicas da Atlas API.

externalProjectRef contém o ID do grupo pai do Atlas. Mutualmente exclusivo com o campo"projectRef".

Name
Tipo
Descrição
Obrigatório

id

string

ID é o projeto Atlas ID.

true

GCPConfiguration são as configurações específicas do Google Cloud para emparelhamento de rede.

Name
Tipo
Descrição
Obrigatório

gcpProjectId

string

Usuário GCP Projeto ID. É aplicável apenas para GCP.

true

networkName

string

GCP Nome do emparelhamento de rede. É aplicável apenas para GCP.

true

projectRef é uma referência ao recurso pai AtlasProject. Mutualmente exclusivo com o campo"externalProjectRef".

Name
Tipo
Descrição
Obrigatório

name

string

Nome do Recurso Kubernetes

true

namespace

string

Namespace do Recurso Kubernetes

false

AtlasNetworkPeeringStatus é um status para o recurso personalizado AtlasNetworkPeering. Não aquele incluído no AtlasProject

Name
Tipo
Descrição
Obrigatório

conditions

[] objeto

Condições é a lista de status que mostra o estado atual do Recurso Personalizado do Atlas

true

awsStatus

objeto

AWSStatus contém apenas informações de status relacionadas a AWS

false

azureStatus

objeto

AzureStatus contém apenas informações de status relacionadas ao Azure

false

gcpStatus

objeto

O GCPStatus contém apenas informações de status relacionadas a GCP

false

id

string

ID registra o identificador do emparelhamento criado pelo Atlas

false

observedGeneration

inteiro

ObservedGeneration indica a geração da especificação de recurso da qual o Operador Atlas está ciente. O Operador do Atlas atualiza este campo para o valor de 'metadados.generation' assim que iniciar a reconciliação do recurso. Formato: int64

false

status

string

O status descreve o último status visto para configurar o emparelhamento de rede

false

A condição descreve o estado de um recurso personalizado do Atlas em um determinado ponto.

Name
Tipo
Descrição
Obrigatório

status

string

Status da condição; um de verdadeiro, falso, desconhecido.

true

type

string

Tipo de condição do Atlas recurso.

true

lastTransitionTime

string

Última vez que a condição fez a transição de um status para outro. Representado no formato ISO 8601. Formato: data/hora

false

message

string

Um message fornecendo detalhes sobre a transição.

false

reason

string

O reason para a última transição da condição.

false

AWSStatus contém apenas informações de status relacionadas à AWS

Name
Tipo
Descrição
Obrigatório

connectionId

string

ConnectionID a conexão de emparelhamento AWS VPC é ID

false

vpcId

string

VpcID AWS VPC é o id do lado do Atlas

false

O AzureStatus contém informações de status relacionadas apenas ao Azure

Name
Tipo
Descrição
Obrigatório

azureSubscriptionIDpcId

string

AzureSubscriptionID O id de assinatura do Azure está do lado do Atlas

false

vNetName

string

VnetName é a rede Azure no lado do Atlas

false

GCPStatus contém informações de status relacionadas apenas ao GCP

Name
Tipo
Descrição
Obrigatório

gcpProjectID

string

GCPProjectID é GCP projeto no lado do Atlas

false

networkName

string

NetworkName GCP é uma rede no lado do Atlas

false

Voltar

AtlasNetworkContainer

Nesta página