OCP大會 | DCOS – 面向數據中心的運營操作系統

導讀:1月15日,首屆OCP中國技術研討會在深圳召開,本次會議是由騰訊雲和OCP國際社區合辦。在大會現場,騰訊專家工程師楊曉穎在OCP技術研討會上發表名爲《騰訊雲DCOS技術分享》的演講,以下爲演講全文。楊曉穎,中山大學碩士研究生,騰訊服務器管控架構師。主要負責騰訊服務器自動化運營平臺、私有云基礎設施監管控方案。


本次分享大綱


1. DCOS概念&優勢

2. DCOS解決方案簡介

3. DCOS各模塊揭祕

4. DCOS項目應用&開放計劃


大家好,很高興有機會跟大家一起探討和學習,今天我分享的主題是DCOS項目。

DCOS概念&優勢

1.DCOS概念

DCOS,全稱Data Center Operating System,它致力於打造私有云基礎物理設施的管理引擎,提供的服務包括服務器和網絡設備監管控、配置管理和告警管理。


OCP大會|DCOS – 面向數據中心的運營操作系統




2.DCOS優勢

DCOS功能相對全面,它實際上得益於騰訊多年基礎設施的運營經驗。騰訊有着百萬量級服務器,數以萬計的網絡設備,龐大而複雜的業務生態圈,積累了大量寶貴的運營經驗,另外我們也考慮到私有云環境的不確定性,如用戶使用的設備類型、用戶實際業務需求等,這些都是不可預估的,所以DCOS在融合騰訊優秀運營經驗的同時,也着重提升了自定義能力。

在架構上,DCOS採用模塊化和分層式設計,按功能劃分模塊,用戶可根據自身需要選擇安裝。分層式設計支持集中式和分佈式部署:集中式部署簡單,一臺機器可實現全網控制;分佈式相對靈活,可適配複雜的網絡環境。另外,DCOS提供了大量的開放API,可供用戶進行二次開發,打造自己的運營系統。


DCOS解決方案

1.DCOS在私有云的角色


OCP大會|DCOS – 面向數據中心的運營操作系統




DCOS在私有云管理中扮演什麼樣的角色呢?它主要提供四大類別服務:CMDB(配置管理)、BME(物理裸機管理)、OneMonitor(監控)、OneAlert(告警)。它一定程度上填補了雲解決方案如OpenStack在服務器和網絡設備監管控這一塊的空白。雲其它OSS系統和用戶自有系統,通過DCOS API與其交互,共同構建整個管控平臺。

2、DCOS功能列表

接下來我們看一下DCOS在這四大類別服務中提供了哪些具體的功能。


OCP大會|DCOS – 面向數據中心的運營操作系統



最左邊是配置管理系統CMDB,它負責管理基礎設施的物理信息,這是我們進行一些基礎設施生命管理的第一步,用戶把數據導入CMDB,成爲其它模塊數據來源。

我們在業務上線之前,需要對服務器進行系統安裝,所以我們開發了第二個模塊,即帶外部署模塊,提供了服務器帶外操作(如開關機等電源操作),OS安裝(包括PXE安裝和快速重裝),以及帶外密碼庫管理。

使用這個模塊把服務器部署好之後,在運營過程中我們可能需要對OS進行變更或者業務系統發佈,所以我們推出了第三個模塊,即服務器管控模塊,它支持對服務器進行遠程控制,如文件傳輸、腳本的執行等。

另外,在運營過程中我們可能還會關注服務器的運作情況,有沒有故障等,所以我們又有了服務器的監控模塊。這個模塊會採集OS基礎數據,包括OS狀態、性能等,還會監控業務應用的進程和端口。同時,我們還加入了對硬件的監控,這可以幫助用戶更全面地瞭解機器運作。

除了關注服務器故障,我們還會關注網絡設備的狀態,第五個模塊就是關於網絡設備的採集監控。網絡設備監控包括SNMP流量採集、日誌收集、會話流量、網絡質量探測等。

最後一個是告警模塊,負責告警策略的配置,以及告警管理,如告警判斷、去重、屏蔽等。


DCOS各模塊揭祕

接下來我們逐個瞭解一下各個模塊到底是什麼樣子的。

1.CMDB(配置管理)


OCP大會|DCOS – 面向數據中心的運營操作系統




剛剛提到CMDB存儲的是所有基礎設施的物理信息。它源自於騰訊多年IDC運營經驗,抽象了多個管理對象,包括IDC專線/出口、網絡設備、服務器、IDC機架機位以及IP資源等。我們能夠管理這些物理對象的基本信息,以及它們的關聯關係。同時我們還提供了諸如服務器硬盤等部件數據,以及網絡設備的端口信息,通過這些數據,我們可以繪製物理拓撲結構。這是整個設施生命週期管理的第一步。

2.服務器管理


OCP大會|DCOS – 面向數據中心的運營操作系統




第二個是服務器的管理,它也是借鑑了騰訊內部成百上千種機型的部署經驗以及海量服務器的管控經驗。我們實現了對服務器資源的自動發現,帶外管理、OS部署還有遠程控制。

機器在上電之後,我們通過DHCP服務給它分配帶外IP,藉此實現了資源的自動發現,進而掌管它的帶外,之後我們可以通過PXE方式對機器進行OS安裝。除此之外,我們的部署模塊還支持快速重裝。當然了,因爲我們不可能預估到用戶的業務是什麼樣的形態,所以我們開放了很多自定義的能力,比如自定義OS安裝,自定義RAID組合,還有自定義分區,部署後定製化操作等。最右邊的是遠程控制模塊,它主要是提供穩定高效的文件傳輸和腳本執行通道,用戶可以基於這個模塊去開發自己的作業平臺。

3.服務器監控


OCP大會|DCOS – 面向數據中心的運營操作系統




接下來我們看看怎麼去監控服務器,我們的監控模塊到底有哪些功能。它包含了軟件和硬件的採集和監控,以及第三方組件的監控,當然還提供了通道給用戶上報自己採集的監控數據。

在OS基礎監控這塊,我們採集了CPU利用率、內存使用量、磁盤IO、網卡的狀態等。在硬件這塊,我們採集了諸如電源、風扇、硬盤、RAID卡等的配置信息,同時會生成告警,比如內存缺失、風扇缺失、電源異常、硬盤故障等。除此之外,對於業務應用,我們提供了進程端口監控,還支持用戶導入DataDog開源腳本進行第三方組件的監控。最後,由於用戶可能要監控自身系統的狀態,需要在本機收集數據,希望有方法能幫忙把這些數據存儲起來,所以我們也提供了自定義上報通道,用戶把自行收集的業務數據上報,由DCOS存儲和轉發。

4.網絡監控


OCP大會|DCOS – 面向數據中心的運營操作系統




接下來我們看一下網絡監控。事實上對於網絡監控,我們拆分了四個子模塊,第一個是SNMP模塊,它主要負責採集網絡設備端口信息,包括端口配置、端口的出入流量等,以及設備整體的運作狀態,能夠發現設備中斷、失聯等異常。因爲我們不可能覆蓋市面上所有的網絡設備類型,所以設計了一套自定義採集機制:用戶根據既定的語法以及默認模板,編寫滿足其要求的採集模板,然後把設備跟模板綁定,導入我們系統,我們就能對設備進行自動的採集和監控。

第二個是網絡設備的日誌收集,我們能夠收集設備的日誌,做數據解析和合法性校驗,然後進行關鍵字匹配,判斷是否產生告警。我們支持用戶自定義匹配規則,也就是說,用戶希望看到哪些告警,關注哪些級別,都可以自己編寫規則,導入系統。

第三個是網絡質量探測,我們可以發現網絡是否ping通,還有丟包延時情況。用戶可根據需要部署DCOS探測客戶端,在後臺定義好探測任務,系統就會自動幫他探測他所關注的網絡情況。

最後是會話流量監控,我們支持了netflow/sflow/netstream協議的數據收集和解析,從會話數據中提取源IP、目標IP、源端口、目標端口、出入方向、協議等信息,根據規則做彙總處理並存儲。用戶可以根據這些信息來分析業務的流量使用情況,進而進行業務調整和成本優化。

5.告警管理


OCP大會|DCOS – 面向數據中心的運營操作系統




前面提到了服務器和網絡設備的監控,在設備出現異常時,我們能夠發現異常,並告警出去。但這些告警用戶可能不太關心,或者需要特殊處理,比如用戶覺得某告警要發生了多次之後才知會他,或者重複告警需要過濾等。因此我們推出了DCOS告警模塊。我們的告警模塊提供了告警策略的配置管理以及告警的判斷、去重、屏蔽、通知等。

它的數據來源於服務器和網絡設備採集模塊,當然也支持了用戶自行上報告警。我們可以調用API進行告警策略配置和告警查詢。告警策略能夠決定告警將被怎麼處理,比如要發生多少次之後才需要通知,或者告警是否被屏蔽,又或者是否滿足什麼條件才轉發給消息中心等。根據告警策略和收到的數據,我們就能夠進入告警判斷、告警去重、告警屏蔽,再到告警通知。最後我們也會判斷告警是否已恢復,恢復之後通知用戶。這就是整套告警管理機制,實現了剛剛提到的用戶對告警的定製化要求。


DCOS項目應用&開放計劃



OCP大會|DCOS – 面向數據中心的運營操作系統




目前爲止,我們介紹了DCOS大部分的功能和模塊,當然我們會不斷完善已有的功能模塊,還會引進更多的監管控服務,比如像故障預測等,豐富我們的平臺能力。

接下來我們看看DCOS目前的落地場景以及開放計劃。

1.項目應用

DCOS已經伴隨騰訊金融雲和專有云落地超過了15家中大型企業,這些企業服務器數量從幾百到上萬不等,企業類型也是多種多樣,諸如銀行、超市、交易所等,客戶包括建行總行、港交所、永輝超市、微衆銀行等。

2.專利&開源

專利方面,DCOS目前已有多篇國內外的專利;而開源方面,我們的配置管理模塊(CMDB),已經在騰訊內部開源了,其它模塊也在陸續進行。當然,我們也在積極推動外部開源。

3.開放計劃

最後,我們計劃把DCOS的軟件使用貢獻給OCP開源項目。初期,我們會開放CMDB模塊,服務器相關的模塊(包括帶外部署和遠程控制),還有告警模塊。其它的模塊會根據其成熟程度陸續開放。我們希望通過這些措施,爲OCP的生態圈和整個雲解決方案,貢獻我們的一份力量!

以上是我今天的分享內容,謝謝大家!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章