Docs Menu
Docs Home
/
MongoDB Atlas
/ /

비공개 엔드포인트 연결 문제 해결

이 페이지의 내용

  • 전용 클러스터

이 페이지에서는 일반적인 비공개 엔드포인트 연결 문제와 가능한 해결 방법을 간략하게 설명합니다.

1

각 비공개 엔드포인트의 상태를 보려면 다음과 같이 하세요:

  1. Atlas 에서 프로젝트의 Network Access 페이지로 Go 합니다.

    1. 아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.

    2. 아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.

    3. 사이드바에서 Security 제목 아래의 Network Access를 클릭합니다.

      네트워크 액세스 페이지가 표시됩니다.

  2. Private Endpoint 탭을 클릭합니다.

  3. 상태를 검토합니다.

    Atlas Endpoint Service StatusEndpoint Status 필드에는 각 비공개 엔드포인트의 상태가 표시됩니다.

비공개 엔드포인트 연결의 상태 를 확인하려면 다음 상태를 참조하세요.

Atlas Endpoint Service Status

상태
설명

비공개 링크 만들기

Atlas 가 네트워크 로드 밸런서 및 VPC 리소스를 생성 중입니다.

실패하였습니다.

시스템 장애가 발생했습니다.

사용 가능

Atlas 네트워크 로드 밸런서와 VPC 엔드포인트 서비스가 생성되었으며 연결 요청을 수신할 준비가 되었습니다.

삭제

Atlas 가 비공개 엔드포인트 서비스를 삭제하고 있습니다.

Endpoint Status

상태
설명

구성되지 않음

Atlas 는 네트워크 로드 밸런서 및 VPC 엔드포인트 서비스를 생성했지만 Amazon Web Services 는 아직 인터페이스 엔드포인트 생성하지 않았습니다. Edit 를 클릭하고 마법사를 완료하여 인터페이스 엔드포인트 를 생성합니다.

승인 보류 중

AWS인터페이스 엔드포인트로부터 Atlas VPC 엔드포인트 서비스에 대한 연결 요청을 수신했습니다

보류 중

AWS인터페이스 엔드포인트와 Atlas VPC 엔드포인트 서비스 간의 연결을 설정 중입니다.

실패하였습니다.

가 리소스와 의 인터페이스 VPC 엔드포인트 간의Amazon Web Services 연결을 Atlas VPC 설정하지 못했습니다. Edit 를 클릭하고 제공한 정보가 올바른지 확인한 다음 비공개 엔드포인트를 다시 생성합니다.

중요: 인터페이스 엔드포인트에 장애가 발생하면 다음 메시지가 표시될 수 있습니다.

No dns entries found for endpoint vpce-<guid>,
your endpoint must be provisioned in at least one subnet.
Click "Edit" to fix the problem.

이 메시지는 AWS PrivateLink 연결을 생성할 때 서브넷을 지정하지 않았음을 나타냅니다. 이 오류를 해결하려면 다음을 수행합니다.

  1. Edit를 클릭합니다.

  2. Back를 클릭합니다.

  3. 서브넷을 하나 이상 지정합니다.

  4. 나머지 지침에 따라 AWS PrivateLink 연결을 생성합니다.

사용 가능

Atlas VPC 리소스는 VPC인터페이스 엔드포인트에 연결됩니다. AWS PrivateLink를 사용하여 이 리전의 Atlas 클러스터에 연결할 수 있습니다.

삭제

Atlas 가 비공개 엔드포인트 서비스에서 인터페이스 엔드포인트 를 제거합니다.

2
  1. AWS PrivateLink 를 사용하여 Atlas 클러스터에 연결해야 하는 각 리소스 에 대해 리소스의 보안 그룹 은 모든 포트(1024~65535)에서 인터페이스 엔드포인트의 비공개 IP 주소로 아웃바운드 트래픽을 허용해야 합니다.

    보안 그룹 에 규칙 추가를 참조하세요. 을(를) 참조하세요.

  2. 인터페이스 엔드포인트 보안 그룹 은 AWS PrivateLink 를 사용하여 Atlas 클러스터에 연결해야 하는 각 리소스 의 모든 포트에서 인바운드 트래픽을 허용해야 합니다.

    인스턴스 IP 주소 또는 보안 그룹을 액세스하여 해당 트래픽이 인터페이스 엔드포인트 보안 그룹 도달할 수 있도록 허용합니다.

VPC의 클라이언트가 이러한 비공개 엔드포인트 인식 연결 문자열 중 하나를 사용하여 Atlas 클러스터에 연결하면 클라이언트는 인터페이스 엔드포인트 중 하나를 통해 Atlas VPC의 로드 밸런서에 연결을 설정하려고 시도합니다. 클라이언트의 DNS 확인 메커니즘은 호스트 이름이 어떤 인터페이스 엔드포인트로 확인되는지 처리합니다. 한 인터페이스 엔드포인트를 사용할 수 없는 경우 다음 인터페이스 엔드포인트가 사용됩니다. 이것은 드라이버 또는 다른 연결 메커니즘에 불투명합니다. 드라이버는 SRV 기록 또는 연결 문자열의 호스트 이름만 인식합니다.

DNS 시드 목록 비공개 엔드포인트 인식 연결 문자열에 대한 SRV 레코드

다음 예시 는 AWS PrivateLink 지원 단일 리전 클러스터 에 대한 SRV 기록 로, pl-0-us-east-1-k45tj.mongodb.net 에 정의된 세 개의 고유 포트를 보여줍니다.

$ nslookup -type=SRV _mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
_mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net service = 0 0 1026 pl-0-us-east-1-k45tj.mongodb.net.
_mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net service = 0 0 1024 pl-0-us-east-1-k45tj.mongodb.net.
_mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net service = 0 0 1025 pl-0-us-east-1-k45tj.mongodb.net.

앞의 예시에서

  • _mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net mongodb+srv://cluster0-pl-0-k45tj.mongodb.net 연결 문자열이 참조하는 SRV 레코드입니다.

  • pl-0-us-east-1-k45tj.mongodb.net 한 리전의 Atlas 클러스터에 있는 각 노드에 대한 호스트 이름에 대해 AWS PrivateLink를 구성했습니다.

  • 102410251026는 AWS PrivateLink를 허용한 리전의 각 Atlas 복제본 세트 노드에 대해 Atlas가 로드 밸런서에서 할당하는 고유 포트입니다. Atlas 복제본 세트의 모든 노드는 동일한 호스트 이름을 통해 액세스할 수 있으며, 로드 밸런서는 개별 노드를 고유 포트로 확인합니다.

비공개 엔드포인트 인식 연결 문자열 및 SRV 레코드의 호스트 이름 DNS 확인

SRV 기록의 호스트 이름과 표준 연결 문자열은 AWS가 인터페이스 엔드포인트에 대해 생성하는 엔드포인트별 DNS 이름으로 확인되는 DNS Canonical Name(CNAME) 기록입니다. 인터페이스 엔드포인트를 배포한 VPC의 각 서브넷에 대해 DNS ALIAS 기록이 존재합니다. 각 ALIAS 기록에는 해당 서브넷에 대한 인터페이스 엔드포인트의 개인 IP 주소가 포함되어 있습니다.

다음 예는 인터페이스 엔드포인트와 해당 DNS 기록에 대한 엔드포인트별 리전 DNS 이름을 포함하여 SRV 기록 및 표준 연결 문자열에서 호스트 이름에 대한 DNS ALIAS 기록을 보여줍니다.

$ nslookup pl-0-us-east-1-k45tj.mongodb.net
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
pl-0-us-east-1-k45tj.mongodb.net
canonical name = vpce-024f5b57108c8d3ed-ypwbxwll.vpce-svc-02863655456245e5c.us-east-1.vpce.amazonaws.com.
Name: vpce-024f5b57108c8d3ed-ypwbxwll.vpce-svc-02863655456245e5c.us-east-1.vpce.amazonaws.com
Address: 10.0.30.194
Name: vpce-024f5b57108c8d3ed-ypwbxwll.vpce-svc-02863655456245e5c.us-east-1.vpce.amazonaws.com
Address: 10.0.20.54

비공개 엔드포인트는 클러스터 가 걸쳐 있는 각 리전 에 비공개 엔드포인트가 구성된 노드 가 있는 경우에만 멀티 리전 클러스터에서 사용할 수 있습니다. 멀티 리전 비공개 엔드포인트 구성에 학습 보려면 멀티 리전 샤드 클러스터를 위한 리전화된 비공개 엔드포인트를 참조하세요.

nslookuptelnet 도구를 사용하여 애플리케이션 과 Atlas 의 비공개 엔드포인트 간의 연결을 테스트할 수 있습니다.

1

-type=SRV 플래그와 함께 nslookup 를 실행하여 클러스터 의 각 노드와 연결된 포트 번호를 가져옵니다.

nslookup -type=SRV _mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
_mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net service = 0 0 1026 pl-0-us-east-1-k45tj.mongodb.net.
_mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net service = 0 0 1024 pl-0-us-east-1-k45tj.mongodb.net.
_mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net service = 0 0 1025 pl-0-us-east-1-k45tj.mongodb.net.
2

애플리케이션 환경에서 나열된 포트 중 하나( 예시: 위의 출력 예시 에서 1026, 1024 또는 1025 )를 사용하여 다음 telnet 명령을 실행 하여 연결을 테스트합니다.

telnet pl-0-<xyz>.mongodb.net 1024
telnet pl-0-<xyz>.mongodb.net 1025
telnet pl-0-<xyz>.mongodb.net 1026

각 비공개 엔드포인트의 상태를 보려면 다음과 같이 하세요:

1
  1. 아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.

  2. 아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.

  3. 사이드바에서 Security 제목 아래의 Network Access를 클릭합니다.

    네트워크 액세스 페이지가 표시됩니다.

2
3

Atlas Endpoint Service StatusEndpoint Status 필드에는 각 비공개 엔드포인트의 상태가 표시됩니다.

비공개 엔드포인트 연결의 상태 를 확인하려면 다음 상태를 참조하세요.

Atlas Endpoint Service Status

상태
설명

비공개 링크 만들기

Atlas 가 로드 밸런서 및 VNet 리소스를 생성하고 있습니다.

실패하였습니다.

시스템 장애가 발생했습니다.

사용 가능

Atlas 는 로드 밸런서 와 Azure Private Link 서비스를 만들었습니다. Azure Private Link Service가 연결 요청을 수신할 준비가 되었습니다.

삭제

Atlas 가 Azure Private Link 서비스를 삭제 중입니다.

Endpoint Status

상태
설명

구성되지 않음

Atlas 에서 로드 밸런서 와 Azure Private Link Service를 만들었지만 아직 비공개 엔드포인트를 만들지 않았습니다. Edit 를 클릭하고 마법사를 완료하여 비공개 엔드포인트를 생성합니다.

시작

Atlas 가 아직 비공개 엔드포인트에 대한 연결을 수락하지 않았습니다.

실패하였습니다.

Azure 가 Atlas VNet 리소스와 VNet의 비공개 엔드포인트 간에 연결을 설정하지 못했습니다. Edit 를 클릭하고 제공한 정보가 올바른지 확인한 다음 비공개 엔드포인트를 다시 생성합니다.

사용 가능

Atlas VNet 리소스는 VNet의 비공개 엔드포인트에 연결됩니다. Azure Private Link 를 사용하여 이 리전 의 Atlas cluster에 연결할 수 있습니다.

삭제

Atlas 가 Azure Private Link Service에서 비공개 엔드포인트 연결을 제거하고 있습니다.

VNet의 클라이언트가 이러한 사설 엔드포인트 인식 연결 문자열 중 하나를 사용하여 Atlas 클러스터에 연결하면 클라이언트는 사설 엔드포인트의 네트워크 인터페이스를 통해 Atlas VNet의 사설 링크 서비스에 대한 연결을 설정하려고 시도합니다. Private Link 서비스는 Azure 표준 밸런서를 통해 해당 리전에 배포된 Atlas 클러스터로 트래픽을 보냅니다. 클라이언트의 DNS 확인 메커니즘은 네트워크 인터페이스의 비공개 IP 주소로 호스트 이름 확인을 처리합니다. 드라이버는 연결 문자열의 호스트 이름만 인식하며 클러스터의 복제본 세트에 있는 각 노드에 대해 1개의 포트에서 수신 대기합니다.

DNS 시드 목록 비공개 엔드포인트 인식 연결 문자열에 대한 SRV 레코드

다음 예시는 Azure Private Link 허용 단일 리전 클러스터에 대한 SRV 기록으로, pl-0-eastus2.uzgh6.mongodb.net에 대해 정의된 세 개의 고유 포트를 표시합니다.

$ nslookup -type=SRV _mongodb._tcp.cluster0-pl-0.uzgh6.mongodb.net
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
_mongodb._tcp.cluster0-pl-0.uzgh6.mongodb.net service = 0 0 1024 pl-0-eastus2.uzgh6.mongodb.net.
_mongodb._tcp.cluster0-pl-0.uzgh6.mongodb.net service = 0 0 1025 pl-0-eastus2.uzgh6.mongodb.net.
_mongodb._tcp.cluster0-pl-0.uzgh6.mongodb.net service = 0 0 1026 pl-0-eastus2.uzgh6.mongodb.net.

앞의 예시에서

  • _mongodb._tcp.cluster0-pl-0.uzgh6.mongodb.net 은 연결 문자열이 참조하는 SRV 레코드입니다.

  • pl-0-eastus2.uzgh6.mongodb.net Azure Private Link 를 구성한 한 리전 의 Atlas cluster 한 개에 있는 각 노드 의 호스트 이름입니다.

  • 10241025, 1026 은(는) Atlas 가 Azure Private Link 를 활성화한 리전 의 각 Atlas 복제본 세트 노드 에 대해 로드 밸런서 에서 할당하는 고유 포트입니다. Atlas 복제본 세트 의 모든 노드는 동일한 호스트 이름을 통해 액세스할 수 있으며, 로드 밸런서 는 개별 노드를 고유 포트로 확인합니다.

비공개 엔드포인트 인식 연결 문자열 및 SRV 레코드의 호스트 이름 DNS 확인

SRV 기록 의 호스트 이름과 표준 연결 문자열 은 A 비공개 엔드포인트 네트워크 인터페이스의 비공개 IP 주소 로 확인되는 DNS 기록 입니다.

다음 예에서는 SRV 레코드 및 표준 연결 문자열에서 호스트 이름에 대한 DNS 조회를 보여줍니다.

$ nslookup pl-0-eastus2.uzgh6.mongodb.net
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: pl-0-eastus2.uzgh6.mongodb.net
Address: 10.0.0.4

비공개 엔드포인트는 클러스터 가 걸쳐 있는 각 리전 에 비공개 엔드포인트가 구성된 노드 가 있는 경우에만 멀티 리전 클러스터에서 사용할 수 있습니다. 멀티 리전 비공개 엔드포인트 구성에 학습 보려면 멀티 리전 샤드 클러스터를 위한 리전화된 비공개 엔드포인트를 참조하세요.

nslookuptelnet 도구를 사용하여 애플리케이션 과 Atlas 의 비공개 엔드포인트 간의 연결을 테스트할 수 있습니다.

1

-type=SRV 플래그와 함께 nslookup 를 실행하여 클러스터 의 각 노드와 연결된 포트 번호를 가져옵니다.

nslookup -type=SRV _mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
_mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net service = 0 0 1026 pl-0-us-east-1-k45tj.mongodb.net.
_mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net service = 0 0 1024 pl-0-us-east-1-k45tj.mongodb.net.
_mongodb._tcp.cluster0-pl-0-k45tj.mongodb.net service = 0 0 1025 pl-0-us-east-1-k45tj.mongodb.net.
2

애플리케이션 환경에서 나열된 포트 중 하나( 예시: 위의 출력 예시 에서 1026, 1024 또는 1025 )를 사용하여 다음 telnet 명령을 실행 하여 연결을 테스트합니다.

telnet pl-0-<xyz>.mongodb.net 1024
telnet pl-0-<xyz>.mongodb.net 1025
telnet pl-0-<xyz>.mongodb.net 1026

각 비공개 엔드포인트의 상태를 보려면 다음과 같이 하세요:

1
  1. 아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.

  2. 아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.

  3. 사이드바에서 Security 제목 아래의 Network Access를 클릭합니다.

    네트워크 액세스 페이지가 표시됩니다.

2
3

Atlas Endpoint Service StatusEndpoint Status 필드에는 각 비공개 엔드포인트의 상태가 표시됩니다.

비공개 엔드포인트 연결의 상태 를 확인하려면 다음 상태를 참조하세요.

Atlas Endpoint Service Status

상태
설명

비공개 링크 만들기

Atlas가 네트워크 로드 밸런서와 VPC 리소스를 생성하고 있습니다.

실패하였습니다.

시스템 장애가 발생했습니다.

사용 가능

Atlas 는 네트워크 로드 밸런서 와 VPC 엔드포인트 서비스를 만들었습니다. 비공개 엔드포인트 서비스가 연결 요청을 수신할 준비가 되었습니다.

삭제

Atlas 가 비공개 엔드포인트 서비스를 삭제하고 있습니다.

Endpoint Status

상태
설명

시작

Atlas 가 아직 비공개 엔드포인트에 연결되지 않았으며 아직 엔드포인트를 허용하지 않았습니다.

사용자 대기 중

Atlas 의 VPC 리소스를 사용할 준비가 되었습니다. 스크립트 를 실행 하여 내에서 엔드포인트를 설정하다 해야 VPC shell 합니다.

확인됨

Atlas 가 VPC 내의 엔드포인트를 확인했지만 아직 Google Cloud VPC 의 비공개 엔드포인트를 수락하지 않았습니다. 가 이 되는 데 몇 분 정도 걸릴 수 Endpoint Status Available있습니다.

사용 가능

Atlas VPC 리소스는 Google Cloud Platform VPC 의 비공개 엔드포인트에 연결됩니다. Atlas 가 엔드포인트를 허용했습니다. GCP Private Service Connect를 사용하여 이 리전 의 Atlas 클러스터에 연결할 수 있습니다.

활성

Atlas 는 VPC 리소스를 사용할 준비가 되었습니다. Atlas 가 엔드포인트를 허용했습니다. 비공개 서비스 연결에 VM이 할당됩니다.

실패하였습니다.

Google Cloud Platform 이 Atlas VPC 리소스와 Google Cloud Platform VPC 의 비공개 엔드포인트 간의 연결을 설정하지 못했습니다. Edit 를 클릭하고 제공한 정보가 올바른지 확인한 다음 비공개 엔드포인트를 다시 생성합니다.

Deleted

Atlas 의 리전 에서 비공개 엔드포인트를 수동으로 삭제했습니다. 리소스를 삭제 Google Cloud Platform 에서 비공개 엔드포인트도 삭제 해야 합니다. 리전 그룹 삭제 대기 중입니다.

비공개 엔드포인트는 클러스터 가 걸쳐 있는 각 리전 에 비공개 엔드포인트가 구성된 노드 가 있는 경우에만 멀티 리전 클러스터에서 사용할 수 있습니다. 멀티 리전 비공개 엔드포인트 구성에 학습 보려면 멀티 리전 샤드 클러스터를 위한 리전화된 비공개 엔드포인트를 참조하세요.

nslookuptelnet 도구를 사용하여 애플리케이션 과 Atlas 의 비공개 엔드포인트 간의 연결을 테스트할 수 있습니다.

1

-type=SRV 플래그와 함께 nslookup 를 실행하여 클러스터 의 각 노드와 연결된 포트 번호를 가져옵니다.

nslookup -debug -type=SRV _mongodb._tcp.gpc-mongo-pl-0-us-central1.test.mongodb.net
Server: 8.8.8.8
Address: 8.8.8.8#53
------------
QUESTIONS:
_mongodb._tcp.gpc-mongo-pl-0-us-central1.test.mongodb.net, type = SRV, class = IN
ANSWERS:
-> _mongodb._tcp.gpc-mongo-pl-0-us-central1.test.mongodb.net
service = 0 0 27017 pl-00-000-us-central1-gcp.test.mongodb.net.
ttl = 60
-> _mongodb._tcp.gpc-mongo-pl-0-us-central1.test.mongodb.net
service = 0 0 27017 pl-00-001-us-central1-gcp.test.mongodb.net.
ttl = 60
-> _mongodb._tcp.gpc-mongo-pl-0-us-central1.test.mongodb.net
service = 0 0 27017 pl-00-002-us-central1-gcp.test.mongodb.net.
ttl = 60
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
------------
Non-authoritative answer:
_mongodb._tcp.gpc-mongo-pl-0-us-central1.test.mongodb.net service = 0 0 27017 pl-00-000-us-central1-gcp.test.mongodb.net.
_mongodb._tcp.gpc-mongo-pl-0-us-central1.test.mongodb.net service = 0 0 27017 pl-00-001-us-central1-gcp.test.mongodb.net.
_mongodb._tcp.gpc-mongo-pl-0-us-central1.test.mongodb.net service = 0 0 27017 pl-00-002-us-central1-gcp.test.mongodb.net.
2

애플리케이션 환경에서 나열된 포트 중 하나( 예시: 위의 출력 예시 에서 27017)를 사용하여 다음 telnet 명령을 실행 하여 연결을 테스트합니다.

telnet pl-0-<xyz>.mongodb.net 27017

돌아가기

관리 및 연결

이 페이지의 내용