AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

네트워크 피어링 구성

참고

  • 이 기능 M0 클러스터 및 Flex 클러스터에서는 사용할 수 없습니다.

Atlas는 AWS, Google Cloud, Azure에서 호스팅되는 전용 클러스터와 멀티 클라우드 샤딩된 클러스터에 대한 네트워크 피어링 연결을 지원합니다.

네트워크 피어링은 Atlas VPC와 클라우드 공급자의 VPC 간의 비공개 연결을 설정합니다. 이 연결은 보안 강화를 위해 공용 네트워크로부터 트래픽을 격리합니다.

Atlas는 다른 클라우드 제공자의 단일 리전에 배포된 클러스터 사이에 네트워크 피어링을 지원하지 않습니다.

Atlas Kubernetes Operator 사용하여 네트워크 피어링 연결을 관리 하려면 spec.networkPeers 를 지정하고 업데이트 할 수 있습니다. AtlasProject Custom Resource(사용자 지정 리소스)에 대한 매개 변수입니다. 지원되는 사용자 지정 리소스 중 하나에서 spec 필드가 변경될 때마다 Atlas Kubernetes Operator 해당 Atlas 구성을 생성하거나 업데이트 합니다.

Atlas Kubernetes Operator를 사용하여 네트워크 피어링을 구성하려면 다음이 필요합니다.

  • The Project Owner or Organization Owner role in Atlas.

  • 아직 생성하지 않았다면 Azure 에서 VNet을 생성하세요. 자세한 학습 은 Azure Portal을 사용하여 가상 네트워크 만들기를 참조하세요.

  • 네트워크 피어링 연결 을 구성하는 데 필요한 Azure 역할입니다.

    자세한 내용은 Azure 권한을 참조하세요.

  • Atlas 피어링 애플리케이션 ID 에 대한 서비스 주체입니다.

    참고

    For details about how Atlas creates Network Peering connections with Azure VPCs, see the Azure tab in Network Peering.

    각 Azure 네트워크 피어링 연결 을 만들기 전에 다음 단계를 완료해야 합니다.

    1. 다음 Azure CLI 명령을 실행하여 지정된 Atlas 피어링 애플리케이션 ID 를 사용하여 서비스 주체를 만듭니다.

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

      각 구독 에 대해 한 번만 이 작업을 수행하면 됩니다. 다음 메시지가 표시되면 Atlas 피어링 애플리케이션 ID 를 가진 서비스 주체가 이미 존재합니다. 다음 단계로 진행합니다.

      Another object with the same value for property servicePrincipalNames already exists.
    2. 다음 예시 peering-role.json 파일 을 복사하여 현재 작업 디렉토리 에 저장합니다.

      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. peering-role.json 의 변수를 피어링 연결을 만들려는 Azure VNet에 대한 세부 정보로 바꿉니다.

      변수
      설명

      azureSubscriptionId

      VNet이 있는 Azure 구독 의 고유 식별자입니다.

      resourceGroupName

      Azure 리소스 그룹의 이름입니다.

      vnetName

      Azure VNet의 이름입니다.

    4. 다음 Azure CLI 명령을 실행하여 peering-role.json 파일 을 사용하여 역할 정의를 만듭니다.

      az role definition create --role-definition peering-role.json
    5. 아래에 표시된 Azure CLI 명령을 실행하여 생성한 역할 을 서비스 주체에 할당합니다.

      변수를 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>"

다음 절차에 따라 클라이언트가 네트워크 피어링 연결을 사용하여 Atlas 클러스터에 연결할 수 있도록 활성화하세요.

1

기존 컨테이너 또는 새 컨테이너를 사용하도록 네트워크 피어링을 구성할 수 있습니다.

  1. spec.networkPeers 를 지정합니다. AtlasProject Custom Resource(사용자 지정 리소스)의 매개변수입니다. 다음 자리 표시자를 원하는 값으로 바꿉니다.

    자리 표시자
    설명

    spec.networkPeers.providerName

    클라우드 제공자 이름. AWS를 지정합니다.

    spec.networkPeers.containerId

    사용하려는 네트워크 피어링 컨테이너의 고유 식별자입니다. containerId 을 지정하지 않으면 atlasCIDRblock 을 설정해야 합니다. 자세한 내용은 이 절차의 Create New Container 섹션을 참조하세요.

    spec.networkPeers.accepterRegionName

    Amazon Web Services 에 대한 VPC 리전 .

    spec.networkPeers.awsAccountId

    해당 AWS 계정의 고유 식별자입니다. 콘솔 홈페이지의 오른쪽 상단에 있는 계정 이름을 클릭하면 AWS에 계정 ID가 표시됩니다.

    spec.networkPeers.routeTableCidrBlock

    CIDR block for your AWS VPC. AWS displays the CIDR block on your VPC's details page.

    spec.networkPeers.vpcId

    해당 AWS VPC의 고유 식별자입니다. AWS는 해당 VPC의 세부 정보 페이지에 VPC ID를 표시합니다.

  2. 다음 명령을 실행합니다:

    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. spec.networkPeers 를 지정합니다. AtlasProject Custom Resource(사용자 지정 리소스)의 매개변수입니다. 다음 자리 표시자를 원하는 값으로 바꿉니다.

    자리 표시자
    설명

    spec.networkPeers.providerName

    클라우드 제공자 이름. AWS를 지정합니다.

    spec.networkPeers.atlasCidrBlock

    Atlas CIDR block for which Atlas Kubernetes Operator creates a new container. If you don't specify atlasCidrBlock, you must specify the containerId of an existing container. To learn more, see the Use Existing Container section in this procedure.

    spec.networkPeers.containerRegion

    (Optional) AWS region in which Atlas Kubernetes Operator creates a new container. If you don't specify either a containerRegion or a containerId, Atlas Kubernetes Operator creates a new container in the same region as the accepterRegionName.

    spec.networkPeers.accepterRegionName

    Amazon Web Services 에 대한 VPC 리전 .

    spec.networkPeers.awsAccountId

    해당 AWS 계정의 고유 식별자입니다. 콘솔 홈페이지의 오른쪽 상단에 있는 계정 이름을 클릭하면 AWS에 계정 ID가 표시됩니다.

    spec.networkPeers.routeTableCidrBlock

    CIDR block for your AWS VPC. AWS displays the CIDR block on your VPC's details page.

    spec.networkPeers.vpcId

    해당 AWS VPC의 고유 식별자입니다. AWS는 해당 VPC의 세부 정보 페이지에 VPC ID를 표시합니다.

  2. 다음 명령을 실행합니다:

    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. 다음 명령을 실행합니다:

    kubectl get atlasprojects my-project -o=jsonpath='{.status.networkPeers.statusName}'
    WAITING FOR USER
  2. statusName 값이 WAITING FOR USER 인 경우 다음 단계로 진행합니다. 가 이 statusName 아닌 경우 WAITING FOR USER 몇 분 정도 기다렸다가 이 단계를 다시 시도하세요.

3

자세한 내용은 VPC 피어링 연결 수락을 참조하세요.를 참조하십시오.

4

Run the following command again to check the status of the VPC connection. Atlas Kubernetes Operator returns READY when the network peering connection is complete.

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

기존 컨테이너 또는 새 컨테이너를 사용하도록 네트워크 피어링을 구성할 수 있습니다.

  1. spec.networkPeers 를 지정합니다. AtlasProject Custom Resource(사용자 지정 리소스)의 매개변수입니다. 다음 자리 표시자를 원하는 값으로 바꿉니다.

    자리 표시자
    설명

    spec.networkPeers.providerName

    클라우드 제공자 이름. AZURE를 지정합니다.

    spec.networkPeers.containerId

    사용하려는 네트워크 피어링 컨테이너의 고유 식별자입니다. containerId 을 지정하지 않으면 atlasCIDRblock 을 설정해야 합니다. 자세한 내용은 이 절차의 Create New Container 섹션을 참조하세요.

    spec.networkPeers.accepterRegionName

    Azure region for your VPC.

    spec.networkPeers.azureSubscriptionId

    Azure 구독 의 고유 식별자입니다. Azure 는 구독의 세부 정보 페이지에 구독 ID 를 표시합니다.

    spec.networkPeers.resourceGroupName

    VPC 가 포함된 Azure 리소스 그룹 을 식별하는 사람이 읽을 수 있는 레이블입니다. Azure 는 리소스 그룹의 세부 정보 페이지에 리소스 그룹 이름을 표시합니다.

    spec.networkPeers.azureDirectoryId

    Unique identifier for your Azure Active Directory tenant. Azure displays this as the Tenant ID on the tenant properties page.

    spec.networkPeers.vnetName

    Azure VNET을 식별하는 사람이 읽을 수 있는 레이블입니다. Azure 는 VNET의 세부 정보 페이지에 VNET 이름을 표시합니다.

  2. 다음 명령을 실행합니다:

    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. spec.networkPeers 를 지정합니다. AtlasProject Custom Resource(사용자 지정 리소스)의 매개변수입니다. 다음 자리 표시자를 원하는 값으로 바꿉니다.

    자리 표시자
    설명

    spec.networkPeers.providerName

    클라우드 제공자 이름. AZURE를 지정합니다.

    spec.networkPeers.atlasCidrBlock

    Atlas CIDR block for which Atlas Kubernetes Operator creates a new container. If you don't specify atlasCidrBlock, you must specify the containerId of an existing container. To learn more, see the Use Existing Container section in this procedure.

    spec.networkPeers.containerRegion

    (Optional) Azure region in which Atlas Kubernetes Operator creates a new container. If you don't specify either a containerRegion or a containerId, Atlas Kubernetes Operator creates a new container in the same region as the accepterRegionName.

    spec.networkPeers.accepterRegionName

    Azure region for your VPC.

    spec.networkPeers.azureSubscriptionId

    Azure 구독 의 고유 식별자입니다. Azure 는 구독의 세부 정보 페이지에 구독 ID 를 표시합니다.

    spec.networkPeers.resourceGroupName

    VPC 가 포함된 Azure 리소스 그룹 을 식별하는 사람이 읽을 수 있는 레이블입니다. Azure 는 리소스 그룹의 세부 정보 페이지에 리소스 그룹 이름을 표시합니다.

    spec.networkPeers.azureDirectoryId

    Unique identifier for your Azure active directory tenant. Azure displays this as the Tenant ID on the tenant properties page.

    spec.networkPeers.vnetName

    Azure VNET을 식별하는 사람이 읽을 수 있는 레이블입니다. Azure 는 VNET의 세부 정보 페이지에 VNET 이름을 표시합니다.

  2. 다음 명령을 실행합니다:

    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

Run the following command to check the status of the VPC connection. Atlas Kubernetes Operator returns READY when the network peering connection is complete.

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

기존 컨테이너 또는 새 컨테이너를 사용하도록 네트워크 피어링을 구성할 수 있습니다.

  1. spec.networkPeers 를 지정합니다. AtlasProject Custom Resource(사용자 지정 리소스)의 매개변수입니다. 다음 자리 표시자를 원하는 값으로 바꿉니다.

    자리 표시자
    설명

    spec.networkPeers.providerName

    클라우드 제공자 이름. GCP를 지정합니다.

    spec.networkPeers.containerId

    사용하려는 네트워크 피어링 컨테이너 의 고유 식별자입니다. containerId 을 지정하지 않으면 atlasCIDRblockcontainerRegion 을 설정하다 해야 합니다. 학습 내용은 이 절차의 Create New Container 섹션을 참조하세요.

    spec.networkPeers.gcpProjectId

    Google Cloud Platform 프로젝트 의 고유 식별자입니다. Google Cloud Platform 은 프로젝트의 세부 정보 페이지에 프로젝트 ID 를 표시합니다.

    spec.networkPeers.routeTableCidrBlock

    에 대한CIDR 차단 Google Cloud Platform VPC 입니다. Google Cloud Platform 은 의 세부 정보 페이지에 VPC CIDR 차단 을 표시합니다.

    spec.networkPeers.networkName

    Google Cloud Platform VPC 의 사람이 읽을 수 있는 레이블입니다. Google Cloud Platform 은 VPC 의 세부 정보 페이지에 네트워크 이름을 표시합니다.

  2. 다음 명령을 실행합니다:

    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. spec.networkPeers 를 지정합니다. AtlasProject Custom Resource(사용자 지정 리소스)의 매개변수입니다. 다음 자리 표시자를 원하는 값으로 바꿉니다.

    자리 표시자
    설명

    spec.networkPeers.providerName

    클라우드 제공자 이름. GCP를 지정합니다.

    spec.networkPeers.atlasCidrBlock

    Atlas CIDR block for which Atlas Kubernetes Operator creates a new container. If you don't specify atlasCidrBlock, you must specify the containerId of an existing container. To learn more, see the Use Existing Container section in this procedure.

    spec.networkPeers.containerRegion

    Google Cloud Platform 에 대한 VPC 리전 입니다.

    spec.networkPeers.containerRegion

    Google Cloud region in which Atlas Kubernetes Operator creates a new container. If you don't specify containerRegion, you must specify the containerId of an existing container. To learn more, see the Use Existing Container section in this procedure.

    spec.networkPeers.gcpProjectId

    Google Cloud Platform 프로젝트 의 고유 식별자입니다. Google Cloud Platform 은 프로젝트의 세부 정보 페이지에 프로젝트 ID 를 표시합니다.

    spec.networkPeers.routeTableCidrBlock

    에 대한CIDR 차단 Google Cloud Platform VPC 입니다. Google Cloud Platform 은 의 세부 정보 페이지에 VPC CIDR 차단 을 표시합니다.

    spec.networkPeers.networkName

    Google Cloud Platform VPC 의 사람이 읽을 수 있는 레이블입니다. Google Cloud Platform 은 VPC 의 세부 정보 페이지에 네트워크 이름을 표시합니다.

  2. 다음 명령을 실행합니다:

    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. 다음 명령을 실행합니다:

    kubectl get atlasprojects my-project -o=jsonpath='{.status.networkPeers.status}'
    PENDING ACCEPTANCE
  2. status 값이 PENDING ACCEPTANCE 인 경우 다음 단계로 진행합니다. 가 이 status 아닌 경우 PENDING ACCEPTANCE 몇 분 정도 기다렸다가 이 단계를 다시 시도하세요.

3

To learn more, see Using VPC Network Peering.

4

Run the following command again to check the status of the VPC connection. Atlas Kubernetes Operator returns READY when the network peering connection is complete.

kubectl get atlasprojects my-project -o=jsonpath='{.status.networkPeers.status}'
READY
이 페이지 평가하기

이 페이지의 내용