Plan Szkolenia
Moduł 1: Wprowadzenie i architektura MongoDB (4h)
Treść:
- Historia i ekosystem MongoDB
- Typowe przypadki użycia, zalety i wady
- Ogólna architektura: instancje, procesy i konfiguracja
Praktyka:
- Interaktywne poznawanie: łączenie się z Mongo Shell/CLI
- Tworzenie przykładowej bazy danych i kolekcji
Moduł 2: Instalacja i początkowa konfiguracja (6h)
Treść:
- Wymagania sprzętowe i zasobowe
- Instalacja na Linux (deb/rpm), Windows i macOS
- Pliki konfiguracyjne YAML (mongod.conf): dataDir, logDir, bindIp, port
- Opcje uruchamiania i zarządzanie systemd/service
Praktyka:
- Wdrażanie instancji na lokalnych maszynach wirtualnych lub kontenerach Docker
- Dostosowywanie konfiguracji dla środowisk deweloperskich i produkcyjnych
- Weryfikacja bezpiecznego zdalnego połączenia
Moduł 3: Modelowanie danych i podstawowe operacje (5h)
Treść:
- Dokumenty BSON, kolekcje, bazy danych
- Modelowanie: osadzanie vs. referencje; wzorce projektowania danych
- Podstawowe indeksy (wprowadzone wcześniej)
- Operacje z użyciem Mongo Shell i przykłady skryptów z wykorzystaniem sterowników
Praktyka:
- Modelowanie przypadku użycia: system magazynowy lub rozliczeniowy
- Implementowanie operacji CRUD
- Walidacja schematu przy użyciu JSON Schema w MongoDB
Moduł 4: Indeksy i wydajność (4h)
Treść:
- Proste, złożone, wielokluczowe, tekstowe i geoprzestrzenne indeksy
- Użycie explain() i analiza metryk
- Wpływ indeksów na wydajność zapisu i pamięć
Praktyka:
- Tworzenie kolekcji z danymi testowymi
- Testowanie zapytań z indeksami i bez; interpretacja explain()
- Dostosowywanie indeksów na podstawie wzorców dostępu
Moduł 5: Bezpieczeństwo (5h)
Treść:
- Mechanizmy uwierzytelniania: SCRAM, LDAP/Kerberos (wprowadzenie)
- Definiowanie użytkowników i niestandardowych ról
- TLS/SSL między klientami a serwerami
- Szyfrowanie danych w spoczynku: konfiguracja kluczy
- Podstawowe logowanie audytowe
Praktyka:
- Tworzenie użytkowników z minimalnymi uprawnieniami
- Konfigurowanie TLS w lokalnych instancjach
- Weryfikacja nieautoryzowanego dostępu i przegląd logów audytowych
Moduł 6: Replikacja i wysoka dostępność (6h)
Treść:
- Pojęcia dotyczące replikacji: Primary, Secondary, oplog
- Konfiguracja zestawu replik: inicjacja, członkostwo, arbitraż
- Monitorowanie statusu i wybory
- Konserwacja: dodawanie/usuwanie członków, przypisywanie priorytetów
Praktyka:
- Wdrażanie trzywęzłowego zestawu replik (lokalnie lub na maszynach wirtualnych)
- Symulacja awarii primary i obserwacja przejęcia
- Odbudowa węzłów secondary i odzyskiwanie replik
Moduł 7: Sharding i skalowalność pozioma (6h)
Treść:
- Pojęcia dotyczące shardingu: klucz shard, serwery konfiguracyjne, router mongos
- Wybór klucza shard i związane z nim ryzyka
- Wdrażanie serwerów konfiguracyjnych, shardów i mongos
- Przebudowa i migracja chunków
Praktyka:
- Konfigurowanie prostego klastra shardowanego
- Wstawianie danych na dużą skalę i obserwowanie dystrybucji
- Wprowadzanie zmian klucza shard i zrozumienie ograniczeń
Moduł 8: Kopia zapasowa, przywracanie i odzyskiwanie po awariach (4h)
Treść:
- Natywne narzędzia: mongodump/mongorestore, migawki systemu plików
- Kopie zapasowe w zestawach replik i klastrach shardowanych
- Podstawowe użycie Cloud Manager/Ops Manager do tworzenia kopii zapasowych
- Planowanie odzyskiwania po awariach (DR): RTO, RPO
Praktyka:
- Wykonywanie kopii zapasowej i przywracanie testowej bazy danych
- Symulacja awarii i odzyskiwanie z kopii zapasowej
- Projektowanie planu DR dla hipotetycznego przypadku
Moduł 9: Monitorowanie i alerty (4h)
Treść:
- Narzędzia: mongostat, mongotop, Cloud Manager/Atlas Monitoring
- Integracja z Prometheus + Grafana (pojęcia i przykłady)
- Kluczowe metryki: CPU, pamięć, I/O, rozmiar oplog, opóźnienia
- Alerty: definiowanie progów i powiadomień
Praktyka:
- Wdrażanie lokalnego lub kontenerowego agenta monitorującego
- Konfigurowanie podstawowych pulpitów nawigacyjnych z przykładowymi metrykami
- Symulacja obciążenia i obserwacja alertów
Moduł 10: Konserwacja, aktualizacje i najlepsze praktyki (4h)
Treść:
- Strategie aktualizacji dla zestawów replik i klastrów shardowanych
- Czyszczenie danych, kompaktowanie, sprawdzanie integralności
- Przegląd logów i regularne audyty
- Automatyzacja rutynowych zadań (skrypty, cronjobs, Ansible, Terraform)
- Polityki przechowywania i archiwizacji danych
Praktyka:
- Symulacja mniejszych i większych aktualizacji w kontrolowanym środowisku
- Tworzenie skryptów automatyzujących kopie zapasowe i monitorowanie
- Opracowywanie okresowego checklisty konserwacyjnej
Podsumowanie i kolejne kroki
Wymagania
- Zrozumienie ogólnych pojęć dotyczących baz danych i struktur danych
- Znajomość używania wiersza poleceń w systemie Linux
- Podstawowa wiedza na temat sieci i administracji systemami
Grupa docelowa
- Administratorzy baz danych i inżynierowie systemowi pracujący z MongoDB
- Zespoły DevOps i infrastruktury wdrażające i utrzymujące środowiska MongoDB
- Programiści zainteresowani wewnętrznymi mechanizmami MongoDB i najlepszymi praktykami wdrażania
Opinie uczestników (2)
Tempo mówienia i wyjaśniania.
Marko Skokovic - PWO by Lottomatica Serbia
Szkolenie - MongoDB for Administrators
Przetłumaczone przez sztuczną inteligencję
Sir Jose jest fajny i wyjaśnia każdą szczegółowość poleceń. Cenię sobie czas, który poświęca na dzielenie się swoją wiedzą z nami, a to naprawdę świadczy o tym, że jest ekspertem w tej dziedzinie.
Almer Laureta - Asialink Finance Corporation
Szkolenie - MongoDB for Developers
Przetłumaczone przez sztuczną inteligencję