MongoDB Atlas CLI: Mengelola Database dari Command Line
MongoDB Atlas CLI menawarkan alternatif yang lebih cepat dibanding antarmuka web. Anda dapat menjalankan dan mengotomatiskan tugas manajemen database langsung dari terminal.
MongoDB Atlas adalah layanan database berbasis cloud yang memungkinkan Anda melakukan deploy, mengelola, dan melakukan scale database MongoDB. Anda dapat mengelola Atlas melalui Atlas UI, antarmuka berbasis web, atau Atlas CLI, alat command-line yang memungkinkan Anda melakukan tugas yang sama menggunakan perintah.
MongoDB Atlas CLI menawarkan alternatif yang lebih cepat dibanding Atlas UI. Anda dapat menjalankan dan mengotomatiskan tugas manajemen database langsung dari terminal.
Dalam artikel ini, saya akan memandu Anda menggunakan Atlas CLI untuk mengelola database Anda.
Prasyarat
Sebelum mulai, pastikan Anda memiliki:
Akun MongoDB Atlas.
Pemahaman dasar command line.
Persyaratan instalasi Atlas CLI untuk sistem operasi Anda.
Struktur Perintah CLI
MongoDB Atlas CLI mengikuti struktur perintah yang konsisten:
Manage clusters for your project. The clusters command provides access to your cluster configurations. You can create, edit, and delete clusters.
Usage:
atlas clusters [command]
Aliases:
clusters, cluster
Available Commands:
list Return all clusters for your project.
describe Return the details for the specified cluster for your project.
advancedSettings Manage advanced configuration settings for your cluster.
...
Flags:
-h, --helphelpfor clusters
Global Flags:
-P, --profile string Name of the profile to use from your configuration file. To learn about profiles for the Atlas CLI, see https://dochub.mongodb.org/core/atlas-cli-save-connection-settings.
Use "atlas clusters [command] --help"formore information about a command.Didukung oleh
Nama perintah, argumen, dan nama flag di Atlas CLI peka huruf besar/kecil. Gunakan kapitalisasi persis seperti yang ditunjukkan pada contoh—misalnya, --orgId bukan --orgID.
Membuat Deployment MongoDB
Deployment adalah instance MongoDB yang berjalan untuk menyimpan dan melayani data Anda. Setiap deployment mencakup server database, penyimpanan, jaringan, dan backup otomatis. MongoDB Atlas menangani manajemen infrastruktur, sehingga Anda dapat fokus menggunakan database alih-alih memelihara server.
Perintah atlas setup memandu Anda melalui proses interaktif. Perintah ini meminta pilihan konfigurasi dan membuat proyek, menyediakan cluster, serta mengonfigurasi pengaturan keamanan dasar.
Autentikasi dengan Deployment yang Ada
Jika Anda sudah memiliki deployment MongoDB Atlas dan ingin mengelolanya dengan CLI, Anda perlu melakukan autentikasi. Untuk masuk, jalankan:
Perintah ini meminta Anda memilih jenis autentikasi, lalu memberikan kode verifikasi satu kali. Salin kode tersebut dan tempelkan di browser saat diminta. Misalnya:
atlas auth login
? Select authentication type: UserAccount
To verify your account, copy your one-time verification code:
QPWF-6GT4
Paste the code in the browser when prompted to activate your Atlas CLI. Your code will expire after 3 minutes.
To continue, go to https://account.mongodb.com/account/connect
Press Enter to open the browser and complete authentication...
Successfully logged in as [email protected].Didukung oleh
Setelah autentikasi, Anda akan memilih organisasi dan format output default. CLI menyimpan sesi Anda, tetapi akan kedaluwarsa secara berkala. Saat Anda melihat error "session expired", jalankan atlas auth login lagi.
Mengelola Profil untuk Berbagai Lingkungan
Profil memungkinkan Anda mengelola beberapa lingkungan MongoDB Atlas dari instalasi CLI yang sama. Setiap profil menyimpan pengaturan koneksi untuk lingkungan yang berbeda, seperti development, staging, atau production.
Dengan profil, Anda dapat dengan cepat beralih antar lingkungan tanpa autentikasi ulang atau mengubah file konfigurasi. Ini berguna saat Anda memelihara proyek atau organisasi MongoDB Atlas terpisah untuk tahapan berbeda dalam alur kerja pengembangan Anda.
Praktik umum adalah membuat proyek Atlas terpisah untuk tiap lingkungan dan menggunakan profil untuk mengelolanya—misalnya:
Profil Development: Mengarah ke proyek dev Anda dengan cluster M0 kecil untuk pengujian.
Profil Staging: Mengarah ke proyek staging yang mencerminkan konfigurasi production.
Profil Production: Mengarah ke proyek production dengan cluster kelas produksi.
Membuat profil untuk lingkungan berbeda
Saat pertama kali menjalankan atlas auth login, CLI membuat profil default. Untuk membuat profil tambahan untuk lingkungan lain, gunakan flag --profile:
Proyek di MongoDB Atlas mengelompokkan cluster, pengguna, dan pengaturan Anda. Anggap proyek sebagai kontainer yang mengelompokkan sumber daya database terkait.
Setiap proyek berisi beberapa cluster dan memiliki kumpulan pengguna serta kontrol akses sendiri. Pemisahan ini berguna ketika Anda memiliki aplikasi, lingkungan, atau tim berbeda yang memerlukan sumber daya database terisolasi.
Membuat proyek
Untuk membuat proyek baru, jalankan:
atlas projects create <projectName>[options]Didukung oleh
Gunakan nama proyek deskriptif yang menunjukkan tujuannya, seperti "ecommerce-transactions" atau "mobile-app-staging."
[options] mencakup flag yang memodifikasi bagaimana dan di mana proyek dibuat. Misalnya, Anda dapat menentukan organisasi tempat proyek akan dibuat:
atlas projects create mobile-app-staging --orgId<organizationId>Didukung oleh
Flag --orgId menentukan organisasi tempat proyek dibuat. Ini wajib kecuali Anda telah menetapkan organisasi default. Anda dapat menjalankan perintah atlas organizations list untuk mendapatkan daftar organisasi Anda dan Id-nya.
In all examples, replace placeholders like <projectId>, <clusterName>, and <username> with your actual project, cluster, or user names and identifiers.Didukung oleh
Memperbarui proyek
Untuk memperbarui pengaturan proyek, gunakan:
atlas projects update <projectId>[options]Didukung oleh
Sebagai contoh, Anda dapat menggunakan flag --name sebagai opsi untuk mengubah nama proyek:
atlas projects update <projectId>--name newProjectNameDidukung oleh
Mendaftar proyek
Untuk menampilkan semua proyek dalam organisasi Anda, gunakan:
Anda dapat menghapus proyek menggunakan perintah Atlas CLI.
atlas projects delete <projectId>--orgId<organizationId>Didukung oleh
Anda tidak dapat menghapus proyek yang masih memiliki cluster aktif. Jadi sebelum menghapus proyek, pastikan Anda menghapus semua cluster di dalamnya.
Mengelola Cluster
Cluster adalah kumpulan server MongoDB yang menyimpan data Anda. Atlas mengelola infrastruktur, replikasi, dan backup untuk cluster Anda.
Membuat cluster
Untuk membuat cluster baru, jalankan:
atlas clusters create <clusterName>[options]Didukung oleh
[options] mencakup flag yang menentukan konfigurasi cluster. Misalnya, Anda dapat menyertakan opsi tambahan untuk mengonfigurasi penyedia cloud, region, dan tier harga MongoDB:
Pada perintah ini, flag --provider menentukan penyedia cloud, seperti AWS, GCP, atau Azure. Flag --region menentukan region tempat cluster akan dideploy. Flag --tier menentukan ukuran cluster.
Jika Anda belum menetapkan proyek default, sertakan flag --projectId:
Untuk melihat detail tentang cluster tertentu, jalankan:
atlas clusters describe <clusterName>--projectId<projectId>Didukung oleh
Perintah ini menampilkan konfigurasi, ukuran, region, dan connection string cluster.
Mendaftar cluster
Untuk menampilkan semua cluster di proyek Anda, jalankan:
atlas clusters list --projectId<projectId>Didukung oleh
Flag --projectId wajib kecuali Anda telah menetapkan proyek default menggunakan:
atlas config set project_id <projectId>Didukung oleh
Menjeda cluster
Anda dapat menjeda cluster sementara tanpa menghapusnya. Ini menghentikan operasi cluster tetapi mempertahankan data dan konfigurasi Anda:
atlas clusters pause <clusterName>--projectId<projectId>Didukung oleh
Menghapus cluster
Untuk menghapus cluster secara permanen, jalankan:
atlas clusters delete <clusterName>--projectId<projectId>Didukung oleh
Setelah membuat cluster, Anda harus mengonfigurasi keamanan jaringan sebelum dapat tersambung ke cluster tersebut.
Mengelola Konfigurasi Daftar Akses IP
Daftar akses IP mengontrol alamat IP mana yang dapat terhubung ke cluster MongoDB Atlas Anda. Setiap proyek dapat memiliki hingga 200 entri daftar akses IP. Anda dapat menambahkan alamat IP individual, rentang dengan notasi CIDR, atau ID security group AWS. Rentang notasi CIDR mendefinisikan blok alamat IP menggunakan IP dasar dan prefiks—misalnya, 192.168.0.0/24. ID security group AWS memungkinkan akses dari semua sumber daya dalam security group AWS yang ditentukan.
Untuk mengelola daftar akses IP, Anda harus memiliki akses Project Owner pada proyek.
Menambahkan alamat IP ke daftar akses
Untuk menambahkan alamat IP Anda saat ini ke daftar akses, jalankan:
atlas accessLists create --currentIp--projectId<projectId>Didukung oleh
Flag --currentIp secara otomatis menambahkan alamat IP mesin yang menjalankan perintah. Ini berguna saat Anda memerlukan akses cepat dari mesin pengembangan Anda.
Untuk menambahkan alamat IP tertentu, jalankan:
atlas accessLists create <ipAddress>--type ipAddress --projectId<projectId>Didukung oleh
<ipAddress> adalah alamat IP yang ingin Anda izinkan. Misalnya:
atlas accessLists create 192.0.2.15 --type ipAddress --comment"Office network"--projectId<projectId>Didukung oleh
Flag --comment menambahkan deskripsi untuk membantu Anda mengidentifikasi entri di kemudian hari.
Untuk menambahkan rentang alamat IP menggunakan notasi CIDR, jalankan:
atlas accessLists create <cidrBlock>--type cidrBlock --projectId<projectId>Didukung oleh
Sebagai contoh:
atlas accessLists create 73.231.201.0/24 --type cidrBlock --comment"Development servers"--projectId<projectId>Didukung oleh
Membuat entri daftar akses sementara
Untuk menambahkan alamat IP yang otomatis kedaluwarsa setelah waktu tertentu, gunakan flag --deleteAfter. Anda dapat menetapkan tanggal kedaluwarsa hingga tujuh hari ke depan:
atlas accessLists create <ipAddress>--type ipAddress --deleteAfter<isoDateTime>--projectId<projectId>Didukung oleh
Flag --deleteAfter menerima tanggal berformat ISO-8601. Misalnya:
MongoDB Atlas secara otomatis menghapus entri setelah tanggal dan waktu yang ditentukan.
Mendaftar entri daftar akses IP
Untuk melihat semua entri daftar akses IP di proyek Anda, jalankan:
atlas accessLists list --projectId<projectId>Didukung oleh
Untuk melihat detail tentang entri tertentu, jalankan:
atlas accessLists describe <entry>--projectId<projectId>Didukung oleh
<entry> adalah alamat IP, blok CIDR, atau ID security group AWS yang ingin Anda lihat.
Menghapus entri daftar akses IP
Untuk menghapus alamat IP dari daftar akses, jalankan:
atlas accessLists delete <entry>--projectId<projectId>Didukung oleh
Mengelola Pengguna dan Peran
Peran memberikan hak istimewa untuk melakukan serangkaian tindakan pada sumber daya tertentu. Pengguna adalah entitas yang diberikan satu atau lebih peran yang menentukan apa yang dapat mereka akses di database.
Untuk mengonfigurasi pengguna dan peran database, Anda harus memiliki akses Organization Owner, Project Owner, atau Project Database Access Admin di MongoDB Atlas.
Mengelola pengguna
Untuk membuat pengguna database, jalankan:
atlas dbusers create [builtInRole][options]Didukung oleh
[builtInRole] adalah satu atau lebih peran bawaan yang akan ditetapkan ke pengguna. [options] mencakup flag yang menentukan kredensial dan konfigurasi pengguna. Misalnya:
Flag --username menentukan nama pengguna. Flag --password menentukan kata sandi. Flag --role menentukan peran yang akan ditetapkan. Dalam kasus ini, nama pengguna adalah myUser, sedangkan kata sandi adalah myPassword.
Untuk menampilkan semua pengguna database di proyek Anda, jalankan:
atlas dbusers list --projectId<projectId>Didukung oleh
Untuk melihat detail tentang pengguna database tertentu, jalankan:
atlas dbusers describe <username>--projectId<projectId>Didukung oleh
Anda juga dapat memperbarui pengguna database. Misalnya, untuk memperbarui kata sandi pengguna, jalankan:
atlas dbusers update myUser --password newPassword --projectId<projectId>Didukung oleh
Untuk memperbarui peran pengguna, jalankan:
atlas dbusers update myUser --role readWriteAnyDatabase --role dbAdmin --projectId<projectId>Didukung oleh
Untuk menghapus pengguna database tertentu, jalankan:
atlas dbusers delete <username>--projectId<projectId>Didukung oleh
Mengelola peran
Ada dua kategori peran yang dapat Anda tetapkan kepada pengguna:
Peran bawaan (built-in)
Peran kustom
Peran bawaan
Peran bawaan adalah peran yang telah ditentukan oleh MongoDB Atlas. Peran ini mencakup kumpulan izin umum untuk berbagai penggunaan database, seperti:
read: Memberikan akses baca saja ke database tertentu.
readWrite: Memungkinkan Anda membaca dan memodifikasi data di database tertentu.
readAnyDatabase: Memberikan akses baca saja ke semua database kecuali database local dan config.
readWriteAnyDatabase: Memberikan akses baca dan tulis ke semua database.
dbAdmin: menyediakan hak administratif untuk database tertentu, seperti membuat indeks atau melihat statistik.
dbAdminAnyDatabase: Memberikan hak administratif pada semua database.
clusterAdmin: Memungkinkan Anda mengelola seluruh cluster, termasuk replikasi dan sharding.
userAdminAnyDatabase: Memungkinkan Anda membuat dan mengubah akun pengguna serta peran di semua database.
Anda tidak dapat mengedit atau menghapus peran bawaan. Anda hanya dapat menugaskannya ke pengguna. Untuk menugaskan peran bawaan saat membuat pengguna, tentukan peran dengan flag --role:
Untuk menugaskan atau mengubah peran pengguna yang sudah ada, jalankan:
atlas dbusers update app-reader --role readWriteAnyDatabase --projectId<projectId>Didukung oleh
Lihat [Built-In Roles and Privileges](https://www.mongodb.com/docs/atlas/mongodb-users-roles-and-privileges/?utm_campaign=devrel&utm_source=third-party-content&utm_medium=cta&utm_content=atlas-cli-datacamp&utm_term=megan.grant) untuk peran bawaan lainnya yang dapat Anda tetapkan ke pengguna.
Peran kustom
MongoDB Atlas memungkinkan Anda membuat peran kustom ketika peran bawaan tidak memenuhi kebutuhan Anda. Peran kustom mendefinisikan serangkaian tindakan hak istimewa spesifik yang sesuai dengan kebutuhan aplikasi atau tim Anda.
Saat membuat peran kustom, tentukan koleksi mana yang boleh diakses pengguna dan tindakan apa pada sumber daya yang boleh mereka lakukan—misalnya, membaca, menyisipkan, memperbarui, atau menghapus data.
Dalam definisi hak istimewa MongoDB, Anda harus menggunakan nama tindakan hak istimewa dalam huruf besar pada perintah CLI Anda, seperti FIND, bukan find. Lihat Privilege Actions untuk lebih banyak tindakan hak istimewa terdefinisi yang dapat dilakukan pengguna pada sumber daya.
Anda dapat mengelola peran kustom dengan Atlas CLI.
Untuk membuat peran kustom, jalankan:
atlas customDbRoles create <roleName>[options]Didukung oleh
<roleName> adalah nama peran kustom yang ingin Anda buat. [options] mencakup flag yang menentukan izin peran—misalnya:
Perintah di atas memperbarui customAnalyticsRole yang ada untuk memberikan hak istimewa tambahan. [email protected] memungkinkan peran membaca dokumen dari koleksi analytics, dan [email protected] memungkinkan menambahkan dokumen ke koleksi logs di database myDatabase.
Flag --projectId menentukan proyek MongoDB Atlas tempat peran tersebut berada.
Untuk menghapus peran kustom, jalankan:
atlas customDbRoles delete <roleName>--projectId<projectId>Didukung oleh
Proses menugaskan peran kustom ke pengguna serupa dengan menugaskan peran bawaan. Gunakan flag --role dengan perintah atlas dbusers create atau atlas dbusers update:
Setelah membuat pengguna database dan menetapkan peran, Anda siap untuk tersambung ke cluster.
Mengambil Connection String
Connection string berisi informasi yang dibutuhkan aplikasi Anda untuk terhubung ke cluster Atlas. String ini mencakup hostname cluster, database autentikasi, dan opsi koneksi.
Sebelum Anda dapat menggunakan connection string, pastikan Anda telah mengonfigurasi daftar akses IP dan membuat setidaknya satu pengguna database.
Mendapatkan connection string untuk sebuah cluster
Untuk mengambil connection string sebuah cluster, jalankan:
atlas clusters connectionStrings describe <clusterName>--projectId<projectId>Didukung oleh
Perintah ini mengembalikan connection string SRV untuk cluster Anda.
Format connection string
MongoDB Atlas menyediakan dua jenis connection string:
Connection string standar (mongodb://): Mencantumkan semua node cluster secara eksplisit. Gunakan format ini saat Anda perlu menentukan alamat server secara individual.
Connection string SRV (mongodb+srv://): Menggunakan DNS untuk mengambil informasi cluster secara otomatis. Ini adalah format yang direkomendasikan karena otomatis diperbarui jika konfigurasi cluster Anda berubah.
Menggunakan connection string
Ganti <username> dan <password> pada connection string dengan kredensial pengguna database Anda:
mongodb+srv://<username>:<password>@cluster0.example.mongodb.net/Didukung oleh
Sebagai contoh, jika nama pengguna Anda appUser dan kata sandinya securePass123:
Anda kemudian dapat menggunakan connection string ini dengan MongoDB Drivers, MongoDB Shell, atau alat MongoDB lainnya untuk terhubung ke cluster Anda.
Mengelola Backup
Backup adalah salinan data database Anda yang dapat digunakan untuk memulihkan cluster jika data hilang atau rusak. Atlas secara otomatis membuat backup sesuai jadwal rutin.
Automated continuous backups are only available for M10+ dedicated clusters. M0 free-tier clusters do not have backup capabilities. M2/M5 shared clusters have basic cloud backups, but not continuous backup. For more information, see [Snapshots for Flex Clusters](https://www.mongodb.com/docs/atlas/backup-restore-cluster/?utm_campaign=devrel&utm_source=third-party-content&utm_medium=cta&utm_content=atlas-cli-datacamp&utm_term=megan.grant#snapshots-for-flex-clusters).Didukung oleh
Untuk mengelola backup, Anda harus memiliki akses Organization Owner atau Project Owner di Atlas.
Membuat backup on-demand
Untuk membuat backup segera, jalankan:
atlas backups snapshots create <clusterName>--desc"Backup description"--projectId<projectId>Didukung oleh
Pada perintah di atas, --desc adalah flag wajib yang menjelaskan snapshot.
Mendaftar backup yang tersedia
Untuk menampilkan semua backup untuk sebuah cluster, jalankan:
atlas backups snapshots list <clusterName>--projectId<projectId>Didukung oleh
Menjelaskan konfigurasi backup
Untuk melihat pengaturan backup sebuah cluster, jalankan:
atlas backups schedule describe <clusterName>--projectId<projectId>Didukung oleh
Memulihkan dari backup
Untuk memulihkan data dari backup, jalankan:
atlas backups restores start <clusterName>--snapshotId<snapshotId>--targetClusterName<targetClusterName>--projectId<projectId>Didukung oleh
Flag --snapshotId menentukan backup mana yang akan dipulihkan. Flag --targetClusterName menentukan nama cluster tempat data akan dipulihkan—misalnya:
atlas backups snapshots delete <snapshotId>--projectId<projectId>Didukung oleh
Penutup
Dalam artikel ini, saya telah memandu Anda melalui struktur perintah CLI, membuat deployment, mengelola proyek dan cluster, mengonfigurasi pengguna dan peran, serta mengelola backup. Anda dapat mengotomatiskan operasi ini dengan menggabungkannya ke dalam skrip, sehingga lebih mudah mengelola banyak lingkungan dan mengintegrasikan manajemen database ke alur kerja pengembangan Anda.
FAQs
Apakah saya perlu autentikasi setiap kali menggunakan MongoDB Atlas CLI?⌄
Tidak. CLI menyimpan sesi Anda setelah Anda menjalankan atlas auth login. Namun, demi alasan keamanan, sesi akan kedaluwarsa secara berkala. Anda hanya perlu autentikasi ulang saat melihat error "session expired".
Bisakah saya menggunakan Atlas CLI dengan cluster free tier (M0)?⌄
Ya, Anda dapat mengelola cluster free tier dengan MongoDB Atlas CLI untuk sebagian besar operasi seperti membuat pengguna, mengelola peran, dan konfigurasi cluster. Namun, operasi backup tidak tersedia untuk cluster free atau shared tier.
Apa perbedaan antara peran pengguna MongoDB Atlas dan peran database?⌄
Peran pengguna Atlas (seperti Organization Owner, Project Owner, dan Project Cluster Manager) mengontrol siapa yang dapat mengelola platform MongoDB Atlas itu sendiri melalui UI, CLI, atau API. Peran database (seperti read, readWrite, dan peran kustom) mengontrol apa yang dapat dilakukan pengguna database saat mereka terhubung ke database MongoDB. Anda memerlukan peran pengguna Atlas yang sesuai untuk membuat dan menetapkan peran database kepada pengguna database.
Bisakah saya mengelola beberapa proyek MongoDB Atlas dengan instalasi CLI yang sama?⌄
Ya, Anda dapat mengelola beberapa proyek dengan satu instalasi CLI. Anda dapat menetapkan proyek default saat autentikasi, atau menentukan proyek yang akan digunakan dengan menyertakan flag --projectId pada perintah Anda. Untuk bekerja dengan beberapa organisasi, gunakan flag --orgId. Anda dapat menampilkan semua proyek menggunakan atlas projects list dan organisasi menggunakan atlas organizations list.
Bagaimana cara menemukan organization ID dan project ID saya? ⌄
Jalankan atlas organizations list untuk melihat semua organisasi Anda beserta ID-nya. Jalankan atlas projects list untuk melihat semua proyek Anda beserta ID-nya.
Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
MongoDB Atlas adalah layanan database berbasis cloud yang memungkinkan Anda melakukan deploy, mengelola, dan melakukan scale database MongoDB. Anda dapat mengelola Atlas melalui Atlas UI, antarmuka berbasis web, atau Atlas CLI, alat command-line yang memungkinkan Anda melakukan tugas yang sama menggunakan perintah.
MongoDB Atlas CLI menawarkan alternatif yang lebih cepat dibanding Atlas UI. Anda dapat menjalankan dan mengotomatiskan tugas manajemen database langsung dari terminal.
Dalam artikel ini, saya akan memandu Anda menggunakan Atlas CLI untuk mengelola database Anda.
Prasyarat
Sebelum mulai, pastikan Anda memiliki:
Struktur Perintah CLI
MongoDB Atlas CLI mengikuti struktur perintah yang konsisten:
Saat Anda menjalankan perintah tanpa subcommand atau flag apa pun, CLI menampilkan informasi bantuan yang mencakup:
Sebagai contoh, jika Anda menjalankan:
Anda akan mendapatkan respons serupa ini:
Nama perintah, argumen, dan nama flag di Atlas CLI peka huruf besar/kecil. Gunakan kapitalisasi persis seperti yang ditunjukkan pada contoh—misalnya,
--orgIdbukan--orgID.Membuat Deployment MongoDB
Deployment adalah instance MongoDB yang berjalan untuk menyimpan dan melayani data Anda. Setiap deployment mencakup server database, penyimpanan, jaringan, dan backup otomatis. MongoDB Atlas menangani manajemen infrastruktur, sehingga Anda dapat fokus menggunakan database alih-alih memelihara server.
Untuk membuat deployment MongoDB, instal atau perbarui Atlas CLI, lalu jalankan perintah:
Perintah atlas setup memandu Anda melalui proses interaktif. Perintah ini meminta pilihan konfigurasi dan membuat proyek, menyediakan cluster, serta mengonfigurasi pengaturan keamanan dasar.
Autentikasi dengan Deployment yang Ada
Jika Anda sudah memiliki deployment MongoDB Atlas dan ingin mengelolanya dengan CLI, Anda perlu melakukan autentikasi. Untuk masuk, jalankan:
Perintah ini meminta Anda memilih jenis autentikasi, lalu memberikan kode verifikasi satu kali. Salin kode tersebut dan tempelkan di browser saat diminta. Misalnya:
Setelah autentikasi, Anda akan memilih organisasi dan format output default. CLI menyimpan sesi Anda, tetapi akan kedaluwarsa secara berkala. Saat Anda melihat error "session expired", jalankan
atlas auth loginlagi.Mengelola Profil untuk Berbagai Lingkungan
Profil memungkinkan Anda mengelola beberapa lingkungan MongoDB Atlas dari instalasi CLI yang sama. Setiap profil menyimpan pengaturan koneksi untuk lingkungan yang berbeda, seperti development, staging, atau production.
Dengan profil, Anda dapat dengan cepat beralih antar lingkungan tanpa autentikasi ulang atau mengubah file konfigurasi. Ini berguna saat Anda memelihara proyek atau organisasi MongoDB Atlas terpisah untuk tahapan berbeda dalam alur kerja pengembangan Anda.
Praktik umum adalah membuat proyek Atlas terpisah untuk tiap lingkungan dan menggunakan profil untuk mengelolanya—misalnya:
Membuat profil untuk lingkungan berbeda
Saat pertama kali menjalankan
atlas auth login, CLI membuat profil default. Untuk membuat profil tambahan untuk lingkungan lain, gunakan flag--profile:Ini membuat profil bernama "dev" dan memandu Anda melalui proses autentikasi. Ulangi untuk tiap lingkungan:
Setiap profil menyimpan kredensial autentikasi, proyek default, dan pengaturan organisasi masing-masing.
Daftarkan profil yang tersedia
Untuk melihat semua profil yang telah dikonfigurasi, jalankan:
Perintah ini menampilkan semua nama profil yang telah Anda buat.
Lihat detail profil
Untuk melihat konfigurasi profil tertentu, jalankan:
Sebagai contoh:
Ini menampilkan pengaturan profil, termasuk ID organisasi dan proyek default.
Beralih antar profil
Untuk menggunakan profil tertentu pada sebuah perintah, tambahkan flag
--profile:Ini menampilkan daftar cluster menggunakan kredensial dan pengaturan dari profil production.
Anda juga dapat menetapkan profil default sehingga tidak perlu menyebutkannya di setiap perintah:
Setelah menetapkan default, semua perintah akan menggunakan profil tersebut kecuali Anda menimpanya dengan flag
--profile.Perbarui pengaturan profil
Untuk mengubah konfigurasi profil, jalankan:
Sebagai contoh, untuk menetapkan proyek default untuk profil dev:
Ganti nama profil
Untuk mengganti nama profil, jalankan:
Sebagai contoh:
Mengelola Proyek
Proyek di MongoDB Atlas mengelompokkan cluster, pengguna, dan pengaturan Anda. Anggap proyek sebagai kontainer yang mengelompokkan sumber daya database terkait.
Setiap proyek berisi beberapa cluster dan memiliki kumpulan pengguna serta kontrol akses sendiri. Pemisahan ini berguna ketika Anda memiliki aplikasi, lingkungan, atau tim berbeda yang memerlukan sumber daya database terisolasi.
Membuat proyek
Untuk membuat proyek baru, jalankan:
Gunakan nama proyek deskriptif yang menunjukkan tujuannya, seperti "ecommerce-transactions" atau "mobile-app-staging."
[options]mencakup flag yang memodifikasi bagaimana dan di mana proyek dibuat. Misalnya, Anda dapat menentukan organisasi tempat proyek akan dibuat:Flag
--orgIdmenentukan organisasi tempat proyek dibuat. Ini wajib kecuali Anda telah menetapkan organisasi default. Anda dapat menjalankan perintahatlas organizations listuntuk mendapatkan daftar organisasi Anda danId-nya.Memperbarui proyek
Untuk memperbarui pengaturan proyek, gunakan:
Sebagai contoh, Anda dapat menggunakan flag
--namesebagai opsi untuk mengubah nama proyek:Mendaftar proyek
Untuk menampilkan semua proyek dalam organisasi Anda, gunakan:
Perintah di atas menggunakan flag
--orgIdsebagai opsi untuk menentukan organisasi mana yang proyeksinya akan ditampilkan:Anda juga dapat mengatur format output, misalnya menampilkan hasil dalam JSON:
Menghapus proyek
Anda dapat menghapus proyek menggunakan perintah Atlas CLI.
Anda tidak dapat menghapus proyek yang masih memiliki cluster aktif. Jadi sebelum menghapus proyek, pastikan Anda menghapus semua cluster di dalamnya.
Mengelola Cluster
Cluster adalah kumpulan server MongoDB yang menyimpan data Anda. Atlas mengelola infrastruktur, replikasi, dan backup untuk cluster Anda.
Membuat cluster
Untuk membuat cluster baru, jalankan:
[options]mencakup flag yang menentukan konfigurasi cluster. Misalnya, Anda dapat menyertakan opsi tambahan untuk mengonfigurasi penyedia cloud, region, dan tier harga MongoDB:Pada perintah ini, flag
--providermenentukan penyedia cloud, seperti AWS, GCP, atau Azure. Flag--regionmenentukan region tempat cluster akan dideploy. Flag--tiermenentukan ukuran cluster.Jika Anda belum menetapkan proyek default, sertakan flag
--projectId:Deskripsikan cluster
Untuk melihat detail tentang cluster tertentu, jalankan:
Perintah ini menampilkan konfigurasi, ukuran, region, dan connection string cluster.
Mendaftar cluster
Untuk menampilkan semua cluster di proyek Anda, jalankan:
Flag
--projectIdwajib kecuali Anda telah menetapkan proyek default menggunakan:Menjeda cluster
Anda dapat menjeda cluster sementara tanpa menghapusnya. Ini menghentikan operasi cluster tetapi mempertahankan data dan konfigurasi Anda:
Menghapus cluster
Untuk menghapus cluster secara permanen, jalankan:
Setelah membuat cluster, Anda harus mengonfigurasi keamanan jaringan sebelum dapat tersambung ke cluster tersebut.
Mengelola Konfigurasi Daftar Akses IP
Daftar akses IP mengontrol alamat IP mana yang dapat terhubung ke cluster MongoDB Atlas Anda. Setiap proyek dapat memiliki hingga 200 entri daftar akses IP. Anda dapat menambahkan alamat IP individual, rentang dengan notasi CIDR, atau ID security group AWS. Rentang notasi CIDR mendefinisikan blok alamat IP menggunakan IP dasar dan prefiks—misalnya,
192.168.0.0/24. ID security group AWS memungkinkan akses dari semua sumber daya dalam security group AWS yang ditentukan.Untuk mengelola daftar akses IP, Anda harus memiliki akses Project Owner pada proyek.
Menambahkan alamat IP ke daftar akses
Untuk menambahkan alamat IP Anda saat ini ke daftar akses, jalankan:
Flag
--currentIpsecara otomatis menambahkan alamat IP mesin yang menjalankan perintah. Ini berguna saat Anda memerlukan akses cepat dari mesin pengembangan Anda.Untuk menambahkan alamat IP tertentu, jalankan:
<ipAddress>adalah alamat IP yang ingin Anda izinkan. Misalnya:Flag
--commentmenambahkan deskripsi untuk membantu Anda mengidentifikasi entri di kemudian hari.Untuk menambahkan rentang alamat IP menggunakan notasi CIDR, jalankan:
Sebagai contoh:
Membuat entri daftar akses sementara
Untuk menambahkan alamat IP yang otomatis kedaluwarsa setelah waktu tertentu, gunakan flag
--deleteAfter. Anda dapat menetapkan tanggal kedaluwarsa hingga tujuh hari ke depan:Flag
--deleteAftermenerima tanggal berformat ISO-8601. Misalnya:MongoDB Atlas secara otomatis menghapus entri setelah tanggal dan waktu yang ditentukan.
Mendaftar entri daftar akses IP
Untuk melihat semua entri daftar akses IP di proyek Anda, jalankan:
Untuk melihat detail tentang entri tertentu, jalankan:
<entry>adalah alamat IP, blok CIDR, atau ID security group AWS yang ingin Anda lihat.Menghapus entri daftar akses IP
Untuk menghapus alamat IP dari daftar akses, jalankan:
Mengelola Pengguna dan Peran
Peran memberikan hak istimewa untuk melakukan serangkaian tindakan pada sumber daya tertentu. Pengguna adalah entitas yang diberikan satu atau lebih peran yang menentukan apa yang dapat mereka akses di database.
Untuk mengonfigurasi pengguna dan peran database, Anda harus memiliki akses Organization Owner, Project Owner, atau Project Database Access Admin di MongoDB Atlas.
Mengelola pengguna
Untuk membuat pengguna database, jalankan:
[builtInRole]adalah satu atau lebih peran bawaan yang akan ditetapkan ke pengguna.[options]mencakup flag yang menentukan kredensial dan konfigurasi pengguna. Misalnya:Flag
--usernamemenentukan nama pengguna. Flag--passwordmenentukan kata sandi. Flag--rolemenentukan peran yang akan ditetapkan. Dalam kasus ini, nama pengguna adalahmyUser, sedangkan kata sandi adalahmyPassword.Untuk menampilkan semua pengguna database di proyek Anda, jalankan:
Untuk melihat detail tentang pengguna database tertentu, jalankan:
Anda juga dapat memperbarui pengguna database. Misalnya, untuk memperbarui kata sandi pengguna, jalankan:
Untuk memperbarui peran pengguna, jalankan:
Untuk menghapus pengguna database tertentu, jalankan:
Mengelola peran
Ada dua kategori peran yang dapat Anda tetapkan kepada pengguna:
Peran bawaan
Peran bawaan adalah peran yang telah ditentukan oleh MongoDB Atlas. Peran ini mencakup kumpulan izin umum untuk berbagai penggunaan database, seperti:
localdanconfig.Anda tidak dapat mengedit atau menghapus peran bawaan. Anda hanya dapat menugaskannya ke pengguna. Untuk menugaskan peran bawaan saat membuat pengguna, tentukan peran dengan flag
--role:Untuk menugaskan atau mengubah peran pengguna yang sudah ada, jalankan:
Lihat [Built-In Roles and Privileges](https://www.mongodb.com/docs/atlas/mongodb-users-roles-and-privileges/?utm_campaign=devrel&utm_source=third-party-content&utm_medium=cta&utm_content=atlas-cli-datacamp&utm_term=megan.grant) untuk peran bawaan lainnya yang dapat Anda tetapkan ke pengguna.
Peran kustom
MongoDB Atlas memungkinkan Anda membuat peran kustom ketika peran bawaan tidak memenuhi kebutuhan Anda. Peran kustom mendefinisikan serangkaian tindakan hak istimewa spesifik yang sesuai dengan kebutuhan aplikasi atau tim Anda.
Saat membuat peran kustom, tentukan koleksi mana yang boleh diakses pengguna dan tindakan apa pada sumber daya yang boleh mereka lakukan—misalnya, membaca, menyisipkan, memperbarui, atau menghapus data.
Dalam definisi hak istimewa MongoDB, Anda harus menggunakan nama tindakan hak istimewa dalam huruf besar pada perintah CLI Anda, seperti FIND, bukan find. Lihat Privilege Actions untuk lebih banyak tindakan hak istimewa terdefinisi yang dapat dilakukan pengguna pada sumber daya.
Anda dapat mengelola peran kustom dengan Atlas CLI.
Untuk membuat peran kustom, jalankan:
<roleName>adalah nama peran kustom yang ingin Anda buat.[options]mencakup flag yang menentukan izin peran—misalnya:Pada perintah di atas:
customAnalyticsRoleadalah nama peran kustom baru. Anda dapat memilih nama deskriptif apa pun yang mencerminkan tujuan peran.--privilegemenentukan tindakan pada sumber daya yang dapat dilakukan peran.[email protected], di mana@memisahkan tindakan dari sumber daya.FINDadalah tindakan hak istimewa yang dikenali oleh MongoDB.myDatabase.usersadalah sumber daya tempat hak istimewa berlaku—dalam hal ini, koleksi users di databasemyDatabase.Untuk melihat detail tentang peran kustom, jalankan:
Perintah di atas menampilkan semua peran kustom dan izinnya.
Untuk memperbarui peran kustom, jalankan:
[options]mencakup flag yang menentukan apa yang akan diperbarui. Misalnya, untuk menambahkan hak istimewa baru pada peran yang ada, jalankan:Perintah di atas memperbarui
customAnalyticsRoleyang ada untuk memberikan hak istimewa tambahan.[email protected]memungkinkan peran membaca dokumen dari koleksianalytics, dan[email protected]memungkinkan menambahkan dokumen ke koleksilogsdi databasemyDatabase.Flag
--projectIdmenentukan proyek MongoDB Atlas tempat peran tersebut berada.Untuk menghapus peran kustom, jalankan:
Proses menugaskan peran kustom ke pengguna serupa dengan menugaskan peran bawaan. Gunakan flag
--roledengan perintahatlas dbusers createatauatlas dbusers update:Setelah membuat pengguna database dan menetapkan peran, Anda siap untuk tersambung ke cluster.
Mengambil Connection String
Connection string berisi informasi yang dibutuhkan aplikasi Anda untuk terhubung ke cluster Atlas. String ini mencakup hostname cluster, database autentikasi, dan opsi koneksi.
Sebelum Anda dapat menggunakan connection string, pastikan Anda telah mengonfigurasi daftar akses IP dan membuat setidaknya satu pengguna database.
Mendapatkan connection string untuk sebuah cluster
Untuk mengambil connection string sebuah cluster, jalankan:
Perintah ini mengembalikan connection string SRV untuk cluster Anda.
Format connection string
MongoDB Atlas menyediakan dua jenis connection string:
Connection string standar (
mongodb://): Mencantumkan semua node cluster secara eksplisit. Gunakan format ini saat Anda perlu menentukan alamat server secara individual.Connection string SRV (
mongodb+srv://): Menggunakan DNS untuk mengambil informasi cluster secara otomatis. Ini adalah format yang direkomendasikan karena otomatis diperbarui jika konfigurasi cluster Anda berubah.Menggunakan connection string
Ganti
<username>dan<password>pada connection string dengan kredensial pengguna database Anda:Sebagai contoh, jika nama pengguna Anda
appUserdan kata sandinyasecurePass123:Anda kemudian dapat menggunakan connection string ini dengan MongoDB Drivers, MongoDB Shell, atau alat MongoDB lainnya untuk terhubung ke cluster Anda.
Mengelola Backup
Backup adalah salinan data database Anda yang dapat digunakan untuk memulihkan cluster jika data hilang atau rusak. Atlas secara otomatis membuat backup sesuai jadwal rutin.
Untuk mengelola backup, Anda harus memiliki akses Organization Owner atau Project Owner di Atlas.
Membuat backup on-demand
Untuk membuat backup segera, jalankan:
Pada perintah di atas,
--descadalah flag wajib yang menjelaskan snapshot.Mendaftar backup yang tersedia
Untuk menampilkan semua backup untuk sebuah cluster, jalankan:
Menjelaskan konfigurasi backup
Untuk melihat pengaturan backup sebuah cluster, jalankan:
Memulihkan dari backup
Untuk memulihkan data dari backup, jalankan:
Flag
--snapshotIdmenentukan backup mana yang akan dipulihkan. Flag--targetClusterNamemenentukan nama cluster tempat data akan dipulihkan—misalnya:Menghapus backup
Untuk menghapus backup, jalankan:
Penutup
Dalam artikel ini, saya telah memandu Anda melalui struktur perintah CLI, membuat deployment, mengelola proyek dan cluster, mengonfigurasi pengguna dan peran, serta mengelola backup. Anda dapat mengotomatiskan operasi ini dengan menggabungkannya ke dalam skrip, sehingga lebih mudah mengelola banyak lingkungan dan mengintegrasikan manajemen database ke alur kerja pengembangan Anda.