Importante
Os subrecursos legados são preteridos a partir do lançamento de seus CRDs correspondentes. Se sua configuração depender atualmente da forma de subrecurso dessa 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
AtlasProjectRecurso 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 personalizadoAtlasDeployment, 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
Atlas Kubernetes Operator does one of the following actions using the Atlas Network Peering API Resource:
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.
Exemplos
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 emparelhamento de VPC 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 a conexão de emparelhamento de VPC.
Exemplo básico
O exemplo a seguir mostra um recurso personalizado AtlasNetworkPeering que define a conexão green-leaf-peering entre o projeto my-project VPC e sua AWS VPC. Para gerenciar este 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
Exemplo de CRD independente
The following example shows an AtlasNetworkPeering independent CRD that configures the same VPC peering connection defined by the Basic Example. To enable resource management independent of the parent project, you must use an externalProjectRef instead of a projectRef, and you must supply a connectionSecret directly since this resource can't inherit API credentials from its parent project.
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
Parâmetros
AtlasNetworkPeering
AtlasNetworkPeering é o esquema para a API AtlasNetworkPeering
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | atlas.mongodb.com/v1 | true |
| string |
| true |
| objeto | Consulte a documentação do Kubernetes | true |
| objeto |
| false |
| objeto |
| false |
AtlasNetworkPeering.spec
AtlasNetworkPeeringSpec define o estado de destino do AtlasNetworkPeering.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objeto |
| true |
| enum | Nome do serviço de nuvem | true |
| objeto | AWSConfiguration são as configurações especÃficas do | false |
| objeto |
| false |
| objeto | Nome do segredo contendo as chaves privada e pública do Atlas | false |
| objeto |
| false |
| objeto | GCPConfiguration são as configurações especÃficas do Google Cloud para emparelhamento de rede. | false |
| string |
| false |
| objeto |
| false |
AtlasNetworkPeering.spec.containerRef
ContainerDualReference refere-se a um contêiner de rede pelo nome Kubernetes ou ID Atlas.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| false |
| string | O nome do recurso contêiner Kubernetes deve estar presente no mesmo namespace. Use | false |
AtlasNetworkPeering.spec.awsConfiguration
AWSConfiguration são as configurações especÃficas da AWS para emparelhamento de rede.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| true |
| string |
| true |
| string | Usuário | true |
| string |
| true |
AtlasNetworkPeering.spec.azureConfiguration
AzureConfiguration são as configurações especÃficas do Azure para emparelhamento de rede.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| true |
| string |
| true |
| string |
| true |
| string | VNetName é o nome da sua VNet do Azure. É aplicável apenas ao Azure. | true |
AtlasNetworkPeering.spec.connectionSecret
Nome do segredo que contém as chaves privadas e públicas da Atlas API.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasNetworkPeering.spec.externalProjectRef
externalProjectRef contém o ID do grupo pai do Atlas. Mutualmente exclusivo com o campo"projectRef".
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| true |
AtlasNetworkPeering.spec.gcpConfiguration
GCPConfiguration são as configurações especÃficas do Google Cloud para emparelhamento de rede.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Usuário | true |
| string |
| true |
AtlasNetworkPeering.spec.projectRef
projectRef é uma referência ao recurso pai AtlasProject. Mutualmente exclusivo com o campo"externalProjectRef".
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do Recurso Kubernetes | true |
| string | Namespace do Recurso Kubernetes | false |
AtlasNetworkPeering.status
AtlasNetworkPeeringStatus é um status para o recurso personalizado AtlasNetworkPeering. Não aquele incluÃdo no AtlasProject
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| [] objeto | Condições é a lista de status que mostra o estado atual do Recurso Personalizado do Atlas | true |
| objeto | AWSStatus contém apenas informações de status relacionadas a | false |
| objeto |
| false |
| objeto | O GCPStatus contém apenas informações de status relacionadas a | false |
| string |
| false |
| inteiro |
| false |
| string | O status descreve o último | false |
AtlasNetworkPeering.status. conditions
A condição descreve o estado de um recurso personalizado do Atlas em um determinado ponto.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Status da condição; um de verdadeiro, falso, desconhecido. | true |
| string | Tipo de condição do Atlas recurso. | true |
| string | Última vez que a condição fez a transição de um status para outro. Representado no formato | false |
| string | Um | false |
| string | O | false |
AtlasNetworkPeering.status.awsStatus
AWSStatus contém apenas informações de status relacionadas à AWS
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| false |
| string |
| false |
AtlasNetworkPeering.status.azureStatus
O AzureStatus contém informações de status relacionadas apenas ao Azure
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| false |
| string |
| false |
AtlasNetworkPeering.status.gcpStatus
GCPStatus contém informações de status relacionadas apenas ao GCP
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | GCPProjectID é | false |
| string |
| false |