Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
/ / /

AtlasNetworkPeering Recurso personalizado

Importante

Los subrecursos heredados quedan obsoletos a partir del lanzamiento de sus CRD correspondientes. Si su configuración actualmente utiliza el formato de subrecurso de esta definición de recurso, migrar a un CRD.

El AtlasNetworkPeering recurso personalizado define una conexión peering de red para un Proyecto de Atlas. Las conexiones peering de red aíslan el tráfico de las redes públicas para mayor seguridad.

Importante

Recursos personalizados ya no borran objetos por defecto

  • Atlas Kubernetes Operator uses custom resource archivos de configuración to manage your Atlas configuration, but as of Atlas Kubernetes Operator 2.0, custom resources you borrar in Kubernetes are no longer (por defecto) borrados in Atlas. En su lugar, Atlas Kubernetes Operator simplemente deja de gestionar esos recursos en Atlas. Por ejemplo, si eliminas un AtlasProject Custom recurso en Kubernetes, de forma predeterminada, el Atlas Kubernetes Operator ya no elimina automáticamente el Proyecto correspondiente de Atlas. Este cambio de comportamiento está diseñado para ayudar a prevenir eliminaciones accidentales o inesperadas. Para saber más, incluido cómo revertir este comportamiento al por defecto utilizado antes de Atlas Kubernetes Operator 2.0, consulta Nuevo valor por defecto: Protección de Eliminación en Atlas Kubernetes Operator 2.0.

    De manera similar, Atlas Kubernetes Operator no elimina equipos de Atlas si los elimina de un proyecto Atlas en Kubernetes con Atlas Kubernetes Operator.

  • Define explícitamente los detalles de configuración que deseas para evitar el uso implícito de los valores de configuración por defecto de Atlas. En algunos casos, heredar los valores por defecto de Atlas puede crear un ciclo de conciliación que impida que el recurso personalizado alcance un estado de READY. Por ejemplo, definir explícitamente el comportamiento de escalado automático deseado en el recurso personalizado AtlasDeployment, como se muestra en el ejemplo incluido, garantiza que un tamaño de instancia estático en el recurso personalizado no se aplique repetidamente a una implementación de Atlas que tiene el escalado automático habilitado.

    autoScaling:
    diskGB:
    enabled: true
    compute:
    enabled: true
    scaleDownEnabled: true
    minInstanceSize: M30
    maxInstanceSize: M40

El operador de Atlas Kubernetes realiza una de las siguientes acciones utilizando Atlas Recurso API de emparejamiento de red:

  • Crea una nueva conexión peering de red.

  • Actualiza una conexión de intercambio de redes existente.

Nota

Una conexión peering de red solo puede pertenecer a un Proyecto. Para definir la misma conexión peering de red para varios Proyectos, crea definiciones de recursos personalizadas para cada Proyecto.

Los siguientes ejemplos ilustran las configuraciones para los AtlasNetworkPeering CRDs.

  • La configuración básica de ejemplo define un recurso que gestionas con la misma instancia del Atlas Kubernetes Operator con la que gestionas su proyecto padre de Atlas.

  • El ejemplo CRD independiente configura el mismo Conexiónde emparejamiento de VPC como ejemplo básico, pero para un proyecto Atlas que administra fuera de la instancia de Atlas Kubernetes Operator con la que administra la conexión de emparejamiento de VPC.

El siguiente ejemplo muestra un recurso personalizado AtlasNetworkPeering que define la conexión green-leaf-peering entre el proyecto my-project VPC y tu AWS VPC. Para administrar este recurso en la misma instancia del Atlas Kubernetes Operator que el Proyecto principal de Atlas, se debe identificar el Proyecto con projectRef en 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

El siguiente ejemplo muestra un AtlasNetworkPeering CRD independiente que configura la misma conexión de emparejamiento de VPC definida por el Ejemplo básico. Para permitir la gestión de recursos de forma independiente del proyecto principal, debes usar un externalProjectRef en lugar de un projectRef, y debes proporcionar un connectionSecret directamente, ya que este recurso no puede heredar credenciales de API de su proyecto principal.

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 es el esquema para la API AtlasNetworkPeering

Name
Tipo
Descripción
Requerido

apiVersion

string

atlas.mongodb.com/v1

true

kind

string

AtlasNetworkPeering

true

metadata

Objeto

Consulte la documentación de Kubernetes API para conocer los campos del campo metadata.

true

spec

Objeto

AtlasNetworkPeeringSpec define el estado objetivo de AtlasNetworkPeering. Validaciones:

  • (has(self.``externalProjectRef``) && !has(self.``projectRef``)) || (!has(self.``externalProjectRef``) && has(self.``projectRef``)): debe definir solo una referencia de proyecto a través de externalProjectRef o projectRef

  • (tiene(self.``externalProjectRef``) && tiene(self.``connectionSecret``)) || !tiene(self.``externalProjectRef``): debe definir un secreto de conexión local cuando se referencia un proyecto externo

  • (has(self.``containerRef``.name) && !has(self.``containerRef``.id)) || (!has(self.``containerRef``.name) && tiene(self.``containerRef``.id)): debe tener un identificador de Atlas de contenedor o un nombre de Kubernetes, pero no ambos (ni ninguno)

  • (self.``containerRef``.name == oldSelf.``containerRef``.name) || (!has(self.``containerRef``.name) && !has(oldSelf.``containerRef``.name)): el nombre de referencia del contenedor es inmutable

  • (self.``containerRef``.id == oldSelf.``containerRef``.id) || (!has(self.``containerRef``.id) && !has(oldSelf.``containerRef``.id)): el ID de ref del contenedor es inmutable

  • (self.id == oldSelf.id) || (!has(self.id) && !has(oldSelf.id)): la id es inalterable

false

status

Objeto

AtlasNetworkPeeringStatus es un(a) status para el AtlasNetworkPeering recurso personalizado. No el incluido en el AtlasProject

false

AtlasNetworkPeeringSpec define el estado objetivo de AtlasNetworkPeering.

Name
Tipo
Descripción
Requerido

containerRef

Objeto

ContainerDualReference se refiere a un contenedor de red ya sea por el nombre de Kubernetes o Atlas ID.

true

provider

enum

Nombre del servicio en la nube provider para el cual desea crear el servicio de emparejamiento de red. Enumeración: AWS, GCP, AZURE

true

awsConfiguration

Objeto

AWSConfiguration son los ajustes específicos de AWS para el emparejamiento de red.

false

azureConfiguration

Objeto

AzureConfiguration son los ajustes específicos de Azure para el emparejamiento de redes.

false

connectionSecret

Objeto

Nombre del secreto que contiene las claves privadas y las llaves públicas de Atlas API.

false

externalProjectRef

Objeto

externalProjectRef mantiene el proyecto principal de Atlas ID. Mutuamente excluyentes con el campo "projectRef".

false

gcpConfiguration

Objeto

GCPConfiguration es la configuración específica de Google Cloud para el emparejamiento de redes.

false

id

string

ID es el identificador de emparejamiento para un emparejamiento de red ya existente que será gestionado por el operador. Este campo es inmutable.

false

projectRef

Objeto

projectRef es una referencia al recurso principal AtlasProject. Mutuamente excluyentes con el campo "externalProjectRef".

false

ContainerDualReference se refiere a un Contenedor de Red, ya sea por el nombre de Kubernetes o por el ID de Atlas.

Name
Tipo
Descripción
Requerido

id

string

ID es el identificador Atlas del recurso Network Container Atlas del que depende esta conexión de emparejamiento. Usar el nombre o ID, pero no ambos.

false

name

string

Nombre del recurso contenedor de Kubernetes, debe estar presente en el mismo namespace. Utilice name o ID, no ambos.

false

AWSConfiguration es la configuración específica de AWS para el emparejamiento de redes.

Name
Tipo
Descripción
Requerido

accepterRegionName

string

AccepterRegionName es el nombre de la región del proveedor de la vpc del usuario en el formato de región nativa de AWS.

true

awsAccountId

string

AccountID del vpc del usuario.

true

routeTableCidrBlock

string

Usuario VPC CIDR.

true

vpcId

string

AWS VPC ID.

true

AzureConfiguration son los ajustes específicos de Azure para el emparejamiento de redes.

Name
Tipo
Descripción
Requerido

azureDirectoryId

string

AzureDirectoryID es el identificador único de un directorio de Azure AD.

true

azureSubscriptionId

string

AzureSubscriptionID es el identificador único de la suscripción de Azure en la que reside la red virtual.

true

resourceGroupName

string

ResourceGroupName es el nombre de su grupo de recursos de Azure.

true

vNetName

string

VNetName es el nombre de su red virtual de Azure. Solo se aplica a Azure.

true

Nombre del secreto que contiene las claves privadas y públicas de la API de Atlas.

externalProjectRef contiene el ID del proyecto principal de Atlas. Mutuamente exclusivo con el campo 'projectRef'.

Name
Tipo
Descripción
Requerido

id

string

ID es el proyecto Atlas ID.

true

GCPConfiguration es la configuración específica de Google Cloud para el emparejamiento de redes.

Name
Tipo
Descripción
Requerido

gcpProjectId

string

Usuario GCP Proyecto ID. Aplica solo para GCP.

true

networkName

string

GCP Nombre del par de la red. Aplica solo para GCP.

true

projectRef es una referencia al recurso padre AtlasProject. Mutuamente excluyente con el campo "externalProjectRef".

Name
Tipo
Descripción
Requerido

name

string

Nombre del recurso de Kubernetes

true

namespace

string

namespace del recurso de Kubernetes

false

AtlasNetworkPeeringStatus es un estado para el recurso personalizado AtlasNetworkPeering. No es el que se incluye en el AtlasProject

Name
Tipo
Descripción
Requerido

conditions

[]objeto

Condiciones es la lista de estados que muestra el estado actual del recurso personalizado de Atlas

true

awsStatus

Objeto

AWSStatus contiene AWS solo información de estado relacionada

false

azureStatus

Objeto

AzureStatus contiene solo información de estado relacionada con Azure

false

gcpStatus

Objeto

GCPStatus contiene GCP solo información de estado relacionada

false

id

string

ID registra la identificación del peer creado por Atlas

false

observedGeneration

entero

ObservedGeneration indica la generación de la especificación del recurso de la que el operador Atlas tiene conocimiento. El operador de Atlas actualiza este campo al valor de 'metadatos.generation' tan pronto como comience la conciliación del recurso. Formato: int64

false

status

string

El estado describe el último status visto para la configuración de emparejamiento de red

false

La condición describe el estado de un recurso personalizado de Atlas en un momento determinado.

Name
Tipo
Descripción
Requerido

status

string

Estado de la condición; uno de Verdadero, Falso, Desconocido.

true

type

string

Tipo de condición de recursos personalizados de Atlas.

true

lastTransitionTime

string

Última vez que la condición cambió de un estado a otro. Representado en ISO 8601 formato. Formato: fecha y hora.

false

message

string

Un message que proporciona detalles sobre la transición.

false

reason

string

El reason para la última transición de la condición.

false

AWSStatus contiene únicamente información de estado relacionada con AWS

Name
Tipo
Descripción
Requerido

connectionId

string

ConnectionID es la AWS VPC conexión de emparejamiento ID

false

vpcId

string

VpcID es AWS VPC id del lado de Atlas

false

AzureStatus contiene información de estado exclusiva de Azure

Name
Tipo
Descripción
Requerido

azureSubscriptionIDpcId

string

AzureSubscriptionID Es el id de suscripción de Azure en el lado de Atlas

false

vNetName

string

VnetName es la red Azure en el lado de Atlas

false

GCPStatus contiene información de estado relacionada únicamente con GCP

Name
Tipo
Descripción
Requerido

gcpProjectID

string

GCPProjectID es GCP proyecto en el lado de Atlas

false

networkName

string

NetworkName es GCP red en el lado de Atlas

false

Volver

Contenedor de red Atlas

En esta página