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 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 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
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 pontos de extremidade privados no Atlas Kubernetes Operator, consulte Gerenciar pontos de extremidade privados.
Exemplos
Exemplo básico
O exemplo a seguir mostra um AtlasPrivateEndpoint recurso personalizado que define um endpoint privadoda Amazon Web Services 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
Exemplo de CRD independente
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: externalProjectRef: projectID: 66e2f2b621571b7e69a89b66 connectionSecret: name: atlas-connection-secret provider: AWS region: US_EAST_1 awsConfiguration: - id: vpcpe-xyz
Parâmetros
Pontos de extremidade privados do Atlas
A definição de recurso personalizado (CRD) AtlasPrivateEndpoint define uma configuração desejada de ponto de extremidade privado para um projeto do Atlas. Ele permite uma conexão privada entre o provedor de nuvem e o Atlas que não envia informações por meio de uma rede pública.
Você pode usar pontos de extremidade privados para criar uma conexão unidirecional com os clusters do Atlas a partir da sua rede virtual.
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 |
AtlasPrivateEndpoint.spec
AtlasPrivateEndpointSpec é a especificação da configuração desejada de um ponto de extremidade privado do projeto
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| enum | Nome do serviço de nuvem | true |
| string | Região do provedor de nuvem escolhido na qual você deseja criar o serviço de ponto de extremidade privado. | 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 os pontos de extremidade privados. | false |
| objeto |
| false |
AtlasPrivateEndpoint.spec.awsConfiguration
AWSPrivateEndpointConfiguration mantém a configuração AWS feita na rede do cliente .
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| true |
AtlasPrivateEndpoint.spec.azureConfiguration
AzurePrivateEndpointConfiguration mantém a configuração do Azure feita na rede do cliente .
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| true |
| string |
| true |
AtlasPrivateEndpoint.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/work-with-objects/names/#names | true |
AtlasPrivateEndpoint.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 |
AtlasPrivateEndpoint.spec.gcpConfiguration
GCPPrivateEndpointConfiguration mantém a configuração GCP feita na rede do cliente .
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| [] objeto | Pontos de extremidade é a lista de | true |
| string |
| true |
| string |
| true |
AtlasPrivateEndpoint.spec.gcpConfiguration.pontos de extremidade
O GCPPrivateEndpoint mantém as regras de encaminhamento do GCP configuradas na rede do cliente .
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| true |
| string | Nome que identifica a regra de encaminhamento do consumidor do Google Cloud que você criou. | true |
AtlasPrivateEndpoint.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 |
AtlasPrivateEndpoint.status
AtlasPrivateEndpointStatus é o status observado mais recente do cluster AtlasPrivateEndpoint. Somente leitura.
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 | Os pontos de extremidade são o status do | false |
| string | Erro é a descrição da falha ao configurar os pontos de extremidade privados | false |
| inteiro |
| false |
| string |
| false |
| []string |
| false |
| string |
| false |
| string |
| false |
| string |
| false |
AtlasPrivateEndpoint.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 |
AtlasPrivateEndpoint.status.pontos de extremidade
EndpointInterfaceStatus é o status observado mais recente das interfaces conectadas ao serviço configurado. Somente leitura.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| false |
| string |
| false |
| string |
| false |
| string | Erro é a descrição da falha ao configurar os pontos de extremidade privados | false |
| [] objeto | GCPForwardingRules é o status dos pontos de extremidade privados | false |
AtlasPrivateEndpoint.status.pontos de extremidade.gcpForwardingRules
GCPForwardingRule é o status observado mais recente que as regras de encaminhamento do GCP configuraram para uma interface. Somente leitura.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Rótulo legível por humanos que identifica a regra de encaminhamento do consumidor do Google Cloud que você criou. | false |
| string | Estado do | false |