Kerangka Materi
Modul 1: Pendahuluan dan Arsitektur MongoDB (4j)
Konten:
- Sejarah dan ekosistem MongoDB
- Kasus penggunaan tipikal, kelebihan dan kekurangan
- Arsitektur umum: instance, proses, dan konfigurasi
Praktik:
- Eksplorasi interaktif: menghubungkan dengan Mongo Shell/CLI
- Membuat database dan koleksi sampel
Modul 2: Pemasangan dan Konfigurasi Awal (6j)
Konten:
- Kebutuhan perangkat keras dan sumber daya
- Pemasangan di Linux (deb/rpm), Windows, dan macOS
- Berkas konfigurasi YAML (mongod.conf): dataDir, logDir, bindIp, port
- Opsi startup dan manajemen systemd/service
Praktik:
- Deployment instance di VM lokal atau container Docker
- Menyesuaikan konfigurasi untuk pengembangan vs produksi
- Memverifikasi konektivitas jarak jauh yang aman
Modul 3: Pemodelan Data dan Operasi Dasar (5j)
Konten:
- Dokumen BSON, koleksi, database
- Pemodelan: embedding vs referencing; pola desain data
- Indeks dasar (diperkenalkan sebelumnya)
- Operasi dengan Mongo Shell dan contoh skrip menggunakan driver
Praktik:
- Pemodelan kasus penggunaan: sistem inventaris atau penagihan
- Implementasi operasi CRUD
- Validasi skema menggunakan JSON Schema di MongoDB
Modul 4: Indeks dan Kinerja (4j)
Konten:
- Indeks sederhana, majemuk, multikey, teks, dan geospasial
- Menggunakan explain() dan menganalisis metrik
- Dampak indeks terhadap kinerja penulisan dan memori
Praktik:
- Membuat koleksi dengan data pengujian
- Menguji kueri dengan dan tanpa indeks; menginterpretasikan explain()
- Menyesuaikan indeks berdasarkan pola akses
Modul 5: Keamanan (5j)
Konten:
- Mekanisme autentikasi: SCRAM, LDAP/Kerberos (pengantar)
- Mendefinisikan pengguna dan peran kustom
- TLS/SSL antara klien dan server
- Enkripsi saat diam (at-rest): konfigurasi kunci
- Logging audit dasar
Praktik:
- Membuat pengguna dengan hak akses minimal
- Mengonfigurasi TLS di instance lokal
- Memverifikasi akses tidak sah dan meninjau log audit
Modul 6: Replikasi dan High Availability (6j)
Konten:
- Konsep replikasi: Primary, Secondary, oplog
- Konfigurasi replica set: inisiasi, keanggotaan, arbitrase
- Memantau status dan pemilihan (elections)
- Pemeliharaan: menambahkan/menghapus anggota, mengalokasikan ulang prioritas
Praktik:
- Deployment replica set tiga node (lokal atau VM)
- Simulasi kegagalan primary dan mengamati failover
- Menbangun ulang node secondary dan memulihkan replika
Modul 7: Sharding dan Skalabilitas Horizontal (6j)
Konten:
- Konsep sharding: shard key, config servers, router mongos
- Pemilihan shard key dan risiko terkait
- Deployment config servers, shards, dan mongos
- Rebalancing dan migrasi chunk
Praktik:
- Mengonfigurasi cluster sharded sederhana
- Sisip data berskala besar dan mengamati distribusinya
- Mengintroduksi perubahan shard key dan memahami keterbatasannya
Modul 8: Backup, Restore, dan Disaster Recovery (4j)
Konten:
- Alat native: mongodump/mongorestore, snapshot sistem berkas
- Backup di replica set dan cluster sharded
- Gunakan dasar Cloud Manager/Ops Manager untuk backup
- Perencanaan Disaster Recovery (DR): RTO, RPO
Praktik:
- Melakukan backup dan restore pada database pengujian
- Simulasi kegagalan dan pemulihan dari backup
- Merancang rencana DR untuk kasus hipotetis
Modul 9: Pemantauan dan Peringatan (4j)
Konten:
- Alat: mongostat, mongotop, Pemantauan Cloud Manager/Atlas
- Integrasi dengan Prometheus + Grafana (konsep dan contoh)
- Metrik utama: CPU, memori, I/O, ukuran oplog, latensi
- Peringatan: mendefinisikan ambang batas dan notifikasi
Praktik:
- Deployment agen pemantauan berbasis lokal atau container
- Menyiapkan dasbor dasar dengan metrik sampel
- Simulasi beban dan mengamati peringatan
Modul 10: Pemeliharaan, Upgrade, dan Praktik Terbaik (4j)
Konten:
- Strategi upgrade untuk replica set dan cluster sharded
- Pembersihan data, kompresi, pemeriksaan integritas
- Meninjau log dan audit rutin
- Otomatisasi tugas rutin (skrip, cronjobs, Ansible, Terraform)
- Kebijakan retensi dan pengarsipan data
Praktik:
- Simulasi upgrade minor dan mayor di lingkungan terkendali
- Membuat skrip otomasi untuk backup dan pemantauan
- Menyusun checklist pemeliharaan berkala
Ringkasan dan Langkah Selanjutnya
Persyaratan
- Pemahaman tentang konsep database umum dan struktur data
- Kenalan dengan penggunaan command-line Linux
- Pengetahuan dasar tentang jaringan dan administrasi sistem
Target Audiens
- Administrator database dan insinyur sistem yang bekerja dengan MongoDB
- Tim DevOps dan infrastruktur yang melakukan deployment dan pemeliharaan lingkungan MongoDB
- Developer yang tertarik pada internal MongoDB dan praktik terbaik deployment
Testimoni (2)
The pace of talking and explanation.
Marko Skokovic - PWO by Lottomatica Serbia
Kursus - MongoDB for Administrators
Sir Jose sangat keren dan menjelaskan setiap detil perintahnya. Kami menghargai waktu yang dia luangkan untuk berbagi pengetahuannya dengan kami, dan itu benar-benar menunjukkan bahwa dia adalah ahli di bidang ini.
Almer Laureta - Asialink Finance Corporation
Kursus - MongoDB for Developers
Diterjemahkan Mesin