阿里云核心--飛天開放平臺
飛天是由阿里云開發(fā)的一個大規(guī)模分布式計算系統(tǒng),其中包括飛天內(nèi)核和飛天開放服務(wù)。
飛天內(nèi)核負(fù)責(zé)管理數(shù)據(jù)中心Linux集群的物理資源,控制分布式程序運行, 隱藏下層故障恢復(fù)和數(shù)據(jù)冗余等細(xì)節(jié),有效提供彈性計算和負(fù)載均衡。如圖所示,飛天體系架構(gòu)主要包含四大塊:1、資源管理、安全、遠(yuǎn)程過程調(diào)用等構(gòu)建分布式系統(tǒng)常用的底層服務(wù);2、分布式文件系統(tǒng);3、任務(wù)調(diào)度;4、集群部署和監(jiān)控。
飛天開放服務(wù)為用戶應(yīng)用程序提供了計算和存儲兩方面的接口和服務(wù),包括彈性計算服務(wù)(Elastic ComputeService,簡稱ECS)、開放存儲服務(wù)(Open Storage Service,簡稱OSS)、開放結(jié)構(gòu)化數(shù)據(jù)服務(wù)(Open Table Service,簡稱OTS)、關(guān)系型數(shù)據(jù)庫服務(wù)(Relational Database Service,簡稱RDS)和開放數(shù)據(jù)處理服務(wù)(Open Data Processing Service,簡稱ODPS),并基于彈性計算服務(wù)提供了云服務(wù)引擎(Aliyun Cloud Engine,簡稱ACE)作為第三方應(yīng)用開發(fā)和Web 應(yīng)用運行和托管的平臺。
分布式系統(tǒng)底層服務(wù)
資源管理
負(fù)責(zé)調(diào)度和分配集群的內(nèi)存和計算等資源給上層應(yīng)用和服務(wù),管理運行在集群節(jié)點上的任務(wù)的生命周期和資源使用。在多用戶運行環(huán)境中,支持計算額度、訪問控制、作業(yè)優(yōu)先級和資源搶占,達到在保障公平的前提下有效地共享集群資源。
安全管理
提供以用戶為單位的身份認(rèn)證和授權(quán),為集群數(shù)據(jù)資源和服務(wù)的訪問控制生成權(quán)能。
遠(yuǎn)程過程調(diào)用
提供可靠高效的進程間遠(yuǎn)程調(diào)用服務(wù),支持通訊信道的數(shù)據(jù)壓縮和一致性校驗。
分布協(xié)同服務(wù)
提供分布式系統(tǒng)基本的命名服務(wù)、狀態(tài)同步服務(wù)和分布式鎖服務(wù)。支持基于Paxos的分布式共識協(xié)議。
分布式文件系統(tǒng)
提供類似于POSIX的用戶空間文件訪問API,支持隨機讀和追加寫,可用于強一致性要求的事務(wù)日志場景。
高可擴展性,支持上億個文件和PB以上量級的文件存儲。
基于Paxos協(xié)議的多Master設(shè)計,避免集群單點失效,自動進行故障監(jiān)測和數(shù)據(jù)復(fù)制,在不依賴RAID卡和NAS等特殊硬件設(shè)備的條件下,提供99.99%的可用性和大于十個9的數(shù)據(jù)可靠性。
Share-Nothing架構(gòu)設(shè)計,支持大規(guī)模并發(fā)讀寫,充分利用分布式并行帶寬。毫秒級別的日志更新操作,支持快速響應(yīng)的在線服務(wù)。
支持增量擴容和自動數(shù)據(jù)平衡能力,允許用戶定制數(shù)據(jù)分布策略。
任務(wù)調(diào)度
面向海量數(shù)據(jù)處理和大規(guī)模計算類型的復(fù)雜應(yīng)用,提供了一個數(shù)據(jù)驅(qū)動的多級流水線并行計算框架,在表述能力上兼容MapReduce,Map-Reduce-Merge,Cascading,F(xiàn)lumeJava等多種編程模式。
高可擴展性,支持十萬以上級的并行任務(wù)調(diào)度。
自動檢測故障和系統(tǒng)熱點,重試失敗任務(wù),保證作業(yè)穩(wěn)定可靠運行完成。
集群部署與監(jiān)控
部署
提供整個飛天以及上層應(yīng)用服務(wù)的部署、配置管理、以及服務(wù)的自檢和自舉。支持在線集群擴容和應(yīng)用服務(wù)的在線升級。
監(jiān)控
監(jiān)控飛天集群和上層應(yīng)用服務(wù)的運行狀況和性能指標(biāo),提供豐富的監(jiān)控圖表和集群狀況儀表盤,支持用戶定義的自動報警服務(wù),以及在線性能剖析和故障診斷。