다음을 통해 공유


Azure Cosmos DB 데이터 탐색기 연결 실패

경우에 따라 Azure Cosmos DB 데이터 탐색기는 계정에 연결하거나 리소스 또는 항목에 대한 작업을 수행할 수 없습니다. 이 문서에서는 이 문제에 대한 잠재적 원인 및 해결 방법을 검토합니다.

Important

Azure Cosmos DB 데이터 탐색기는 PostgreSQL용 API 또는 vCore용 API에 사용할 수 없습니다.

필수 조건

NoSQL, MongoDB RU, Apache Cassandra, Apache Gremlin 또는 Table 계정용 기존 Azure Cosmos DB

증상

Azure Portal에서 액세스 허용 옵션을 사용하도록 설정한 후에도 데이터 탐색기에 연결할 수 없습니다.

원인

올바른 역할 기반 액세스 제어 및 포털 권한을 구성한 후에도 선택한 API에 따라 구성해야 하는 추가 네트워크 액세스 요구 사항이 있습니다.

  • NoSQL용 API, Apache Gremlin용 API 및 Table용 API와 같은 일부 서비스는 클라이언트 쪽 JavaScript SDK를 사용하여 작업을 수행하고 하나의 솔루션 집합이 필요합니다.

  • MongoDB RU용 API 및 Apache Cassandra용 API와 같은 다른 서비스는 프로토콜별 미들웨어를 사용하고 대체 솔루션이 필요합니다.

NoSQL, Apache Gremlin 또는 Table용 API에 대한 솔루션

데이터베이스, 컨테이너, 그래프 및 테이블(컨트롤 플레인) 작업은 Azure Cosmos DB 리소스 공급자를 사용하여 Azure Resource Manager 컨트롤 플레인에 대한 호출을 통해 실행됩니다. 네트워크 구성은 이러한 작업에 영향을 주지 않습니다.

항목(데이터 평면) 작업은 브라우저 컨텍스트 내에서 JavaScript SDK를 사용하여 실행됩니다. 현재 사용 중인 디바이스는 계정에 대한 직접 네트워크 액세스 권한이 있어야 합니다.

  • 공용 액세스(모든 네트워크)구성된 계정의 경우 데이터 평면 작업에 네트워크 관련 연결 문제가 없어야 합니다.

  • 공용 액세스(선택한 네트워크)구성된 계정의 경우 현재 디바이스에서 계정에 대한 액세스를 허용하는 방화벽 규칙을 만들어야 합니다. Azure Portal의 서비스 페이지에 있는 네트워킹 기능에는 IP 주소를 자동으로 추가할 수 있는 내 현재 IP 추가(...) 하이퍼링크가 있습니다.

  • 계정에 방화벽 규칙이 없는 경우 데이터 탐색기는 데이터 탐색기에 대한 알림에서 관찰할 수 있는 오류를 throw합니다. 이 오류 메시지에는 다음 예제와 유사한 텍스트가 포함되어 있습니다.

    API Error
    NoSQL Request originated from IP XXX.XXX.XXX.XXX through public internet. This is blocked by your Cosmos DB account firewall settings.
    Apache Gremlin Failure in submitting query: g.V(): Request originated from IP XXX.XXX.XXX.XXX through public internet. This is blocked by your Cosmos DB account firewall settings.
    테이블 Error while refreshing databases: Request originated from IP XXX.XXX.XXX.XXX through public internet. This is blocked by your Cosmos DB account firewall settings.
  • 공용 액세스를 사용하지 않도록 설정된 계정의 경우 데이터 평면 작업이 작동하려면 디바이스를 계정에 연결하여 가상 네트워크에 연결해야 합니다.

MongoDB RU 또는 Apache Cassandra용 API 솔루션

컨트롤 플레인 및 데이터 평면 솔루션을 각각 검토합니다.

데이터베이스, 키스페이스 및 컬렉션(컨트롤 플레인) 작업은 Azure Cosmos DB 리소스 공급자를 사용하여 Azure Resource Manager 컨트롤 플레인에 대한 호출을 통해 실행됩니다. 네트워크 구성은 이러한 작업에 영향을 주지 않습니다.

항목(데이터 평면) 작업은 API의 미들웨어에서 프록시 서비스를 사용하여 실행됩니다. 이 서비스는 항목 작업 및 쿼리에서 서비스 네이티브(MongoDB, Cassandra) 프로토콜을 쉽게 사용할 수 있습니다. 프록시 서비스에는 계정에 대한 직접 네트워크 액세스가 필요합니다.

  • 공용 액세스(모든 네트워크)구성된 계정의 경우 데이터 평면 작업에 네트워크 관련 연결 문제가 없어야 합니다.

  • 공용 액세스(선택한 네트워크)로 구성된 계정의 경우 Azure Portal에 있는 서비스 페이지의 네트워킹 기능에서 Azure Portal에서 액세스 허용을 선택해야 합니다. 이 옵션은 미들웨어 서비스를 포함하는 IP 주소 범위를 추가합니다. 현재 디바이스의 IP 주소를 추가할 필요가 없습니다.

  • 계정에 방화벽 규칙이 없는 경우 데이터 탐색기는 브라우저 개발자 도구에서 관찰할 수 있는 오류를 throw합니다. 이 오류 메시지에는 미들웨어 서비스에서 생성된 제네릭 Error querying documents 또는 Failed to establish connection with cassandra node 메시지가 포함됩니다. 확장된 오류 메시지는 다음 예제와 유사하게 Compute 게이트웨이 로그에 포함됩니다.

    Request originated from IP XXX.XXX.XXX.XXX through public internet. This is blocked by your Cosmos DB account firewall settings.