Azure Cosmos DB Data Explorer не удается подключиться

Иногда Data Explorer Azure Cosmos DB не могут подключаться к вашей учетной записи или выполнять операции с ресурсами или элементами. В этой статье рассматриваются потенциальные причины и решения этой проблемы.

Важно!

Data Explorer Azure Cosmos DB недоступен для API для PostgreSQL или API для виртуальных ядер.

Предварительные требования

Существующая учетная запись Azure Cosmos DB для NoSQL, MongoDB RU, Apache Cassandra, Apache Gremlin или Table

Симптомы

Не удается подключиться к Data Explorer даже после включения параметра Разрешить доступ с портала Azure.

Причина

Даже после настройки правильного управления доступом на основе ролей и разрешений портала существуют дополнительные требования к доступу к сети, которые необходимо настроить на основе выбранного API.

  • Некоторые службы, такие как API для NoSQL, API для Apache Gremlin и API для таблиц, используют клиентский пакет SDK JavaScript для выполнения операций и требуют одного набора решений.

  • Другие службы, такие как API для MongoDB RU и API для Apache Cassandra, используют ПО промежуточного слоя для конкретного протокола и требуют альтернативного решения.

Решение для API для NoSQL, Apache Gremlin или Table

Операции базы данных, контейнера, графа и таблицы (плоскости управления) выполняются через вызовы уровня управления Resource Manager Azure с помощью поставщика ресурсов Azure Cosmos DB. Конфигурация сети не влияет на эти операции.

Операции с элементами (плоскостью данных) выполняются с помощью пакета SDK для JavaScript в контексте браузера. Устройство, которое вы сейчас используете, должно иметь прямой сетевой доступ к учетной записи.

  • Для учетных записей, настроенных с общедоступным доступом (все сети), операции плоскости данных не должны иметь проблем с подключением к сети.

  • Для учетных записей, настроенных с общедоступным доступом (выбранные сети), необходимо создать правило брандмауэра, разрешающее доступ к учетной записи с текущего устройства. Функция "Сеть" на странице службы в портал Azure содержит гиперссылку Добавить текущий IP-адрес (...), которая может автоматически добавить ваш IP-адрес.

  • Если у учетной записи нет правила брандмауэра, Data Explorer выдает ошибку, которая может наблюдаться в уведомлениях для Data Explorer. Это сообщение об ошибке содержит текст, аналогичный приведенным ниже примерам:

    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.
    Table 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.
  • Для учетных записей, настроенных с отключенным общедоступным доступом, устройство должно быть подключено к виртуальной сети с подключением к учетной записи, чтобы операции плоскости данных функционировали.

Решение для API для MongoDB RU или Apache Cassandra

Просмотрите решения уровня управления и плоскости данных соответственно.

Операции с базой данных, пространством ключей и сбором (уровень управления) выполняются через вызовы уровня управления Azure Resource Manager с помощью поставщика ресурсов Azure Cosmos DB. Конфигурация сети не влияет на эти операции.

Операции с элементами (плоскостью данных) выполняются с помощью службы-посредника в ПО промежуточного слоя API. Эта служба упрощает использование собственного протокола службы (MongoDB, Cassandra) в операциях с элементами и запросах. Службе-посреднику требуется прямой сетевой доступ к учетной записи.

  • Для учетных записей, настроенных с общедоступным доступом (все сети), операции плоскости данных не должны иметь проблем с подключением к сети.

  • Для учетных записей, настроенных с общедоступным доступом (выбранные сети), необходимо выбрать Разрешить доступ на портале Azure на странице службы в портал Azure. Этот параметр добавляет диапазон IP-адресов, включающих службу ПО промежуточного слоя. Вам не нужно добавлять IP-адрес текущего устройства.

  • Если у учетной записи нет правила брандмауэра, Data Explorer выдает ошибку, которая может наблюдаться в средствах разработчика браузера. Это сообщение об ошибке содержит универсальное Error querying documents сообщение или Failed to establish connection with cassandra node сообщение, созданное службой ПО промежуточного слоя. Развернутое сообщение об ошибке включается в журналы шлюза вычислений, как в следующем примере:

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