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

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

metadata.name

Tipo: string

Obrigatório

Nome que o AtlasNetworkPeering Recurso Personalizado usa para adicionar essa conexão de peering de rede a um projeto.

metadata.namespace

Tipo: string

Opcional

Namespace que você deseja que contenha o recurso personalizado do atlasNetworkPeering. Se não for especificado, o Atlas Kubernetes Operator utilizará o namespace atual definido por kubectl.

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.containerRef.id

Tipo: string

Condicional

Se este recurso representar uma nova conexão de peering de rede, omita este parâmetro.

ID do contêiner de emparelhamento de rede existente. Forneça este campo somente se você desejar que este recurso gerencie uma conexão de peering de rede existente dentro do Atlas Kubernetes Operator. Se você preferir que este recurso comece a gerenciar um recurso local do Kubernetes, utilize o parâmetro spec.containerRef.name.

spec.containerRef.name

Tipo: string

Condicional

Nome de um container de emparelhamento de rede existente que você gerencia com um recurso local do Kubernetes no namespace do seu projeto . Forneça este campo somente se você desejar que este recurso gerencie um recurso local do Kubernetes. Se você preferir que este recurso comece a gerenciar uma conexão de peering de rede já gerenciada pelo Atlas Kubernetes Operator, utilize o parâmetro spec.containerRef.id. Se este recurso representar uma nova conexão de peering de rede, omita este campo.

spec.externalProjectRef.id

Tipo: string

Condicional

ID do projeto ao qual pertence a conexão de peering de rede . Você deve especificar o ID do projeto de um Atlas Project existente. Você deve especificar este parâmetro para conexões de emparelhamento 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.

Uma conexão de peering de rede pode pertencer a somente 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.

spec.projectRef.name

Tipo: string

Condicional

Nome do projeto ao qual pertence a conexão de peering de rede . Você deve especificar um AtlasProject Recurso Personalizado existente. Este parâmetro se aplica somente a conexões de peering de rede 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. Esses parâmetros são mutuamente exclusivos entre si.

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.

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.id

Tipo: string

Condicional

Identificador exclusivo da conexão de peering de rede existente no Atlas. Este parâmetro é necessário e limitado a cenários nos quais o Atlas Kubernetes Operator assume o gerenciamento de uma conexão de peering de rede preexistente.

spec.provider

Tipo: string

Obrigatório

Provedor de nuvem com o qual estabelecer uma conexão de peering VPC. Deve ser um dos seguintes:

  • AWS

  • Azure

  • GCP

spec.awsConfiguration.accepterRegionName

Tipo: string

Condicional

Região do Amazon Web Services para a qual estabelecer uma conexão de emparelhamento da VPC. Necessário e limitado a conexões do Amazon Web Services.

spec.awsConfiguration.awsAccountId

Tipo: string

Condicional

Identificador único da conta do Amazon Web Services à qual a conexão pertence. Necessário e limitado a conexões do Amazon Web Services.

spec.awsConfiguration.routeTableCidrBlock

Tipo: string

Condicional

Bloco CIDR do seu Amazon Web Services VPC. Necessário e limitado a conexões do Amazon Web Services.

spec.awsConfiguration.vpcId

Tipo: string

Condicional

Identificador exclusivo do seu Amazon Web Services VPC. Necessário e limitado a conexões do Amazon Web Services.

spec.azureConfiguration.azureDirectoryId

Tipo: string

Condicional

Identificador exclusivo do seu diretório Azure. Necessário e limitado a conexões Azure.

spec.azureConfiguration.azureSubscriptionId

Tipo: string

Condicional

Identificador exclusivo da sua assinatura do Azure. Necessário e limitado a conexões Azure.

spec.azureConfiguration.resourceGroupName

Tipo: string

Condicional

Nome do Azure Resource Group ao qual a conexão pertence. Necessário e limitado a conexões Azure.

spec.azureConfiguration.vNetName

Tipo: string

Condicional

Nome da sua rede virtual Azure. Necessário e limitado a conexões Azure.

spec.gcpConfiguration.gcpProjectId

Tipo: string

Condicional

Nome do seu projeto do Google Cloud Platform. Necessário e limitado a conexões do Google Cloud Platform.

spec.gcpConfiguration.networkName

Tipo: string

Condicional

Nome da sua rede do Google Cloud Platform. Necessário e limitado a conexões do Google Cloud Platform.

Voltar

AtlasNetworkContainer

Nesta página