機房與資料中心

CMDB 是什麼意思:配置項、關係模型與機房裡的用途

CMDB 是配置管理資料庫,記錄每一個配置項是什麼、在哪裡、連著誰、被誰依賴。資產台帳回答“有什麼”,CMDB 還要回答“動了它會影響誰”,這正是它能用於變更評估和故障定位的原因。

作者 頂聯產品團隊發布於 6 分鐘閱讀

CMDB 是什麼意思?CMDB 是 Configuration Management Database 的縮寫,中文叫配置管理資料庫。它記錄一個 IT 環境裡所有“配置項”(Configuration Item,CI)——伺服器、交換器、IP 位址、作業系統、應用,甚至機櫃和客戶——的屬性,更重要的是記錄它們之間的關係:這台伺服器放在哪個機櫃、接在哪台交換器的哪個連接埠、用了哪些 IP、跑著哪個客戶的業務。有了關係,維運才能在改動之前知道會影響誰,在故障發生時知道往哪裡查。

CMDB 的定義:來自 ITIL 的概念

CMDB 這個詞來自 ITIL(IT 基礎架構庫)。ITIL 把配置管理定義為一個流程:識別、記錄、控制並核實所有對提供 IT 服務有意義的配置項及其關係。承載這些記錄的資料庫,就是 CMDB。ITIL 後來又提出配置管理系統(CMS)的概念:大型組織往往不止一個 CMDB,網路、伺服器、應用各有各的資料來源,CMS 把它們聯合起來對外提供統一檢視。

從定義裡可以拆出三個要素:

要素 含義 例子
配置項(CI) 需要被管理的物件,有唯一標識 伺服器 SRV-0231、交換器 SW-A03、IP 103.45.12.37
屬性 描述 CI 的欄位 型號、序列號、CPU、所在機櫃、狀態、負責人
關係 CI 之間有方向的連線 SRV-0231“位於”機櫃 A03;SRV-0231“連線”SW-A03 的 GE1/0/12

“配置”這個詞容易讓人以為 CMDB 存的是配置檔案,其實不是。它存的是“這個環境由哪些東西組成、怎麼組合”,配置檔案本身通常放在版本庫裡,CMDB 至多記錄一個指向它的引用。

配置項有哪些型別

配置項不限於硬體。一個機房常見的 CI 型別:

CI 型別 例子 關鍵屬性
場所 機房、機櫃、U 位 位址、供電容量、機櫃高度、已用 U 數
硬體 伺服器、交換器、路由器、PDU、防火牆 型號、序列號、資產編號、BMC 位址、上架日期
部件 硬碟、記憶體、網路卡、電源模組 批次、容量、所在裝置、返修記錄
網路資源 IP 段、IP 位址、VLAN、交換器連接埠 CIDR、閘道器、VLAN 編號、連接埠速率
軟體 作業系統、資料庫、中介軟體 版本、安裝時間、許可
服務 客戶訂單、對外業務、內部系統 客戶、SLA、到期時間
人與組織 客戶、維運小組、廠商 聯絡方式、負責範圍
文件 網路拓撲圖、應急預案、合同 版本、生效日期

每個 CI 都要有一個不重複的標識(資產編號、序列號或系統生成的 ID),關係才有辦法引用它。

關係模型:CMDB 和台帳的本質區別

台帳是一張平面的表,一行一台裝置;CMDB 是一張圖,節點是 CI,邊是關係。常見的關係型別:

關係 方向 例子
位於 裝置 → 場所 伺服器 → 機櫃 A03 的 U10~U11
連線 連接埠 → 連接埠 伺服器 eth0 → 交換器 GE1/0/12
上聯 裝置 → 裝置 接入交換器 SW-A03 → 核心交換器 CORE-A
使用 裝置 → 網路資源 伺服器 → IP 103.45.12.37、VLAN 120
取電 裝置 → 電源裝置 伺服器 → PDU A03-L 插口 7
包含 裝置 → 部件 伺服器 → 硬碟 D-240311-07
執行 裝置 → 軟體 伺服器 → Ubuntu 22.04
租用 客戶 → 裝置 客戶 C1024 → 伺服器 SRV-0231
依賴 服務 → 服務 客戶網站 → 資料庫例項

以一台伺服器為中心,它在 CMDB 里長這樣:

客戶 C1024 ──租用──▶ 伺服器 SRV-0231
伺服器 SRV-0231 ──位於──▶ 機櫃 A03,U10~U11
伺服器 SRV-0231 ──取電──▶ PDU A03-L 插口 7 / PDU A03-R 插口 7
伺服器 SRV-0231.eth0 ──連線──▶ 交換器 SW-A03 連接埠 GE1/0/12(VLAN 120)
伺服器 SRV-0231.bmc ──連線──▶ 交換器 SW-MGMT-A 連接埠 GE1/0/12
伺服器 SRV-0231 ──使用──▶ 公網 IP 103.45.12.37、IPMI 10.1.16.37
交換器 SW-A03 ──上聯──▶ 核心交換器 CORE-A 連接埠 XGE1/0/3

有了這張圖,“交換器 SW-A03 要升級韌體”就能順著“連線”關係反查出接在它上面的全部伺服器,再順著“租用”關係查出客戶名單——這就是變更影響分析。

CMDB 有什麼用:四個典型場景

變更影響分析。 任何變更申請先問 CMDB:動這個 CI 會波及哪些 CI?例如更換核心交換器 CORE-A 的一塊板卡,CMDB 沿“上聯”關係找出所有接入交換器,再找出全部伺服器和客戶,變更通知就有了準確的名單,維護視窗也能按客戶 SLA 來定。

故障定位。 客戶 C1024 報障說伺服器不通。查 CMDB:伺服器在 A03 機櫃,接 SW-A03 的 GE1/0/12,用 VLAN 120,取電於 A03-L 的插口 7。維運按這條鏈一路查過去——連接埠有沒有 down、VLAN 對不對、PDU 插口有沒有電——比先問客戶“你的機器在哪”快得多。反過來,SW-A03 上報連接埠告警時,也能立即知道受影響的是哪些客戶。

資產與生命週期。 伺服器從採購、上架、分配、回收到報廢,每個狀態都對應 CMDB 裡的一次更新;硬碟、記憶體按批次入庫,換到哪台機器、什麼時候返修,都能追溯。審計時“這台機器現在在哪、誰在用”不用再翻郵件。

容量與合規。 機櫃還剩幾個 U、哪個 IP 段快用完、哪台 PDU 負載接近上限,都是對 CMDB 的一次彙總查詢。等級保護、ISO 27001 一類的稽核要求資產清單和網路拓撲與實際一致,CMDB 就是拿出來給稽核員看的那份材料。

CMDB 和資產管理系統的區別

兩者經常被混為一談,因為管理物件有重疊(都有伺服器),但關注點不同:

對比項 資產管理系統 CMDB
回答的問題 有多少、值多少錢、歸誰保管 怎麼連的、依賴誰、動了影響誰
管理物件 有財務價值的實物:伺服器、空調、桌椅、車輛 對 IT 服務有意義的一切,包括 IP、VLAN、軟體、服務等邏輯物件
核心欄位 採購價、折舊、保管人、存放地點 屬性 + 關係
驅動流程 採購、領用、盤點、報廢 變更、事件、問題、釋出
更新觸發 財務或行政事件 每一次技術變更
使用者 財務、行政、資產管理員 維運、網路、變更經理

一個簡單的判斷標準:桌椅、空調會進資產系統,但不會進 CMDB;VLAN、IP 段、客戶訂單會進 CMDB,但資產系統不關心。物理伺服器兩邊都有,理想做法是資產編號統一,兩個系統靠它對應。

一個小型機房的 CI 模型範例

以一家有 3 排機櫃、300 台出租伺服器的 IDC 為例,一套夠用的 CI 模型只需要 9 類配置項:

CI 型別 數量級 必填屬性 關係
機房 1~2 名稱、位址、供電與頻寬容量 包含機櫃
機櫃 30 編號、高度(U)、所屬機房 包含裝置
PDU 60 編號、所在機櫃、額定電流 為裝置供電
交換器 40 型號、管理 IP、所在機櫃、U 位 上聯核心;連接埠連線伺服器
伺服器 300 資產編號、型號、序列號、BMC 位址、所在機櫃與 U 位、狀態 連線交換器連接埠;使用 IP;取電於 PDU;歸屬客戶
部件 按批次 型別、批次、數量、所在裝置 包含於伺服器
IP 段 / IP 20 段、5,000 位址 CIDR、型別、VLAN、閘道器、狀態 被伺服器使用
VLAN 50 編號、用途、所屬交換器 承載 IP 段
客戶與訂單 200 客戶名、聯絡方式、到期時間 租用伺服器

命名規則要在建模時定好,例如機櫃 A03 表示 A 排第 3 櫃,伺服器資產編號 SRV-0231,交換器 SW-A03,PDU A03-L 和 A03-R 表示機櫃左右兩條。名字裡帶位置資訊,看到編號就知道在哪,也不容易錄錯。

不要一開始就追求完整。上面這 9 類已經能支撐機房日常的排障和變更查詢;應用層的中介軟體、資料庫、微服務之間的依賴,等到確實有人要查的時候再加。

CMDB 怎麼保持準確

CMDB 失敗的原因幾乎只有一個:資料和現場不一致,大家不再信它,然後就沒人更新了。保持準確靠四件事:

  1. 自動採集優先。 伺服器的 CPU、記憶體、硬碟用採集指令碼探測,交換器的連接埠狀態、MAC 表用 SNMP 讀取,裝置之間的連線用 LLDP 發現,IP 與 MAC 的對應用 ARP 表核對。人工錄入只用來填機器讀不到的資訊,比如客戶和合同。
  2. 兩套資料對照。 人工登記的配置和自動探測的結果同時保留,一旦不一致就產生一條待核實記錄,而不是默默覆蓋。配件被換過、機器被挪過,都是這樣發現的。
  3. 變更流程繫結。 上架、下架、換連接埠、改 IP 都必須先在系統裡操作,再去現場;未更新 CMDB 的變更單不能關閉。
  4. 定期審計。 每季度做一次盤點:掃描網段核對線上位址,抽查機櫃核對 U 位,把差異清零。

在 IDC 裡,這些做法大多已經內建在 DCIM 中。機櫃與資產管理按“資料中心 → 機櫃 → U 位 → 裝置”組織,向伺服器下發採集指令碼自動獲取硬體資訊並保留歷史,人工錄入與探測結果並列對照;IP 位址管理記錄每個位址分給了哪台伺服器,每個位址段屬於哪個 VLAN、閘道器掛在哪台交換器;伺服器列表裡能直接看到每台機器接在哪台交換器的哪個連接埠。對只出租伺服器和機櫃的服務商來說,這就是資料中心這一層的 CMDB;如果還想了解 DCIM 與動環、資產系統的分工,可以看 DCIM 是什麼。

常見問題

CMDB 和 DCIM 是什麼關係?

DCIM 管理機房的物理與網路資源,本身就維護著機櫃、伺服器、交換器連接埠、IP 之間的關係,可以看作資料中心這一層的 CMDB。企業若還有大量應用、中介軟體、資料庫要管理,才需要在上面再建覆蓋應用層的 CMDB。

CMDB 需要記錄到什麼粒度?

以“變更和排障時會不會查它”為準。機房裡記到伺服器、交換器連接埠、IP、PDU 插口這一層足夠;硬碟、記憶體條按批次記錄即可,不必每根記憶體條都建一個配置項。

CMDB 和監控系統是什麼關係?

監控系統負責採集指標和產生告警,CMDB 負責告訴監控“這台機器是誰的、接在哪、影響誰”。常見做法是監控從 CMDB 同步物件清單,告警裡帶上 CMDB 中的機櫃、連接埠和客戶資訊,故障通知才能直接發給對的人。

想看看在你的機房裡怎麼用?

從一次產品示範開始,梳理你的業務鏈路。

查看價格
服務熱線 400-112-2951

讓我們聊聊你的 IDC 業務

掃碼新增企業微信,預約產品示範或申請試用。

Toplink 企業微信二維碼

長按儲存或使用企業微信 / 微信掃描

也可致電
400-112-2951
Telegram
@TopLink88