Condividi tramite


Azure Cosmos DB Esplora dati non riesce a connettersi

In alcuni casi, l'Esplora dati di Azure Cosmos DB non può connettersi all'account o eseguire operazioni su risorse o elementi. Questo articolo esamina le possibili cause e soluzioni a questo problema.

Importante

Il Esplora dati di Azure Cosmos DB non è disponibile per l'API per PostgreSQL o l'API per vCore.

Prerequisiti

Un account Azure Cosmos DB esistente per NoSQL, MongoDB UR, Apache Cassandra, Apache Gremlin o Table

Sintomi

Non è possibile connettersi al Esplora dati anche dopo aver abilitato l'opzione Consenti l'accesso dal portale di Azure.

Causa

Anche dopo aver configurato le autorizzazioni corrette per il controllo degli accessi in base al ruolo e il portale, è necessario configurare requisiti di accesso alla rete aggiuntivi in base all'API selezionata.

  • Alcuni servizi, ad esempio l'API per NoSQL, l'API per Apache Gremlin e l'API per tabelle, usano un SDK JavaScript lato client per eseguire operazioni e richiedere un set di soluzioni.

  • Altri servizi, ad esempio l'API per MongoDB UR e l'API per Apache Cassandra, usano middleware specifico del protocollo e richiedono una soluzione alternativa.

Soluzione per l'API per NoSQL, Apache Gremlin o Table

Le operazioni di database, contenitore, grafo e tabella (piano di controllo) vengono eseguite tramite chiamate al piano di controllo di Azure Resource Manager usando il provider di risorse di Azure Cosmos DB. La configurazione di rete non influisce su queste operazioni.

Le operazioni dell'elemento (piano dati) vengono eseguite usando JavaScript SDK nel contesto del browser. Il dispositivo attualmente in uso deve avere accesso diretto alla rete all'account.

  • Per gli account configurati con accesso pubblico (tutte le reti), le operazioni del piano dati non devono avere problemi di connettività correlati alla rete.

  • Per gli account configurati con accesso pubblico (reti selezionate) è necessario creare una regola del firewall per consentire l'accesso all'account dal dispositivo corrente. La funzionalità Rete nella pagina del servizio nella portale di Azure ha un collegamento ipertestuale Aggiungi ip corrente (...) che può aggiungere automaticamente l'indirizzo IP.

  • Se l'account non dispone di una regola del firewall, il Esplora dati genera un errore che può essere osservato nelle notifiche per Esplora dati. Questo messaggio di errore contiene testo simile agli esempi seguenti:

    API Errore
    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.
    Tabella 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.
  • Per gli account configurati con accesso pubblico disabilitato, il dispositivo deve essere connesso a una rete virtuale con connettività all'account per il funzionamento delle operazioni del piano dati.

Soluzione per l'API per MongoDB UR o Apache Cassandra

Esaminare rispettivamente il piano di controllo e le soluzioni del piano dati.

Le operazioni di database, keyspace e raccolta (piano di controllo) vengono eseguite tramite chiamate al piano di controllo di Azure Resource Manager usando il provider di risorse di Azure Cosmos DB. La configurazione di rete non influisce su queste operazioni.

Le operazioni degli elementi (piano dati) vengono eseguite usando un servizio proxy nel middleware dell'API. Questo servizio facilita l'uso del protocollo nativo del servizio (MongoDB, Cassandra) nelle operazioni e nelle query degli elementi. Il servizio proxy richiede l'accesso diretto alla rete all'account.

  • Per gli account configurati con accesso pubblico (tutte le reti), le operazioni del piano dati non devono avere problemi di connettività correlati alla rete.

  • Per gli account configurati con accesso pubblico (reti selezionate) è necessario selezionare Consenti accesso dal portale di Azure nella funzionalità Rete della pagina del servizio nella portale di Azure. Questa opzione aggiunge un intervallo di indirizzi IP che includono il servizio middleware. Non è necessario aggiungere l'indirizzo IP del dispositivo corrente.

  • Se l'account non ha una regola del firewall, il Esplora dati genera un errore che può essere osservato negli strumenti di sviluppo del browser. Questo messaggio di errore contiene un messaggio generico Error querying documents o Failed to establish connection with cassandra node generato dal servizio middleware. Il messaggio di errore espanso è incluso nei log del gateway di calcolo, simile all'esempio seguente:

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