참고
Atlas는 AWS, Google Cloud 및 Azure에서 호스팅되는 전용 클러스터와 멀티 클라우드 샤딩된 클러스터에 대한 네트워크 피어링 연결을 지원합니다.
네트워크 피어링은 Atlas VPC와 클라우드 공급자의 VPC 간의 비공개 연결을 설정합니다. 이 연결은 보안 강화를 위해 공용 네트워크로부터 트래픽을 격리합니다. Atlas Stream Processing은 두 가지 유형의 네트워크 피어링 연결을 지원합니다.
아웃바운드: 스트림 처리 작업 공간이 클라우드 공급자 VPC에 피어링 요청을 보내는 VPC 연결입니다. 이 연결 유형은 외부 VPC에 대한 전체 관리 액세스 권한이 있으며 연결 요청을 승인할 수 있는 시나리오에 적합합니다.
인바운드: 클라우드 공급자 VPC가 스트림 처리 인스턴스에 피어링 요청을 보내는 VPC 연결입니다. 이 연결 유형은 Atlas VPC 내에서만 승인이 필요하기 때문에 클라우드 공급자 VPC에 대한 전체 관리 액세스 권한이 없는 시나리오에 적합합니다.
경고
Atlas는 다른 클라우드 제공자의 단일 리전에 배포된 클러스터 간 네트워크 피어링을 지원하지 않습니다. 예를 들어 AWS의 단일 리전에서 호스팅되는 Atlas cluster와 GCP의 단일 리전에서 호스팅되는 애플리케이션 간에는 네트워크 피어링을 설정할 수 없습니다.
이 페이지에서는 아웃바운드 VPC 연결을 생성하는 방법과 스트림 처리 작업 공간에 대한 인바운드 VPC 피어링 연결을 생성, 수락, 거부 및 삭제하는 방법을 안내합니다.
전제 조건
연결을 만들고 구성하려면 다음이 필요합니다.
Atlas 프로젝트
연결 레지스트리를 관리하기 위한
Project Owner또는Project Stream Processing Owner역할이 있는 Atlas 사용자참고
Project Owner역할이 있으면 데이터베이스 배포를 만들고, 프로젝트 액세스 및 프로젝트 설정을 관리하고, IP 액세스 목록 항목을 관리하는 등의 작업을 수행할 수 있습니다.Project Stream Processing Owner역할은 스트림 처리 작업 공간 보기, 생성, 삭제 및 편집, 연결 레지스트리에서 VPC 피어링 연결 생성, 업데이트 및 삭제와 같은 Atlas Stream Processing 작업을 활성화합니다.두 역할 간의 차이에 대한 자세한 내용은 프로젝트 역할을 참조하세요.
Atlas 클러스터
고려 사항
Atlas Stream Processing VPC 피어링에 대해 RFC 1918 비공개 IP 범위만 지원합니다. 다음 IP 범위 중 하나를 사용해야 합니다.
10.0.0.0/8172.16.0.0/12192.168.0.0/16
아웃바운드 VPC 피어링 연결 만들기
스트림 처리 작업 공간에 아웃바운드 VPC 피어링 연결 생성:
Atlas UI를 사용하여 스트림 처리 작업 공간에서 클라우드 공급자 VPC 로 아웃바운드 VPC 피어링 연결을 생성하려면, Atlas Stream Processing 연결 추가를 참조하고 연결 유형으로는 Apache Kafka, 인터페이스로는 Atlas UI를 선택합니다.
VPC 피어링 연결을 위한 보안 프로토콜 로 SASL_SSL 을(를) 선택해야 합니다.
API 사용하여 Stream Processing 작업 공간에 대한 아웃바운드 VPC 피어링 연결을 만들려면 1개의 프로젝트에서 모든 네트워크 피어링 연결 반환을 참조하세요.
VPC 피어링 연결을 위한 보안 프로토콜 로 SASL_SSL 을(를) 선택해야 합니다.
Confluent로부터의 수신 VPC 피어링 연결 요청 생성
Confluent 계정에서 시작된 AWS VPC 피어링 연결을 설정 및 구성하려면:
Atlas 관리 API 로 인증할 서비스 계정을 만듭니다.
서비스 계정 을 만들고 액세스 토큰을 생성하여 API 요청을 인증합니다. 자세한 내용은 Atlas 관리 API로 시작하기를 참조하세요.
Atlas Cloud AWS 계정 ID, VPC ID 및 CIDR 차단 조회합니다.
샘플 API 요청 다음과 유사합니다.
curl \ -s --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header 'Accept: application/vnd.atlas.2024-11-13+json' \ --header 'Content-Type: application/json' \ --request GET \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/accountDetails?cloudProvider=aws®ionName=US_EAST_1"
다음 예시 매개변수 값에 유의하세요.
Parameter values | 설명 |
|---|---|
671a86f4cfc9da7d7c31b14f | Atlas 프로젝트 ID |
AWS | 클라우드 공급자 |
US_EAST_1 | AWS 리전 이름 |
샘플 출력은 다음과 유사합니다.
{ "awsAccountId": "974404375205", "cidrBlock": "192.168.248.0/21", "vpcId": "vpc-0ef7efa5ceca36e2f" }
VPC 피어링 연결 요청 잠재적인 지연 후 Atlas 에 표시됩니다.
Atlas 계정에서 보류 중인 API 요청을 확인하려면 다음과 유사한 API 요청을 실행합니다.
curl \ -s --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json' \ --request GET \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections?requesterAccountId=417601102659"
다음 예시 매개변수 값에 유의하세요.
Parameter values | 설명 |
|---|---|
671a86f4cfc9da7d7c31b14f | Atlas 프로젝트 ID |
417601102659 | 7단계에서 얻은 Confluent AWS 계정 ID |
샘플 출력은 다음과 유사합니다.
{ "links": [ { "href": "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections?requesterAccountId=417601102659&pageNum=1&itemsPerPage=100", "rel": "self" } ], "results": [ { "_id": "6759e61aa6cf0a5476e233d1", "accepterAccountId": "974404375205", "accepterVpcId": "vpc-0ddfd37072cc5ed61", "cloudStatus": "pending-acceptance", "expirationTime": "2024-12-18T19:20:37Z", "groupId": "671a86f4cfc9da7d7c31b14f", "localStatus": "NONE", "name": "pcx-09277e1e81d0751c1", "requesterAccountId": "417601102659", "requesterCidr": "10.0.0.0/16", "requesterVpcId": "vpc-0d13eb6a2f0377854" } ], "totalCount": 1 }
수신 VPC 피어링 연결 요청 수락합니다.
cloudStatus 값이 pending-acceptance임을 확인합니다.
다음 API 요청을 실행합니다.
curl \ -s --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json' \ -d '{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"}' \ --request POST \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections/pcx-09277e1e81d0751c1:accept"
다음 예시 매개변수 값에 유의하세요.
Parameter values | 설명 |
|---|---|
{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"} | '요청자'의 VPC ID와 '요청자'의 AWS 계정 ID를 포함하는 POST 페이로드입니다. 이 경우, '요청자'는 Confluent입니다. |
671a86f4cfc9da7d7c31b14f | Atlas 프로젝트 ID |
pcx-09277e1e81d0751c1 | 이전 단계에서 얻은 수신 VPC 연결 이름 |
프로젝트의 Amazon Web Services 계정 ID 및 VPC ID 가져오기
스트림 처리 작업 공간에 대한 인바운드 VPC 피어링 연결을 생성하려면 먼저 AWS 계정 ID, AWS VPC ID 및 Atlas 프로젝트와 연결된 CIDR 블록을 조회하여 외부 클라우드 환경에서 VPC 피어링 요청을 시작해야 합니다.
Atlas 관리 API를 사용하여 AWS 계정 ID, AWS VPC ID 및 CIDR 블록을 Atlas 프로젝트에서 조회하려면 지정된 그룹 및 리전의 계정 ID 및 VPC ID 반환을 참조하세요.
인바운드 VPC 피어링 연결 나열
Atlas 관리 API를 사용하여 스트림 처리 작업 공간에 대한 모든 인바운드 VPC 피어링 연결을 나열하려면 모든 VPC 피어링 연결 반환을 참조하세요.
인바운드 VPC 피어링 연결 수락
Atlas 관리 API를 사용하여 스트림 처리 작업 공간에 대한 인바운드 VPC 피어링 연결을 수락하려면 인바운드 VPC 피어링 연결 수락 요청을 참조하세요.
샘플 API 요청 다음과 유사합니다.
참고
이 curl 명령은 API 키 대신 서비스 계정 액세스 토큰(OAuth 2.0)을 사용하여 인증합니다. To learn more, see 자세한 학습 은 Atlas 관리 API 시작하기를 참조하세요.
curl \ -s --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json' \ -d '{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"}' \ --request POST \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections/pcx-09277e1e81d0751c1:accept"
다음 예시 매개변수 값에 유의하세요.
Parameter values | 설명 |
|---|---|
{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"} | 요청의 VPC ID 및 Amazon Web Services 계정 ID 포함된 POST 페이로드 |
671a86f4cfc9da7d7c31b14f | Atlas 프로젝트 ID |
pcx-09277e1e81d0751c1 | 인바운드 VPC 피어링 연결을나열하여 얻은 수신 VPC 연결 이름 |
인바운드 VPC 피어링 연결 거부
Atlas 관리 API를 사용하여 스트림 처리 작업 공간에 대한 인바운드 VPC 피어링 연결을 거부하려면 인바운드 VPC 피어링 연결 거부 요청을 참조하세요.
인바운드 VPC 피어링 연결 삭제
Atlas 관리 API를 사용하여 스트림 처리 작업 공간에 대한 인바운드 VPC 피어링 연결을 삭제하려면 인바운드 VPC 피어링 연결 삭제를 참조하세요.