Kursplan
Modul 1: Innføring og MongoDB Arkitektur (4h)
Innhold:
- Historikk og MongoDB økosystem
 - Vanlige brukstilfeller, fordeler og ulemper
 - Generell arkitektur: instanser, prosesser og konfigurasjon
 
Øving:
- Interaktiv utforskning: kobling med Mongo Shell/CLI
 - Oppretting av en eksempeldatabase og samling
 
Modul 2: Installasjon og Innledende Konfigurasjon (6h)
Innhold:
- Krav til maskinvare og ressurser
 - Installasjon på Linux (deb/rpm), Windows, og macOS
 - YAML-konfigurasjonsfiler (mongod.conf): dataDir, logDir, bindIp, port
 - Startoppsjoner og systemd/tjenestehåndtering
 
Øving:
- Distribusjon av instanser på lokale VMer eller Docker kontainere
 - Tilpassing av konfigurasjoner for utvikling mot produksjon
 - Verifisering av sikker fjernkobling
 
Modul 3: Datamodellering og Grunnleggende Operasjoner (5h)
Innhold:
- BSON-dokumenter, samlinger, databaser
 - Modellering: innlegging vs. referering; datadesignmønstre
 - Grunnleggende indekser (introdusert tidligere)
 - Operasjoner med Mongo Shell og skripteksempler ved hjelp av drivere
 
Øving:
- Modellering av en brukstilfelle: lager- eller faktureringsystem
 - Implementering av CRUD-operasjoner
 - Skjemavalidering ved hjelp av JSON Skjema i MongoDB
 
Modul 4: Indekser og Ytelse (4h)
Innhold:
- Enkle, sammensatte, multikey, tekst- og geospatiale indekser
 - Bruk av explain() og analysering av metrikker
 - Indeksens innvirkning på skriveytelse og hukommelse
 
Øving:
- Oppretting av samlinger med testdata
 - Testing av spørringer med og uten indekser; fortolkning av explain()
 - Tilpasning av indekser basert på tilgangsmønstre
 
Modul 5: Sikkerhet (5h)
Innhold:
- Autentiseringsmekanismer: SCRAM, LDAP/Kerberos (innføring)
 - Definering av brukere og tilpassede roller
 - TLS/SSL mellom klienter og servere
 - Kryptering i hvile: nøkkelkonfigurasjon
 - Grundleggende revisjonsloggføring
 
Øving:
- Oppretting av brukere med minimale rettigheter
 - Konfigurasjon av TLS i lokale instanser
 - Verifisering av uautorisert tilgang og gjennomgang av revisjonslogger
 
Modul 6: Replikasjon og Høy Tilgjengelighet (6h)
Innhold:
- Replikasjonsbegreper: Primær, Sekundær, oplog
 - Konfigurasjon av replikkasser: innledning, medlemskap, valg
 - Overvåking av status og valg
 - Vedlikehold: tillegging/fjerning av medlemmer, omfordeling av prioriteringer
 
Øving:
- Distribusjon av en tre-nodes replikkasse (lokal eller VMer)
 - Simulering av primærfeil og observasjon av feilsikring
 - Gjenoppbygging av sekundære noder og gjenoppretting av replikaer
 
Modul 7: Sharding og Horisontal Skalering (6h)
Innhold:
- Sharding-begreper: shard-nøkkel, konfigurasjonsservere, mongos-router
 - Valg av shard-nøkkel og tilknyttede risikoer
 - Distribusjon av konfigurasjonsservere, shards og mongos
 - Balansering og flytting av biter
 
Øving:
- Konfigurasjon av en enkel shardet kluster
 - Innserting av store data og observasjon av distribusjon
 - Innføring av endringer i shard-nøkkel og forståelse av begrensninger
 
Modul 8: Sikkerhetskopiering, Gjenoppretting og Katastrofegjenoppretting (4h)
Innhold:
- Innfødte verktøy: mongodump/mongorestore, filsystemssnapshots
 - Sikkerhetskopiering i replikkasser og shardede klustrer
 - Grundleggende bruk av Cloud Manager/Ops Manager for sikkerhetskopiering
 - Katastrofegjenoppretting (DR) planlegging: RTO, RPO
 
Øving:
- Utførelse av sikkerhetskopiering og gjenoppretting på en testdatabase
 - Simulering av feil og gjenoppretting fra sikkerhetskopi
 - Utforming av en DR-plan for en hypotetisk situasjon
 
Modul 9: Overvåking og Alarmer (4h)
Innhold:
- Verktøy: mongostat, mongotop, Cloud Manager/Atlas Overvåking
 - Integrasjon med Prometheus + Grafana (begreper og eksempler)
 - Nøkkelmetrikker: CPU, hukommelse, I/O, oplog-størrelse, forsinkelser
 - Alarmer: definering av terskler og varsler
 
Øving:
- Distribusjon av en lokal eller containerbasert overvåkningsagent
 - Oppsett av grunnleggende dashboards med eksempler på metrikker
 - Simulering av belastning og observasjon av alarmer
 
Modul 10: Vedlikehold, Oppgraderinger og Beste Praktis (4h)
Innhold:
- Oppgraderingsstrategier for replikkasser og shardede klustrer
 - Rensing av data, komprimering, integritetskontroller
 - Gjennomgang av logger og regelmessige revisjoner
 - Automatisering av rutineoppgaver (skripter, cronjobs, Ansible, Terraform)
 - Bevaring og arkivering av data
 
Øving:
- Simulering av mindre og større oppgraderinger i en kontrollert miljø
 - Opprettelse av automatiseringsskript for sikkerhetskopiering og overvåking
 - Utvikling av en periodisk vedlikeholdsliste
 
Oppsummering og Neste Skritt
Krav
- En forståelse av generelle databasekonsepter og datastrukturer
 - Kjennskap til Linux kommando-linjebruk
 - Grundleggende kunnskap om nettverk og systemadministrasjon
 
Målgruppe
- Database-administratorer og systemingeniører som jobber med MongoDB
 - DevOps- og infrastrukturteam som deployer og vedlikeholder MongoDB-miljøer
 - Utviklere som er interessert i MongoDB-interner og beste praksiser for deployment
 
Referanser (5)
Kamil gjorde en kjempejobb. Han stilte spørsmål for å finne ut hva vi allerede kunne og hva vi trengte å fokusere på, og tilpasset enkelt opplæringen til våre behov.
Susanna - USAF
Kurs - MongoDB Advanced Administrator
Maskinoversatt
Situasjonen var atypisk fordi det skulle gjennomføres en intensiv opplæring for utviklere med ikke-utviklere. Lukasz tok denne utfordringen med empati og mye humor. Gjennom sin intelligente og fleksible væremåte kunne han sørge for at en konkret læringsgevinst ble oppnådd for alle. Jeg likte dette veldig godt og tar gjerne et seminar med Lukasz igjen.
Christoph - Honda Bank GmbH
Kurs - MERN Fullstack Development
Maskinoversatt
The lab environment
Samer Roshdi - epic ltd
Kurs - MongoDB for Analysts
It was very flexible and adapted to our expectations and skill level.
Raul Alberto Canales Requena - Kiloo
Kurs - MongoDB for Advanced Users
I generally was benefit from the open mind and communication.