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

Esta sección describe los parámetros de AtlasNetworkPeering disponibles en esta definición de recurso personalizado.

metadata.name

Tipo: string

Requerido

Nombre que el Recurso personalizadoAtlasNetworkPeering utiliza para añadir esta conexión peering de red a un proyecto.

metadata.namespace

Tipo: string

Opcional

Namespace en el que se desea contener el recurso personalizado atlasNetworkPeering. Si no se especifica, Atlas Kubernetes Operator utiliza el espacio de nombres actual establecido por kubectl.

spec.connectionSecret.name

Tipo: string

Condicional

Nombre del secretoopaco que contiene el Identificador de la Organización y claves API que el Atlas Kubernetes Operator utiliza para conectarse a Atlas. Si no se especifica, Atlas Kubernetes Operator establece por defecto una de las siguientes opciones:

  • El parámetro spec.connectionSecretRef.name de la matriz principal atlasProject

  • El secreto predeterminado global, si no ha definido el spec.connectionSecretRef.name para el padre atlasProject

Este parámetro es necesario para CRD independientes.

El Atlas Kubernetes Operator supervisa los secretos solo con la etiqueta atlas.mongodb.com/type=credentials para evitar la supervisión de secretos innecesarios.

El siguiente ejemplo etiqueta un secreto:

kubectl label secret the-user-password atlas.mongodb.com/type=credentials
spec.containerRef.id

Tipo: string

Condicional

Si este recurso representa una nueva conexión de interconexión de red, omita este parámetro.

ID del contenedor de emparejamiento de red existente. Indica este campo solo si deseas que este recurso gestione una conexión peering de red existente dentro del Atlas Kubernetes Operator. Si prefieres que este recurso empiece a gestionar un recurso local de Kubernetes, utiliza el parámetro spec.containerRef.name.

spec.containerRef.name

Tipo: string

Condicional

Nombre de un contenedor de red de emparejamiento existente que administras con un recurso local de Kubernetes en tu espacio de nombres del Proyecto. Proporciona este campo solo si deseas que este recurso gestione un recurso local de Kubernetes. Si prefieres que este recurso comience a gestionar una conexión peering de red que ya esté gestionada por Atlas Kubernetes Operator, utiliza el parámetro spec.containerRef.id. Si este recurso representa una nueva conexión peering de red, omita este campo.

spec.externalProjectRef.id

Tipo: string

Condicional

ID del Proyecto al que pertenece la conexión peering de red. Debes especificar el ID del grupo de un Proyecto de Atlas existente. Debes especificar este parámetro para conexiones de emparejamiento de red que pertenecen a proyectos gestionados por:

  • Una instancia diferente de Atlas Kubernetes Operator

  • Herramientas distintas del Atlas Kubernetes Operator

Para implementaciones que pertenezcan a proyectos gestionados por la misma instancia del Atlas Kubernetes Operator, utiliza spec.projectRef.name. Estos parámetros se excluyen mutuamente entre sí.

Una conexión de interconexión de red solo puede pertenecer a un proyecto. Para definir la misma conexión de interconexión de red para varios proyectos, cree definiciones de recursos personalizadas para cada proyecto.

spec.projectRef.name

Tipo: string

Condicional

Nombre del proyecto al que pertenece la conexión de interconexión de red. Debe especificar un recurso personalizado existente. Este parámetro solo se aplica a las conexiones de interconexión de red que pertenecen a proyectos administrados por la misma instancia del operador de Kubernetes de AtlasProject Atlas.

Para implementaciones que pertenecen a proyectos administrados por:

  • una instancia diferente de Atlas Kubernetes Operator

  • herramientas distintas de Atlas Kubernetes Operator

use spec.externalProjectRef.id. Estos parámetros se excluyen mutuamente.

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.

spec.projectRef.namespace

Tipo: string

Condicional

Espacio de nombres en el que existe el AtlasProject Recurso personalizado especificado en spec.projectRef.name.

No configure este parámetro para implementaciones que pertenezcan a proyectos administrados por:

  • una instancia diferente de Atlas Kubernetes Operator

  • herramientas distintas de Atlas Kubernetes Operator

spec.id

Tipo: string

Condicional

Identificador único de la conexión peering de red existente en Atlas. Este parámetro es obligatorio y se limita a escenarios en los que Atlas Kubernetes Operator asume la gestión de una conexión peering de red preexistente.

spec.provider

Tipo: string

Requerido

Proveedor de nube con el que establecer una conexión de emparejamiento VPC. Debe ser uno de los siguientes:

  • AWS

  • Azure

  • GCP

spec.awsConfiguration.accepterRegionName

Tipo: string

Condicional

Región de AWS en la que se debe establecer una conexión de emparejamiento VPC. Requerido y limitado a conexiones AWS.

spec.awsConfiguration.awsAccountId

Tipo: string

Condicional

Identificador único de la cuenta de AWS a la que pertenece la conexión. Requerido y limitado a conexiones de AWS.

spec.awsConfiguration.routeTableCidrBlock

Tipo: string

Condicional

Bloque CIDR de tu AWS VPC. Requerido y limitado a conexiones AWS.

spec.awsConfiguration.vpcId

Tipo: string

Condicional

Identificador único de tu AWS VPC. Requerido para y limitado a conexiones AWS.

spec.azureConfiguration.azureDirectoryId

Tipo: string

Condicional

Identificador único de tu directorio de Azure. Requerido y limitado para las conexiones de Azure.

spec.azureConfiguration.azureSubscriptionId

Tipo: string

Condicional

Identificador único de su suscripción de Azure. Obligatorio y limitado a las conexiones de Azure.

spec.azureConfiguration.resourceGroupName

Tipo: string

Condicional

Nombre del Grupo de Recursos de Azure al que pertenece la conexión. Requerido para y limitado a conexiones Azure.

spec.azureConfiguration.vNetName

Tipo: string

Condicional

Nombre de su Azure Red virtual. Obligatorio y limitado a las conexiones de Azure.

spec.gcpConfiguration.gcpProjectId

Tipo: string

Condicional

Nombre de tu proyecto Google Cloud Google. Requerido y limitado a conexiones de Google Cloud.

spec.gcpConfiguration.networkName

Tipo: string

Condicional

Nombre de tu red de Google Cloud. Requerido y limitado a conexiones de Google Cloud.

Next

Overview

En esta página