视频私有云实战:基于Docker构建点播私有云平台
私有云是為一個客戶單獨使用而構建的,因而提供對數據、安全性和服務質量的最有效控制。前置條件是客戶擁有基礎設施,并可以使用基礎設施在其上部署應用程序。其核心屬性是專有的資源。本篇文章將會結合網易云信的實踐經驗,以全局概述的方式帶大家認識點播私有化平臺構建的整體架構面貌。
?
推薦閱讀
《幾十萬人同時在線的直播間聊天,如何設計服務端架構?》
《高并發IM系統架構優化實踐》
?
云計算的出現,通過硬件的虛擬化將大量的服務器硬件抽象為巨大的資源池,可以動態的為用戶提供基礎設施、平臺和應用三種形式的服務。目前企業的使用方式有公有云和私有云。公有云下,企業可以拋棄復雜的基礎設施構建和維護,按需購買計算資源和應用服務。但是考慮到一些數據的敏感性和網絡互連互通問題的限制,企業將自己最核心的業務完全托管至公有云有很大顧慮。因此,基于業務上的可靠性、安全性、可控性,很多企業選擇建設私有云。
私有云是為一個客戶單獨使用而構建,因而提供對數據、安全性和服務質量的有效控制。前置條件是客戶擁有基礎設施,并可以使用基礎設施在其上部署應用程序。其核心屬性是專有的資源。
?
架?? 構
點播私有云平臺的模塊設計
基礎服務包括:
能力管理集群包括:
通過提供基礎服務和能力管理集群構建平臺服務,用戶只需要在此基礎上接入業務應用,集成播放SDK和上傳SDK,即可快速構建點播服務。
點播私有云平臺的部署實施設計
上圖闡述了點播私有化平臺的最小部署集群,其中控制集群包含通過基于Openstack進行的硬件資源虛擬化、Docker和Kubernetes實現的容器服務管理、基于虛擬資源和容器的哨兵監控以及賬號管理。計算集群包含點播服務組件的部署以及依賴的存儲、數據管理服務。
?
平臺組成
整個私有化平臺從底層向上構建包括:硬件資源的虛擬化、數據存儲服務構建、點播組件服務部署。
硬件資源的虛擬化
上圖闡述了將硬件資源虛擬化的分層抽象架構:
IaaS:基于Openstack的云計算基礎服務(包括云計算、云網絡和本地存儲)
將硬件資源虛擬化為云主機,支持云主機的管理操作(創建、啟動、停止、重啟、刪除、快照、修改規格、離線遷移、修改云主機名稱等操作)、鏡像快照管理、安全組管理、網絡資源管理(通過管理內網IP和外網IP浮動池,使用獲取,銷毀釋放至IP池)、監控報警(云主機的各項指標監控)。
Pass服務:基于IaaS構建的多租戶PaaS服務(包括存儲服務、數據庫)
Kubernetes:多租戶的集群編排的容器服務
Kubernetes服務為分布式應用服務提供容器的創建、編排、調度、服務發現、彈性伸縮等功能。基于Kubernetes的特性同時融合基礎服務的負載均衡服務能夠保證服務的高可用、高可靠、彈性擴容、不同級別的服務隔離。
管理服務:提供用戶管理和API操作相關服務
提供產品的開發環境、測試環境、線上環境等生命周期的容器服務平臺。通過SOA服務化系統的部署,支持靜態資源發布、后端服務的動態擴容發布、服務的自動上下線等。
?
數據存儲服務構建
PaaS層上數據庫的構建
基于MySQL在計算節點上進行主從部署,隔離網絡環境,提供私有網絡實例。所有實例都是高可用實例,即每個實例都有master和slave角色。slave宕機時,不會對服務產生影響,master發生宕機的情況,會切換至slave實例,同時服務管理會拉起master實例。從而提供穩定可靠的數據庫服務,提供多重安全防護措施和專業的備份、恢復等功能。
PaaS層上存儲服務的構建
基于S3設備,同時提供多節點的斷點上傳、以及圖片和視頻處理云信息獲取服務。提供高可用、支持斷點續傳,同時針對視頻文件特性,獲取視頻文件元信息的存儲特性。其中上傳服務和云信息獲取服務采用Docker鏡像部署,保證服務的管理自動化。
點播組件服務部署
所有點播組件的部署基于Docker鏡像,通過容器管理服務保證服務的高可用以及自動化管理。組件圖如下所示:
組件間調用關系
?
優 ???點
私有云相比較于公有云,在數據安全、充分利用現有硬件和軟件資源、服務質量、管理流程上有突出優勢。基于Docker構建點播私有云平臺在具有以上優勢的同時,還具備資源彈性管理、監控完善、部署簡易、自動化維護等特性。
(1)數據安全。由于存儲服務部署于用戶的硬件環境,構筑在防火墻之后,同時存儲服務的高可用,能夠保證用戶數據的可靠和安全。
(2)監控完善。上述描述的哨兵系統介入整個點播私有化平臺的構建過程,能夠及時上報各個過程中組件的異常情況。
(3)資源彈性管理。基于Openstack構建IaaS平臺,能夠自由管理創建云主機。基于Docker和Kubernetes構建容器管理服務,能夠基于服務鏡像自由創建服務,同時容器管理服務能夠做到彈性擴容。
(4)部署簡易、自動化維護。在通過事先編排好的腳本構建好基礎IaaS平臺后,利用服務鏡像能夠快速部署服務。容器管理服務的服務發現能力使得服務的維護變得簡單。
?
總 ???結
整體來說,私有云由于其特性,在實施過程中,運維成本遠遠高于開發成本。所以,在面向用戶交付實施的過程必需簡易,后續維護盡量做到自動化。盡大可能減少人工介入。本文構建過程中采用的架構技術特點(Openstack、Docker、Kubernetes、zookeeper)比較符合這些特點。本文以全局概述的方式試圖帶大家認識點播私有化平臺構建的整體架構面貌。后續將會在此基礎上不斷深入每個過程的細節,探討實現的考慮點和合理性。想要獲取更多產品干貨、技術干貨,歡迎關注網易云信博客。
總結
以上是生活随笔為你收集整理的视频私有云实战:基于Docker构建点播私有云平台的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MCtalk教育快报 | 0816
- 下一篇: 学霸君袁荣喜:K12一对一辅导,这是一个