聯繫我們
 課程時長 48 時間:

課程簡介

模組 1:簡介與 MongoDB 架構 (4小時)

內容:

  • MongoDB 歷史及生態系統
  • 典型應用場景、優勢與劣勢
  • 一般架構:執行個體、程序及配置

實作:

  • 互動式探索:使用 Mongo Shell/CLI 進行連接
  • 建立範例資料庫及集合

模組 2:安裝與初始配置 (6小時)

內容:

  • 硬體及資源需求
  • 在 Linux (deb/rpm)、Windows 及 macOS 上的安裝
  • YAML 配置文件 (mongod.conf):dataDir、logDir、bindIp、port
  • 啟動選項及 systemd/service 管理

實作:

  • 在本地虛擬機器或 Docker 容器中部署執行個體
  • 調整開發環境與生產環境的配置
  • 驗證安全的遠端連接

模組 3:數據建模與基本操作 (5小時)

內容:

  • BSON 文件、集合、資料庫
  • 建模:嵌入 (Embedding) 與引用 (Referencing);數據設計模式
  • 基本索引(前期介紹)
  • 使用 Mongo Shell 的操作及驅動程式腳本示例

實作:

  • 建模應用案例:庫存或計費系統
  • 實作 CRUD 操作
  • 在 MongoDB 中使用 JSON Schema 進行模式驗證

模組 4:索引與效能 (4小時)

內容:

  • 簡單、複合、多鍵、文字及地理空間索引
  • 使用 explain() 及分析指標
  • 索引對寫入效能及記憶體的影響

實作:

  • 建立包含測試數據的集合
  • 測試有無索引的查詢;解讀 explain()
  • 根據存取模式調整索引

模組 5:安全性 (5小時)

內容:

  • 身份驗證機制:SCRAM、LDAP/Kerberos(簡介)
  • 定義使用者及自訂角色
  • 客戶端與伺服器之間的 TLS/SSL
  • 靜態數據加密:金鑰配置
  • 基本審計日誌

實作:

  • 建立具備最小權限的使用者
  • 在本地執行個體中配置 TLS
  • 驗證未授權存取並檢視審計日誌

模組 6:複寫與高可用性 (6小時)

內容:

  • 複寫概念:Primary、Secondary、oplog
  • 複寫集配置:初始化、成員管理、仲裁
  • 監控狀態及選舉
  • 維護:新增/移除成員、重新分配優先級

實作:

  • 部署三節點複寫集(本地或虛擬機器)
  • 模擬 Primary 節點故障並觀察故障轉移
  • 重建 Secondary 節點並恢復複寫

模組 7:分片與水平擴展 (6小時)

內容:

  • 分片概念:分片金鑰 (Shard Key)、配置伺服器 (Config Servers)、mongos 路由器
  • 分片金鑰選擇及相關風險
  • 部署配置伺服器、分片及 mongos
  • 重新平衡及區塊 (Chunk) 遷移

實作:

  • 配置簡單的分散式叢集
  • 插入大規模數據並觀察分佈情況
  • 引入分片金鑰變更並理解其限制

模組 8:備份、恢復與災難恢復 (4小時)

內容:

  • 原生工具:mongodump/mongorestore、檔案系統快照
  • 複寫集及分散式叢集的備份
  • Cloud Manager/Ops Manager 備份的基本使用
  • 災難恢復 (DR) 規劃:RTO、RPO

實作:

  • 對測試資料庫執行備份及恢復
  • 模擬故障並從備份中恢復
  • 為假設案例設計 DR 計劃

模組 9:監控與警報 (4小時)

內容:

  • 工具:mongostat、mongotop、Cloud Manager/Atlas 監控
  • 與 Prometheus + Grafana 的整合(概念及示例)
  • 關鍵指標:CPU、記憶體、I/O、oplog 大小、延遲
  • 警報:定義閾值及通知

實作:

  • 部署本地或基於容器的監控代理
  • 使用樣本指標建立基本儀表板
  • 模擬負載並觀察警報

模組 10:維護、升級與最佳實踐 (4小時)

內容:

  • 複寫集及分散式叢集的升級策略
  • 數據清理、壓縮、完整性檢查
  • 檢視日誌及定期審計
  • 自動化常規任務(腳本、cronjobs、Ansible、Terraform)
  • 數據保留及歸檔策略

實作:

  • 在受控環境中模擬次要及主要版本升級
  • 建立備份及監控的自動化腳本
  • 制定定期維護清單

總結與後續步驟

最低要求

  • 了解一般資料庫概念及數據結構
  • 熟悉 Linux 命令列操作
  • 具備網路及系統管理的基本知識

目標受眾

  • 使用 MongoDB 的資料庫管理員及系統工程師
  • 負責部署及維護 MongoDB 環境的 DevOps 及基礎架構團隊
  • 對 MongoDB 內部機制及部署最佳實踐感興趣的開發人員

客戶評論 (2)

課程分類