План на курса

Модул 1: Въведение и архитектура на MongoDB (4ч)

Съдържание:

  • История и екосистема на MongoDB
  • Типични използвания, предимства и недостатъци
  • Обща архитектура: екземпляри, процеси и конфигурация

Практика:

  • Интерактивно разследване: свързване с Mongo Shell/CLI
  • Създаване на примерна база данни и колекция

Модул 2: Инсталиране и начална конфигурация (6ч)

Съдържание:

  • Изисквания за хардуер и ресурси
  • Инсталиране на Linux (deb/rpm), Windows и macOS
  • Конфигурационни файли YAML (mongod.conf): dataDir, logDir, bindIp, port
  • Опции за стартиране и управление на systemd/услуги

Практика:

  • Развертяване на екземпляри на локални VMs или Docker контейнери
  • Промяна на конфигурации за разработка срещу производство
  • Проверка на сигурна отдалечена връзка

Модул 3: Моделиране на данни и основни операции (5ч)

Съдържание:

  • Документи BSON, колекции, бази данни
  • Моделиране: вграждане срещу референциране; шаблони за дизайн на данни
  • Основни индекси (представени по-рано)
  • Операции с Mongo Shell и примерни скриптове с използване на драйвери

Практика:

  • Моделиране на използване: инвентарен или фактурен систем
  • Реализация на операции CRUD
  • Проверка на схемата с използване на JSON Schema в MongoDB

Модул 4: Индекси и производителност (4ч)

Съдържание:

  • Прости, съставни, мултиключови, текстови и геопространствени индекси
  • Използване на explain() и анализ на метрики
  • Влиянието на индексите върху производителността при записване и паметта

Практика:

  • Създаване на колекции с тестови данни
  • Тестиране на заявки с и без индекси; интерпретация на explain()
  • Промяна на индексите според моделите за достъп

Модул 5: Сигурност (5ч)

Съдържание:

  • Механизми за аутентификация: SCRAM, LDAP/Kerberos (въведение)
  • Определяне на потребители и персонализирани роли
  • TLS/SSL между клиенти и сървъри
  • Шифриране в покой: конфигурация на ключ
  • Основно аудитна записване

Практика:

  • Създаване на потребители с минимални привилегии
  • Конфигуриране на TLS в локални екземпляри
  • Проверка на неавторизирания достъп и преглед на аудитните логи

Модул 6: Репликация и висока достъпност (6ч)

Съдържание:

  • Концепции за репликация: Primary, Secondary, oplog
  • Конфигурация на репликации: инициация, членство, арбитраж
  • Мониторинг на статус и избори
  • Поддръжка: добавяне/премахване на членове, преразпределение на приоритети

Практика:

  • Развертяване на репликационен набор от три възла (местен или VMs)
  • Симулиране на отказ на основния възел и наблюдение на превключване
  • Възстановяване на вторичните възли и възстановяване на репликите

Модул 7: Шардиране и хоризонтално масштабиране (6ч)

Съдържание:

  • Концепции за шардиране: шарден ключ, конфигурационни сървъри, mongos маршрутизатор
  • Избор на шарден ключ и свързани рискове
  • Развертяване на конфигурационни сървъри, шардове и mongos
  • Разпределяне и миграция на чънкове

Практика:

  • Конфигуриране на прост шардиран кластер
  • Въвеждане на големи данни и наблюдение на разпределянето
  • Въвеждане на промени в шарден ключ и разбиране на ограниченията

Модул 8: Резервно копиране, възстановяване и възстановяване след бедствие (4ч)

Съдържание:

  • Най-често използвани инструменти: mongodump/mongorestore, снимки на файловата система
  • Резервно копиране в репликационни набори и шардирани кластери
  • Основно използване на Cloud Manager/Ops Manager за резервно копиране
  • Планиране за възстановяване след бедствие (DR): RTO, RPO

Практика:

  • Извършване на резервно копиране и възстановяване на тестова база данни
  • Симулиране на отказ и възстановяване от резервно копиране
  • Проектиране на план за възстановяване след бедствие за хипотетичен случай

Модул 9: Мониторинг и уведомления (4ч)

Съдържание:

  • Инструменти: mongostat, mongotop, Cloud Manager/Atlas Monitoring
  • Интеграция с Prometheus + Grafana (концепции и примерни случаи)
  • Основни метрики: CPU, памет, I/O, размер на oplog, забавяния
  • Уведомления: определяне на прагове и известия

Практика:

  • Развертяване на локален или базиран на контейнери мониторингов агент
  • Настройка на основни табло с примерни метрики
  • Симулиране на натоварване и наблюдение на уведомления

Модул 10: Поддръжка, обновления и добри практики (4ч)

Съдържание:

  • Стратегии за обновление на репликационни набори и шардирани кластери
  • Чистене на данни, компресия, проверка на целостта
  • Преглед на логи и редовни аудити
  • Автоматизация на рутинни задачи (скриптове, cronjobs, Ansible, Terraform)
  • Политики за съхранение и архивиране на данни

Практика:

  • Симулиране на малки и големи обновления в контролирана среда
  • Създаване на автоматизационни скриптове за резервно копиране и мониторинг
  • Развитие на периодичен списък за поддръжка

Резюме и следващи стъпки

Изисквания

  • Разбиране на общ принцип на база данни и структура на данни
  • Знакомство с Linux командата на командния ред
  • Основни знания за мрежи и системно управление

Целева аудитория

  • Database администратори и системни инженери, работащи с MongoDB
  • DevOps и инфраструктурни екипи, разгръщащи и поддържащи MongoDB среди
  • Разработчици, интересуващи се от MongoDB интернали и най-добри практики за разгръщане
 48 Часа

Брой участници


Цена за участник

Oтзиви от потребители (5)

Предстоящи Курсове

Свързани Kатегории