Course Outline

모듈 1: 소개 및 MongoDB 아키텍처 (4h)

내용:

  • MongoDB 역사 및 생태계
  • 일반적인 사용 사례, 장단점
  • 일반적인 아키텍처: 인스턴스, 프로세스 및 설정

실습:

  • 대화형 탐색: Mongo Shell/CLI로 연결
  • 샘플 데이터베이스 및 컬렉션 생성

모듈 2: 설치 및 초기 설정 (6h)

내용:

  • 하드웨어 및 자원 요구 사항
  • Linux (deb/rpm), Windows, macOS에 설치
  • YAML 설정 파일 (mongod.conf): dataDir, logDir, bindIp, port
  • 시작 옵션 및 systemd/서비스 관리

실습:

  • 로컬 VM 또는 Docker 컨테이너에 인스턴스 배포
  • 개발용 및 생산용 설정에 맞게 구성 조정
  • 원격 연결 보안 검증

모듈 3: 데이터 모델링 및 기본 작업 (5h)

내용:

  • BSON 문서, 컬렉션, 데이터베이스
  • 모델링: 임베딩 vs 참조; 데이터 설계 패턴
  • 기본 인덱스 (이전에 소개됨)
  • Mongo Shell 및 드라이버를 사용하여 스크립팅 예제 작업

실습:

  • 사용 사례 모델링: 재고 또는 청구 시스템
  • CRUD 작업 구현
  • MongoDB에서 JSON Schema를 사용하여 스키마 검증

모듈 4: 인덱스 및 성능 (4h)

내용:

  • 간단한, 복합, 다중 키, 텍스트 및 공간 인덱스
  • explain() 사용 및 메트릭 분석
  • 작성 성능 및 메모리에 대한 인덱스 영향

실습:

  • 테스트 데이터로 컬렉션 생성
  • 인덱스 사용 여부에 따른 쿼리 테스트 및 explain() 해석
  • 접근 패턴에 따라 인덱스 조정

모듈 5: 보안 (5h)

내용:

  • 인증 메커니즘: SCRAM, LDAP/Kerberos (소개)
  • 사용자 및 사용자 정의 역할 정의
  • 클라이언트 및 서버 간 TLS/SSL
  • 키 구성 및 정지 중 암호화
  • 기본 감사 로깅

실습:

  • 최소 권한으로 사용자 생성
  • 로컬 인스턴스에서 TLS 구성
  • 권한 없는 접근 확인 및 감사 로그 검토

모듈 6: 복제 및 고가용성 (6h)

내용:

  • 복제 개념: 프라이머리, 세컨더리, oplog
  • 레플리카 세트 구성: 초기화, 멤버십, 중재
  • 상태 및 선거 모니터링
  • 유지보수: 멤버 추가/제거, 우선순위 재할당

실습:

  • 로컬 또는 VM에 세 노드 레플리카 세트 배포
  • 프라이머리 실패 시뮬레이션 및 장애 조치 관찰
  • 세컨더리 노드 재구성 및 복제본 복구

모듈 7: 샤딩 및 수평 확장성 (6h)

내용:

  • 샤딩 개념: 샤드 키, 설정 서버, mongos 라우터
  • 샤드 키 선택 및 관련 위험
  • 설정 서버, 샤드 및 mongos 배포
  • 재조정 및 청크 마이그레이션

실습:

  • 간단한 샤드 클러스터 구성
  • 대량 데이터 삽입 및 분포 관찰
  • 샤드 키 변경 도입 및 제한 사항 이해

모듈 8: 백업, 복원 및 재해 복구 (4h)

내용:

  • 네이티브 도구: mongodump/mongorestore, 파일 시스템 스냅샷
  • 레플리카 세트 및 샤드 클러스터에서 백업
  • 백업을 위한 Cloud Manager/Ops Manager 기본 사용
  • 재해 복구 (DR) 계획: RTO, RPO

실습:

  • 테스트 데이터베이스에서 백업 및 복원 수행
  • 백업에서 실패 및 복구 시뮬레이션
  • 가상의 시나리오를 위한 DR 계획 설계

모듈 9: 모니터링 및 알림 (4h)

내용:

  • 도구: mongostat, mongotop, Cloud Manager/Atlas 모니터링
  • Prometheus + Grafana (개념 및 예제)와 통합
  • 주요 메트릭: CPU, 메모리, I/O, oplog 크기, 지연 시간
  • 경고: 임계값 및 알림 정의

실습:

  • 로컬 또는 컨테이너 기반 모니터링 에이전트 배포
  • 샘플 메트릭으로 기본 대시보드 설정
  • 부하 시뮬레이션 및 경고 관찰

모듈 10: 유지보수, 업그레이드 및 모범 사례 (4h)

내용:

  • 레플리카 세트 및 샤드 클러스터에 대한 업그레이드 전략
  • 데이터 정리, 압축, 무결성 검사
  • 로그 검토 및 정기 감사
  • 일상 작업 자동화 (스크립트, cronjobs, Ansible, Terraform)
  • 데이터 보존 및 아카이빙 정책

실습:

  • 제어된 환경에서 소규모 및 대규모 업그레이드 시뮬레이션
  • 백업 및 모니터링을 위한 자동화 스크립트 생성
  • 주기적 유지보수 체크리스트 개발

요약 및 다음 단계

Requirements

  • 일반 데이터베이스 개념과 데이터 구조에 대한 이해
  • Linux 명령줄 사용에 대한 familiarity
  • 네트워킹 및 시스템 관리 기본 지식

대상

  • Database 관리자 및 시스템 엔지니어는 MongoDB을 사용합니다.
  • DevOps 및 인프라 팀은 MongoDB 환경 배포 및 유지 관리에 참여합니다.
  • MongoDB 내부 구성 및 배포 최적화 방법에 관심이 있는 개발자
 48 Hours

Number of participants


Price per participant

회원 평가 (5)

Upcoming Courses

Related Categories