Docs Menu
Docs Home
/ /
Acceso al Atlas
/ / /

Configurar el peering de red

Nota

  • Esta función no está disponible para M0 clústeres y Flex clústeres.

Atlas admite conexiones de interconexión de redes para clústeres dedicados alojados en AWS, Google Cloud y Azure, y en clústeres fragmentados de múltiples nubes.

El emparejamiento de red establece una conexión privada entre la VPC de Atlas y la VPC del proveedor de nube. La conexión aísla el tráfico de las redes públicas para aumentar la seguridad.

Atlas no admite el intercambio de redes entre clústeres implementados en una sola región en diferentes proveedores de nube.

Para administrar sus conexiones de interconexión de red con Atlas Kubernetes Operator, puede especificar y actualizar spec.networkPeers Parámetro para el AtlasProject recurso personalizado. Cada vez que se modifica el spec campo en cualquiera de los recursos personalizados compatibles, Atlas Kubernetes Operator crea o actualiza la configuración de Atlas correspondiente.

Para configurar el emparejamiento de red mediante Atlas Kubernetes Operator, necesita:

  • Un clúster de Kubernetes en ejecución con Atlas Kubernetes Operator implementado.

  • El Project Owner rol o Organization Owner en Atlas.

  • Si aún no lo ha hecho, cree su VPC en AWS. Para obtener más información, consulte Introducción a Amazon VPC.

  • Una regla de tráfico de red para el tráfico saliente.

    Cree la siguiente regla de tráfico de red en su grupo de seguridad AWS adjunto a sus recursos que se conectan a Atlas:

    Permiso
    Instrucciones
    Puerto
    Objetivo

    Permitir

    saliente

    27015-27017 inclusive

    al CIDRde Atlas

  • Un clúster de Kubernetes en ejecución con Atlas Kubernetes Operator implementado.

  • El Project Owner rol o Organization Owner en Atlas.

  • Si aún no lo ha hecho, cree su red virtual en Azure. Para obtener más información, consulte Crear una red virtual mediante Azure Portal.

  • Roles de Azure necesarios para configurar una conexión de emparejamiento de red.

    Para obtener más información, consulta los permisos de Windows Permisos de Azure.

  • Una entidad de servicio para el ID de la aplicación de intercambio de tráfico de Atlas.

    Nota

    Para obtener detalles sobre cómo Atlas crea conexiones de emparejamiento de red con VPCde Azure,Azure consulte la pestaña en Configurar una conexión de emparejamiento de red.

    Debe completar los siguientes pasos antes de crear cada conexión de emparejamiento de red de Azure:

    1. Ejecute el siguiente comando de la CLI de Azure para crear una entidad de servicio mediante el identificador de aplicación de emparejamiento de Atlas especificado:

      az ad sp create --id e90a1407-55c3-432d-9cb1-3638900a9d22

      Solo tiene que hacer esto una vez por cada suscripción. Si recibe el siguiente mensaje, la entidad de servicio con el ID de la aplicación de emparejamiento de Atlas ya existe. Continúe con el siguiente paso.

      Another object with the same value for property servicePrincipalNames already exists.
    2. Copie el siguiente archivo de ejemplo peering-role.json y guárdelo en su directorio de trabajo actual:

      1{
      2 "Name":"AtlasPeering/<azureSubscriptionId>/<resourceGroupName>/<vnetName>",
      3 "IsCustom":true,
      4 "Description":"Grants MongoDB access to manage peering connections on network /subscriptions/<azureSubscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/virtualNetworks/<vnetName>",
      5 "Actions":[
      6 "Microsoft.Network/virtualNetworks/virtualNetworkPeerings/read",
      7 "Microsoft.Network/virtualNetworks/virtualNetworkPeerings/write",
      8 "Microsoft.Network/virtualNetworks/virtualNetworkPeerings/delete",
      9 "Microsoft.Network/virtualNetworks/peer/action"
      10 ],
      11 "AssignableScopes":[
      12 "/subscriptions/<azureSubscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/virtualNetworks/<vnetName>"
      13 ]
      14}
    3. Reemplace las variables en peering-role.json con detalles sobre la red virtual de Azure a la que desea crear una conexión de emparejamiento:

      Variable
      Descripción

      azureSubscriptionId

      Identificador único de la suscripción de Azure en la que reside la red virtual.

      resourceGroupName

      Nombre de su grupo de recursos de Azure.

      vnetName

      Nombre de su red virtual de Azure.

    4. Ejecute el siguiente comando de la CLI de Azure para crear la definición de rol mediante el archivo peering-role.json:

      az role definition create --role-definition peering-role.json
    5. Ejecute el comando CLI de Azure que se muestra a continuación para asignar el rol que creó a la entidad de servicio.

      Reemplace las variables con los mismos valores que utilizó en el archivo peering-role.json.

      az role assignment create \
      --role "AtlasPeering/<azureSubscriptionId>/<resourceGroupName>/<vnetName>" \
      --assignee "e90a1407-55c3-432d-9cb1-3638900a9d22" \
      --scope "/subscriptions/<azureSubscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/virtualNetworks/<vnetName>"

Permite que los clientes se conecten a los clústeres de Atlas mediante una conexión peering de red con el siguiente procedimiento:

1

Puede configurar el peering de red para utilizar un contenedor existente o uno nuevo.

  1. Especifique el parámetro spec.networkPeers AtlasProject en el recurso personalizado. Reemplace los siguientes marcadores de posición con sus valores:

    Marcador de posición
    Descripción

    spec.networkPeers.providerName

    Nombre del proveedor de la nube. Especifique AWS.

    spec.networkPeers.containerId

    Identificador único del contenedor de interconexión de red que desea utilizar. Si no especifica containerId, debe configurar atlasCIDRblock. Para obtener más información, consulte Create New Container sección de este procedimiento.

    spec.networkPeers.accepterRegionName

    Región de AWS para su VPC.

    spec.networkPeers.awsAccountId

    Identificador único para tu cuenta de AWS. AWS muestra el ID de la cuenta cuando haces clic en el nombre de la cuenta en la esquina superior derecha de la página de inicio de la consola.

    spec.networkPeers.routeTableCidrBlock

    Bloque CIDR para su VPC de AWS. AWS muestra el bloque CIDR en la página de detalles de su VPC.

    spec.networkPeers.vpcId

    Identificador único de su VPC de AWS. AWS muestra el ID de VPC en la página de detalles de su VPC.

  2. Ejecuta el siguiente comando:

    cat <<EOF | kubectl apply -f -
    apiVersion: atlas.mongodb.com/v1
    kind: AtlasProject
    metadata:
    name: my-project
    spec:
    name: Test Atlas Operator Project
    networkPeers:
    - providerName: "AWS"
    containerID: "6dc5f17280eef56a459fa3fb"
    accepterRegionName: "us-east-2"
    awsAccountId: "12345678"
    routeTableCidrBlock: "10.0.0.0/24"
    vpcId: "vpc-12345678"
    EOF
  1. Especifique el parámetro spec.networkPeers AtlasProject en el recurso personalizado. Reemplace los siguientes marcadores de posición con sus valores:

    Marcador de posición
    Descripción

    spec.networkPeers.providerName

    Nombre del proveedor de la nube. Especifique AWS.

    spec.networkPeers.atlasCidrBlock

    Bloque CIDR de Atlas para el que Atlas Kubernetes Operator crea un nuevo contenedor. Si no especificas atlasCidrBlock, debes especificar el containerId de un contenedor existente. Para aprender más, consulta la sección Use Existing Container de este procedimiento.

    spec.networkPeers.containerRegion

    (Opcional) Región de AWS en la que Atlas Kubernetes Operator crea un nuevo contenedor. Si no especifica containerRegion containerIdni, Atlas Kubernetes Operator crea un nuevo contenedor en la misma región accepterRegionName que.

    spec.networkPeers.accepterRegionName

    Región de AWS para su VPC.

    spec.networkPeers.awsAccountId

    Identificador único para tu cuenta de AWS. AWS muestra el ID de la cuenta cuando haces clic en el nombre de la cuenta en la esquina superior derecha de la página de inicio de la consola.

    spec.networkPeers.routeTableCidrBlock

    Bloque CIDR para su VPC de AWS. AWS muestra el bloque CIDR en la página de detalles de su VPC.

    spec.networkPeers.vpcId

    Identificador único de su VPC de AWS. AWS muestra el ID de VPC en la página de detalles de su VPC.

  2. Ejecuta el siguiente comando:

    cat <<EOF | kubectl apply -f -
    apiVersion: atlas.mongodb.com/v1
    kind: AtlasProject
    metadata:
    name: my-project
    spec:
    name: Test Atlas Operator Project
    networkPeers:
    - providerName: "AWS"
    atlasCidrBlock: "10.8.0.0/21"
    containerRegion: "us-west-1"
    accepterRegionName: "us-east-2"
    awsAccountId: "12345678"
    routeTableCidrBlock: "10.0.0.0/24"
    vpcId: "vpc-12345678"
    EOF
2
  1. Ejecuta el siguiente comando:

    kubectl get atlasprojects my-project -o=jsonpath='{.status.networkPeers.statusName}'
    WAITING FOR USER
  2. Si el valor statusName es WAITING FOR USER, continúe con el siguiente paso. Si el valor statusName no es WAITING FOR USER, espere unos minutos y vuelva a intentarlo.

3

Para obtener más información, consulte Aceptar una conexión de emparejamiento de VPC.

4

Ejecute el siguiente comando nuevamente para verificar el estado de la conexión de VPC. El operador de Kubernetes de Atlas devuelve READY cuando se completa la conexión de interconexión de red.

kubectl get atlasprojects my-project -o=jsonpath='{.status.networkPeers.statusName}'
READY
1

Puede configurar el peering de red para utilizar un contenedor existente o uno nuevo.

  1. Especifique el parámetro spec.networkPeers AtlasProject en el recurso personalizado. Reemplace los siguientes marcadores de posición con sus valores:

    Marcador de posición
    Descripción

    spec.networkPeers.providerName

    Nombre del proveedor de la nube. Especifique AZURE.

    spec.networkPeers.containerId

    Identificador único del contenedor de interconexión de red que desea utilizar. Si no especifica containerId, debe configurar atlasCIDRblock. Para obtener más información, consulte la sección Create New Container de este procedimiento.

    spec.networkPeers.accepterRegionName

    Región de Azure para su VPC.

    spec.networkPeers.azureSubscriptionId

    Identificador único de su suscripción de Azure. Azure muestra el identificador de la suscripción en su página de detalles.

    spec.networkPeers.resourceGroupName

    Etiqueta legible que identifica el grupo de recursos de Azure que contiene la VPC.Azure muestra el nombre del grupo de recursos en su página de detalles.

    spec.networkPeers.azureDirectoryId

    Identificador único de su inquilino de Azure Active Directory. Azure lo muestra como Tenant ID en la página de propiedades del inquilino.

    spec.networkPeers.vnetName

    Etiqueta legible que identifica su red virtual de Azure. Azure muestra el nombre de la red virtual en su página de detalles.

  2. Ejecuta el siguiente comando:

    cat <<EOF | kubectl apply -f -
    apiVersion: atlas.mongodb.com/v1
    kind: AtlasProject
    metadata:
    name: my-project
    spec:
    name: Test Atlas Operator Project
    networkPeers:
    - providerName: "AZURE"
    containerID: "6dc5f17280eef56a459fa3fb"
    accepterRegionName: "us-east-2"
    azureSubscriptionId: "12345678"
    resourceGroupName: "my-group"
    azureDirectoryId: "x0xxx10-00x0-0x01-0xxx-x0x0x01xx100"
    vnetName: "my-vnet"
    EOF
  1. Especifique el parámetro spec.networkPeers AtlasProject en el recurso personalizado. Reemplace los siguientes marcadores de posición con sus valores:

    Marcador de posición
    Descripción

    spec.networkPeers.providerName

    Nombre del proveedor de la nube. Especifique AZURE.

    spec.networkPeers.atlasCidrBlock

    Bloque CIDR de Atlas para el que Atlas Kubernetes Operator crea un nuevo contenedor. Si no especificas atlasCidrBlock, debes especificar el containerId de un contenedor existente. Para aprender más, consulta la sección Use Existing Container de este procedimiento.

    spec.networkPeers.containerRegion

    (Opcional) Región de Azure en la que Atlas Kubernetes Operator crea un nuevo contenedor. Si no especifica containerRegion containerIdni, Atlas Kubernetes Operator crea un nuevo contenedor en la misma región accepterRegionName que.

    spec.networkPeers.accepterRegionName

    Región de Azure para su VPC.

    spec.networkPeers.azureSubscriptionId

    Identificador único de su suscripción de Azure. Azure muestra el identificador de la suscripción en su página de detalles.

    spec.networkPeers.resourceGroupName

    Etiqueta legible que identifica el grupo de recursos de Azure que contiene la VPC.Azure muestra el nombre del grupo de recursos en su página de detalles.

    spec.networkPeers.azureDirectoryId

    Identificador único de su inquilino de Azure Active Directory. Azure lo muestra como Tenant ID en la página de propiedades del inquilino.

    spec.networkPeers.vnetName

    Etiqueta legible que identifica su red virtual de Azure. Azure muestra el nombre de la red virtual en su página de detalles.

  2. Ejecuta el siguiente comando:

    cat <<EOF | kubectl apply -f -
    apiVersion: atlas.mongodb.com/v1
    kind: AtlasProject
    metadata:
    name: my-project
    spec:
    name: Test Atlas Operator Project
    networkPeers:
    - providerName: "AZURE"
    atlasCidrBlock: "10.8.0.0/21"
    containerRegion: "US_WEST"
    azureSubscriptionId: "12345678"
    resourceGroupName: "my-group"
    azureDirectoryId: "x0xxx10-00x0-0x01-0xxx-x0x0x01xx100"
    vnetName: "my-vnet"
    EOF
2

Ejecute el siguiente comando para comprobar el estado de la conexión de VPC. El operador de Kubernetes de Atlas devuelve READY cuando se completa la conexión de interconexión de red.

kubectl get atlasprojects my-project -o=jsonpath='{.status.networkPeers.status}'
READY
1

Puede configurar el peering de red para utilizar un contenedor existente o uno nuevo.

  1. Especifique el parámetro spec.networkPeers AtlasProject en el recurso personalizado. Reemplace los siguientes marcadores de posición con sus valores:

    Marcador de posición
    Descripción

    spec.networkPeers.providerName

    Nombre del proveedor de la nube. Especifique GCP.

    spec.networkPeers.containerId

    Identificador único para el contenedor de emparejamiento de red que deseas usar. Si no especifica containerId, debe establecer atlasCIDRblock y containerRegion. Para aprender más, consulta la sección Create New Container en este procedimiento.

    spec.networkPeers.gcpProjectId

    Identificador único para tu proyecto de Google Cloud. Google Cloud muestra el ID del grupo en la página de detalles del Proyecto.

    spec.networkPeers.routeTableCidrBlock

    Bloque CIDR para tu VPC de Google Cloud. Google Cloud muestra el bloque CIDR en la página de detalles de tu VPC.

    spec.networkPeers.networkName

    Etiqueta legible para tu VPC de Google Cloud. Google Cloud muestra el nombre de la red en la página de detalles de tu VPC.

  2. Ejecuta el siguiente comando:

    cat <<EOF | kubectl apply -f -
    apiVersion: atlas.mongodb.com/v1
    kind: AtlasProject
    metadata:
    name: my-project
    spec:
    name: Test Atlas Operator Project
    networkPeers:
    - providerName: "GCP"
    containerId: "6dc5f17280eef56a459fa3fb"
    gcpProjectId: "12345678"
    networkName: "my-vpc"
    EOF
  1. Especifique el parámetro spec.networkPeers AtlasProject en el recurso personalizado. Reemplace los siguientes marcadores de posición con sus valores:

    Marcador de posición
    Descripción

    spec.networkPeers.providerName

    Nombre del proveedor de la nube. Especifique GCP.

    spec.networkPeers.atlasCidrBlock

    Bloque CIDR de Atlas para el que Atlas Kubernetes Operator crea un nuevo contenedor. Si no especificas atlasCidrBlock, debes especificar el containerId de un contenedor existente. Para aprender más, consulta la sección Use Existing Container de este procedimiento.

    spec.networkPeers.containerRegion

    spec.networkPeers.containerRegion

    Región de Google Cloud en la que el operador de Kubernetes de Atlas crea un nuevo contenedor. Si no containerRegion especifica, debe especificar containerId de un contenedor existente. Para obtener más información, consulte la Use Existing Container sección de este procedimiento.

    spec.networkPeers.gcpProjectId

    Identificador único para tu proyecto de Google Cloud. Google Cloud muestra el ID del grupo en la página de detalles del Proyecto.

    spec.networkPeers.routeTableCidrBlock

    Bloque CIDR para tu VPC de Google Cloud. Google Cloud muestra el bloque CIDR en la página de detalles de tu VPC.

    spec.networkPeers.networkName

    Etiqueta legible para tu VPC de Google Cloud. Google Cloud muestra el nombre de la red en la página de detalles de tu VPC.

  2. Ejecuta el siguiente comando:

    cat <<EOF | kubectl apply -f -
    apiVersion: atlas.mongodb.com/v1
    kind: AtlasProject
    metadata:
    name: my-project
    spec:
    name: Test Atlas Operator Project
    networkPeers:
    - providerName: "GCP"
    atlasCidrBlock: "10.8.0.0/21"
    gcpProjectId: "12345678"
    networkName: "my-vpc"
    EOF
2
  1. Ejecuta el siguiente comando:

    kubectl get atlasprojects my-project -o=jsonpath='{.status.networkPeers.status}'
    PENDING ACCEPTANCE
  2. Si el valor status es PENDING ACCEPTANCE, continúe con el siguiente paso. Si el valor status no es PENDING ACCEPTANCE, espere unos minutos y vuelva a intentarlo.

3

Para obtener más información, consulta Uso de emparejamiento de red de VPC.

4

Ejecute el siguiente comando nuevamente para verificar el estado de la conexión de VPC. El operador de Kubernetes de Atlas devuelve READY cuando se completa la conexión de interconexión de red.

kubectl get atlasprojects my-project -o=jsonpath='{.status.networkPeers.status}'
READY

Volver

Almacenamiento secreto

En esta página