Menyambungkan ke Azure DocumentDB menggunakan portal Microsoft Azure

MongoDB Shell (mongosh) adalah lingkungan JavaScript dan Node.js untuk berinteraksi dengan penyebaran MongoDB. Ini adalah alat komunitas populer untuk menguji kueri dan berinteraksi dengan data di kluster Azure DocumentDB Anda. Portal Microsoft Azure berisi beberapa alat untuk mengkueri data MongoDB termasuk Azure Cloud Shell. Azure Cloud Shell adalah terminal interaktif, diautentikasi, dan dapat diakses dengan browser untuk mengelola sumber daya Azure. Artikel ini menjelaskan cara menyambungkan ke kluster Azure DocumentDB menggunakan MongoDB Shell dalam Azure Cloud Shell.

Prerequisites

  • Langganan Azure

    • Jika Anda tidak memiliki langganan Azure, buat akun gratis
  • Kluster Azure DocumentDB yang sudah ada

  • Aturan firewall yang memungkinkan klien dalam jaringan Anda tersambung ke kluster. Untuk informasi selengkapnya, lihat mengonfigurasi firewall.

  • (Opsional) Prasyarat ini hanya diperlukan jika Anda menggunakan Azure Cloud Shell dalam jaringan virtual yang sama atau di-peering dengan Azure DocumentDB.

    • Satu atau beberapa Jaringan Virtual Azure yang sudah ada dengan subnet untuk penyebaran Azure Cloud Shell dan Azure DocumentDB.

    • Titik akhir privat untuk kluster Azure DocumentDB. Untuk informasi selengkapnya, lihat mengonfigurasi tautan privat.

    • Azure Cloud Shell disebarkan ke jaringan virtual yang sama atau yang terhubung melalui peering dengan konektivitas ke titik akhir privat Azure DocumentDB. Untuk informasi selengkapnya, lihat menyebarkan Cloud Shell ke jaringan virtual.

Mengaktifkan akses ke kluster Anda dari Azure Cloud Shell

Pertama, pastikan bahwa Azure Cloud Shell dapat mengakses kluster Azure DocumentDB Anda dengan mengizinkan alamat IP-nya di firewall.

  1. Masuk ke portal Azure (https://portal.azure.com).

  2. Navigasi ke kluster Azure DocumentDB.

  3. Pilih Jaringan dari menu navigasi.

  4. Pada halaman Jaringan dalam bagian Akses publik , pilih opsi + Tambahkan IP Azure Cloud Shell untuk menambahkan alamat IP Anda saat ini secara otomatis ke daftar yang diizinkan.

  5. Pilih Simpan untuk menerapkan perubahan.

Nota

Untuk memastikan konektivitas, pastikan alamat IP tertentu untuk wilayah Anda diizinkan. Untuk informasi selengkapnya, lihat Alamat IP untuk Azure DocumentDB.

Menghubungkan dengan Azure Cloud Shell dari Mulai Cepat

Untuk menyambungkan langsung ke Azure DocumentDB menggunakan MongoDB Shell, gunakan pengalaman Mulai Cepat yang tersedia di halaman sumber daya di portal Microsoft Azure.

  1. Di halaman sumber daya kluster, pilih Mulai cepat (pratinjau) dari menu navigasi.

  2. Lalu, pilih Buka shell MongoDB.

  3. Tunggu hingga lingkungan MongoDB Shell dimulai.

  4. Setelah lingkungan siap, masukkan Y untuk menerima pemberitahuan.

    Nota

    Jika Anda mengalami masalah saat menyambungkan menggunakan MongoDB Shell setelah menerima pemberitahuan, pastikan Azure Cloud Shell memiliki akses ke kluster Anda.

  5. Sekarang, masukkan kata sandi Anda untuk menyambungkan kluster Anda ke Cloud Shell.

Mendapatkan kredensi kluster

Dapatkan string koneksi yang Anda butuhkan untuk terhubung ke kluster ini.

  1. Masuk ke portal Microsoft Azure (https://portal.azure.com).

  2. Navigasikan ke kluster Azure DocumentDB yang ada.

Dapatkan kredensial yang Anda gunakan untuk menyambungkan ke kluster.

  1. Pada halaman kluster, pilih opsi String koneksi di menu sumber daya.

  2. Di bagian String koneksi , salin atau rekam nilai dari bidang String koneksi .

Cuplikan layar memperlihatkan opsi string koneksi.

Important

String koneksi di portal tidak menyertakan nilai kata sandi. Anda harus mengganti <password> tempat penampung dengan kredensial yang Anda masukkan saat membuat kluster atau memasukkan kata sandi secara interaktif.

Mengonfigurasi MongoDB Shell di Azure Cloud Shell secara manual

Instal klien MongoDB Shell (mongosh) ke instans Azure Cloud Shell Anda menggunakan Node Package Manager (npm).

  1. Buka Azure Cloud Shell yang dikonfigurasi dengan lingkungan pembuatan skrip Bash.

  2. Instal versi 1 MongoDB Shell secara lokal di direktori pengguna Anda.

    npm install mongosh@1
    
  3. Tunggu hingga penginstalan selesai.

  4. Periksa bahwa penginstalan berhasil dengan memeriksa versi alat mongosh.

    npx mongosh --version
    

Menyambungkan ke kluster

Sambungkan ke kluster Anda dengan menggunakan MongoDB Shell dengan string koneksi yang tidak menyertakan kata sandi. Gunakan perintah kata sandi interaktif untuk memasukkan kata sandi Anda sebagai bagian dari langkah-langkah koneksi.

  1. Sambungkan dengan memasukkan kata sandi di prompt MongoDB Shell. Untuk langkah ini, gunakan string koneksi tanpa kata sandi.

    npx mongosh "mongodb+srv://<username>@<cluster-name>.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"
    
  2. Setelah Anda memberikan kata sandi dan berhasil diautentikasi, amati peringatan yang muncul.

    ------
       Warning: Non-Genuine MongoDB Detected
       This server or service appears to be an emulation of MongoDB rather than an official MongoDB product.
    ------
    

    Tip

    Anda dapat dengan aman mengabaikan peringatan ini. Peringatan ini dihasilkan karena string koneksi berisi cosmos.azure. Azure DocumentDB adalah penawaran platform as a service (PaaS) Azure asli.

Melakukan kueri pengujian

Verifikasi bahwa Anda berhasil tersambung ke kluster dengan melakukan serangkaian perintah dan kueri pengujian.

  1. Periksa status koneksi Anda dengan menjalankan connectionStatus perintah .

    db.runCommand({connectionStatus: 1})
    
    {
      ...
      ok: 1
    }
    
  2. Cantumkan database di kluster Anda.

    show dbs
    
  3. Beralih ke database tertentu. "Gantikan tempat penampung <database-name> dengan nama database apa pun di kluster Anda."

    use <database-name>
    

    Tip

    Misalnya, jika nama database adalah inventory, maka perintahnya adalah use inventory.

  4. Mencantumkan koleksi dalam database.

    show collections
    
  5. Temukan lima item pertama dalam koleksi tertentu. Ganti placeholder <collection-name> dengan nama koleksi apa pun di kluster Anda.

    db.<collection-name>.find().limit(5)
    

    Tip

    Misalnya, jika nama koleksi adalah equipment, maka perintahnya adalah db.equipment.find().limit(5).