Поделиться через


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

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

Внимание

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

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

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

Симптомы

Вы не можете подключиться к обозревателе данных даже после включения разрешения доступа на портале Azure.

Причина

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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