成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

從單租戶IaaS到多租戶PaaS——金融級(jí)別大數(shù)據(jù)平臺(tái)MaxCompute的多租戶隔離實(shí)踐

beanlam / 1639人閱讀

摘要:摘要在年云棲大會(huì)北京峰會(huì)的大數(shù)據(jù)專場(chǎng)中,來自阿里云的高級(jí)技術(shù)專家李雪峰帶來了主題為金融級(jí)別大數(shù)據(jù)平臺(tái)的多租戶隔離實(shí)踐的演講。三是運(yùn)行隔離機(jī)制。針對(duì)這一問題,提供了多層隔離嵌套方案以便規(guī)避這種潛在的安全風(fēng)險(xiǎn)。

摘要:在2017年云棲大會(huì)?北京峰會(huì)的大數(shù)據(jù)專場(chǎng)中,來自阿里云的高級(jí)技術(shù)專家李雪峰帶來了主題為《金融級(jí)別大數(shù)據(jù)平臺(tái)的多租戶隔離實(shí)踐》的演講。在分享中,李雪峰首先介紹了基于傳統(tǒng)IaaS單租戶架構(gòu)做隔離時(shí)面臨的問題;然后,他重點(diǎn)分享了MaxCompute PaaS層面的多租戶的架構(gòu)以及MaxCompute在安全隔離方面的具體實(shí)踐。
點(diǎn)此查看原文:http://click.aliyun.com/m/42755/

在2017年云棲大會(huì)?北京峰會(huì)的大數(shù)據(jù)專場(chǎng)中,來自阿里云的高級(jí)技術(shù)專家李雪峰帶來了主題為《金融級(jí)別大數(shù)據(jù)平臺(tái)的多租戶隔離實(shí)踐》的演講。在分享中,李雪峰首先介紹了基于傳統(tǒng)IaaS單租戶架構(gòu)做隔離時(shí)面臨的問題;然后,他重點(diǎn)分享了MaxCompute PaaS層面的多租戶的架構(gòu)以及MaxCompute在安全隔離方面的具體實(shí)踐。

IaaS單租戶大數(shù)據(jù)產(chǎn)品架構(gòu)

基于IaaS單租戶大數(shù)據(jù)產(chǎn)品架構(gòu)如上圖所示,架構(gòu)底層通常利用HDFS2實(shí)現(xiàn);基于HDFS2之上搭建Hadoop Yarn或MESOS等資源管控平臺(tái);在其之上再實(shí)現(xiàn)具體的計(jì)算模型,如MR、Hive、HBASE以及Spark等。在這類生態(tài)環(huán)境中,IaaS平臺(tái)通常作為同一租戶存在,當(dāng)用戶產(chǎn)生新需求時(shí),通過IaaS平臺(tái)申請(qǐng)一批集群(虛機(jī)),再這些集群上部署相應(yīng)的開源產(chǎn)品。從隔離的角度出發(fā),這種生態(tài)面臨以下問題:

首先,IaaS單租戶大數(shù)據(jù)產(chǎn)品架構(gòu)在實(shí)際使用時(shí)存在一定的邏輯問題。使用者進(jìn)行數(shù)據(jù)分析時(shí),需要了解使用的每種產(chǎn)品的具體邏輯,例如運(yùn)行SQL時(shí),需要理解Hive的邏輯,使用Spark時(shí),需要學(xué)習(xí)spark的相關(guān)知識(shí)。當(dāng)使用產(chǎn)品數(shù)量較少時(shí),使用成本還能夠得到有效控制;當(dāng)需要多種產(chǎn)品相互協(xié)助使用時(shí),學(xué)習(xí)成本便成幾何倍數(shù)增加。并且,通常兩款不同的開源產(chǎn)品之間的邏輯模型相互間無法識(shí)別,當(dāng)遇到鑒權(quán)等問題時(shí),邏輯問題更加突出。

其次,每一種開源產(chǎn)品在運(yùn)行級(jí)別上都有其自身的優(yōu)先級(jí)定義。在使用同一種開源產(chǎn)品時(shí),任務(wù)的優(yōu)先級(jí)會(huì)按照開源產(chǎn)品自身的優(yōu)先級(jí)體系進(jìn)行運(yùn)行,高優(yōu)先級(jí)的任務(wù)會(huì)比低優(yōu)先級(jí)的任務(wù)得到更多的資源,運(yùn)行的時(shí)長(zhǎng)也會(huì)得到更好地保障。當(dāng)同時(shí)使用多款開源產(chǎn)品時(shí),基于IaaS單租戶大數(shù)據(jù)產(chǎn)品架構(gòu)無法做到運(yùn)行優(yōu)先級(jí)的全局最優(yōu)化。

最后,上述這些開源產(chǎn)品通常會(huì)提供用戶自定義邏輯,例如MR或Hive提供的UDF。當(dāng)用戶自定義的代碼在大數(shù)據(jù)產(chǎn)品內(nèi)運(yùn)行時(shí),會(huì)造成一定的安全風(fēng)險(xiǎn)。例如,Hadoop Yarn在運(yùn)行用戶自定義代碼時(shí),僅僅使用比較簡(jiǎn)單的Linux Container機(jī)制進(jìn)行隔離。使用這種機(jī)制運(yùn)行隔離時(shí),用戶的代碼邏輯和Hadoop自身進(jìn)程是運(yùn)行在同一個(gè)內(nèi)核(kernel)下的,也就是說如果這部分用戶代碼邏輯包含的攻擊程序能夠影響機(jī)器kernel,則在同一個(gè)內(nèi)核下運(yùn)行的大數(shù)據(jù)產(chǎn)品進(jìn)程也會(huì)隨之受到影響。通常情況下,大數(shù)據(jù)產(chǎn)品的一個(gè)Job會(huì)根據(jù)數(shù)據(jù)分片的大小同時(shí)運(yùn)行在集群的大部分機(jī)器、甚至所有機(jī)器上。這種情況下,安全的風(fēng)險(xiǎn)便放大至整個(gè)集群。一種極端的情況是:當(dāng)利用一個(gè)內(nèi)核的漏洞攻擊一臺(tái)機(jī)器成功時(shí),當(dāng)所提交的Job分片足夠大時(shí),可能會(huì)使得整個(gè)計(jì)算集群癱瘓。

在認(rèn)識(shí)到上述問題之后,MaxCompute通過獨(dú)立自研整體系統(tǒng)架構(gòu),提供了PaaS層面的多租戶能力。

MaxCompute PaaS多租戶架構(gòu)

上圖是MaxCompute PaaS多租戶架構(gòu)示意圖。從圖中可以看出,MaxCompute運(yùn)行在飛天操作系統(tǒng)上,依賴于飛天伏羲模塊提供統(tǒng)一資源管控;依賴于飛天盤古模塊提供統(tǒng)一存儲(chǔ);依賴于飛天女媧模塊提供一致性服務(wù)。MaxCompute通過提供同一套計(jì)算引擎為上層提供了多種計(jì)算形態(tài),包括SQL、MR、圖計(jì)算、PAI、準(zhǔn)實(shí)時(shí)等。

目前,這套計(jì)算引擎已經(jīng)為金融用戶在公共云上提供了相應(yīng)的計(jì)算能力。

在解決MaxCompute多租戶這一問題時(shí),主要是從三個(gè)角度入手:

一是邏輯隔離。從租戶的角度出發(fā),每個(gè)租戶都有自己獨(dú)立的邏輯模型,擁有自己獨(dú)立的資源以及基于相同的邏輯模型實(shí)現(xiàn)的統(tǒng)一授權(quán)模型。

二是資源隔離。對(duì)于不同租戶的任務(wù),在MaxCompute運(yùn)行時(shí),能夠?qū)崿F(xiàn)統(tǒng)一的、全局最優(yōu)的任務(wù)調(diào)度能力以及資源隔離能力。

三是運(yùn)行隔離機(jī)制。目前,MaxCompute提供了用戶自定義邏輯的功能(如Python UDF),為用戶自定義邏輯在MaxCompute上運(yùn)行提供了一套完善的運(yùn)行隔離機(jī)制。

下面來具體分析下MaxCompute提供的這三種隔離機(jī)制。

MaxCompute 邏輯隔離

目前,對(duì)于同一個(gè)MaxCompute實(shí)例,無論其運(yùn)行在多少個(gè)物理集群上,都能在邏輯層提供統(tǒng)一的租戶體系。對(duì)于這套租戶體系,同一個(gè)租戶的數(shù)據(jù)資源視圖和權(quán)限管理模型是唯一的,并與租戶模型綁定。在實(shí)際使用中,MaxCompute上的租戶對(duì)應(yīng)于MaxCompute的Project,其中Project包含租戶所有的資源、屬性以及權(quán)限等信息。

如上圖所示,Project由屬性(Properties)、主題(Subject)、實(shí)體(Object)三部分組成。其中屬性包括Quota、Owner、Payment Account、Region等信息;在Project內(nèi)部所有的授權(quán)訪問都需要以User ID為主題,基于這些主題,MaxCompute提供了角色模型用于實(shí)現(xiàn)授權(quán)聚集;上文所提到的計(jì)算模型(MR、Hive等)要操作的資源最終都落腳于Project中的某一實(shí)體上,例如SQL模型對(duì)應(yīng)于Table實(shí)體、UDF對(duì)應(yīng)Function實(shí)體。

基于以上提供的邏輯模型,MaxCompute提供了一套完整的鑒權(quán)、授權(quán)機(jī)制用于管控權(quán)限。首先,所有權(quán)限均來源于Project Ower,作為Project的所有者,它擁有該P(yáng)roject內(nèi)的全部權(quán)限,任何用戶使用該P(yáng)roject進(jìn)行計(jì)算時(shí),首先需要Project Owner對(duì)其進(jìn)行授權(quán)(具體實(shí)現(xiàn)是利用GTANT語句);當(dāng)該用戶訪問Project時(shí),它會(huì)以User ID的身份進(jìn)行讀寫表、創(chuàng)建函數(shù)、添加刪除資源等操作;這些操作被真正執(zhí)行之前,會(huì)通過統(tǒng)一的ACL邏輯對(duì)當(dāng)前User ID是否具有相應(yīng)的權(quán)限進(jìn)行判斷。

上圖給出了MaxCompute對(duì)不同類型對(duì)象支持的操作方式,更多詳細(xì)操作說明請(qǐng)參考官方文檔。

MaxCompute 資源隔離

MaxCompute 的計(jì)算引擎依賴于飛天操作系統(tǒng)提供資源運(yùn)行、隔離能力。

如上圖所示,當(dāng)不同任務(wù)Job-0、Job-n 提交到飛天伏羲模塊時(shí),伏羲的調(diào)度系統(tǒng)會(huì)根據(jù)不用用戶的運(yùn)行級(jí)別來分配任務(wù)的運(yùn)行級(jí)別,這與上文提到的Project中的屬性相對(duì)應(yīng)。伏羲模塊將不同的任務(wù)Job-0、Job-n轉(zhuǎn)化為伏羲任務(wù);然后調(diào)度到計(jì)算集群的節(jié)點(diǎn)上;最終在計(jì)算集群上,同一個(gè)server上會(huì)同時(shí)運(yùn)行多個(gè)租戶的任務(wù),這些任務(wù)均以伏羲Worker形態(tài)運(yùn)行。

對(duì)于其中的一臺(tái)機(jī)器,當(dāng)該機(jī)器上的伏羲引擎收到Worker Plan后,它會(huì)根據(jù)Worker所對(duì)應(yīng)用戶的quota值去配置當(dāng)前這臺(tái)機(jī)器上的Cgroup的參數(shù)。這樣一來,就保證不同用戶提交的Job最終在物理機(jī)上運(yùn)行的Cgroup配置參數(shù)不同。目前,MaxCompute依賴于Linux Kernel提供的Cgroup能力來規(guī)劃某個(gè)特定進(jìn)程在物理機(jī)上所得的CPU、Memory等資源。

MaxCompute 運(yùn)行隔離

最后來分析下MaxCompute為了安全運(yùn)行用戶自定義邏輯所提供的運(yùn)行隔離機(jī)制。當(dāng)伏羲運(yùn)行用戶自定義代碼邏輯時(shí),它會(huì)拉取一個(gè)隔離的環(huán)境,把用戶的代碼運(yùn)行在隔離的進(jìn)程中。該進(jìn)程對(duì)與伏羲而言與其他進(jìn)程無差別,但其運(yùn)行環(huán)境是在隔離系統(tǒng)中;也就說對(duì)于伏羲而言,這個(gè)進(jìn)程是普通的進(jìn)程,但對(duì)于untrusted code進(jìn)程是隔離的。

運(yùn)行隔離又可以分為進(jìn)程隔離、設(shè)備隔離和網(wǎng)絡(luò)隔離。

進(jìn)程隔離

在進(jìn)程隔離方面,對(duì)于單個(gè)進(jìn)程而言,如果是運(yùn)行的untrusted code(有可能包括惡意攻擊的代碼)進(jìn)程,有可能會(huì)對(duì)計(jì)算平臺(tái)造成損害。針對(duì)這一問題,MaxCompute提供了多層隔離嵌套方案以便規(guī)避這種潛在的安全風(fēng)險(xiǎn)。在最內(nèi)部,MaxCompute提供了語言級(jí)沙箱,包括java sandbox和python sandbox,這種語言級(jí)別的沙箱為用戶代碼提供了最內(nèi)層的隔離,例如java UDF 目前可以做到限制加載具體的類,python UDF可以做到函數(shù)級(jí)別的限制;外面一層,MaxCompute提供了進(jìn)程隔離,它依賴于當(dāng)前Linux Kernel提供的內(nèi)核機(jī)制實(shí)現(xiàn)進(jìn)程的隔離,使用的內(nèi)核機(jī)制包括namespace、cgroup 、secomp-bpf等;最外側(cè),MaxCompute實(shí)現(xiàn)了一層輕量級(jí)的虛擬化,它的實(shí)現(xiàn)原理是通過深度定制Linux Kernel以及一個(gè)最小化的Hypervisor,進(jìn)而提供非常輕量級(jí)的虛擬機(jī)(建立時(shí)間僅為幾百毫秒)。這樣一來,untrusted code最終會(huì)以hypervisor方式運(yùn)行在物理機(jī);也就是說,對(duì)于伏羲而言,它看到的僅僅是hypervisor的進(jìn)程,但對(duì)于untrusted code,它看到的是一套隔離環(huán)境。

設(shè)備隔離

除此之外,MaxCompute也為用戶自定義代碼提供了硬件加速能力,例如PAI是支持直接GPU訪問。目前,MaxCompute通過PCIE passthrough方式將GPU卡直接passthrough到VM內(nèi)部,允許guest進(jìn)程直接通過PCIE總線以及guest kernel 內(nèi)的GPU driver來訪問GPU。

這種VM通過PCIE總線訪問GPU的實(shí)現(xiàn)方式相較于在物理機(jī)直接訪問GPU,性能相近;另一方面,在物理機(jī)上無需安裝GPU driver,規(guī)避掉了GPU driver對(duì)平臺(tái)穩(wěn)定性和可靠性影響。

網(wǎng)絡(luò)隔離

在某些產(chǎn)品上,MaxComputer為用戶代碼邏輯提供了網(wǎng)絡(luò)隔離能力。在伏羲拉起的VM之間實(shí)現(xiàn)了一層虛擬網(wǎng)絡(luò)。這些VM可以通過虛擬網(wǎng)絡(luò)進(jìn)行直接通信,這也為在VM內(nèi)部運(yùn)行一些開源代碼提供了良好的兼容性。同時(shí),從上圖可以看到,用戶自定義的代碼邏輯并不是直接訪問物理網(wǎng)絡(luò)的;而伏羲拉起的tursted code包括MaxCompute框架上的代碼是通過物理網(wǎng)絡(luò)進(jìn)行通信的,這種做法保證了MaxCompute框架在通信上的低時(shí)延。

掃碼獲取更多資訊:

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/11831.html

相關(guān)文章

  • 阿里云MaxCompute被Forrester評(píng)為全球云端數(shù)據(jù)倉庫領(lǐng)導(dǎo)者

    摘要:摘要參考消息網(wǎng)月日?qǐng)?bào)道日前,全球權(quán)威調(diào)研機(jī)構(gòu)佛瑞斯特研究公司發(fā)布年一季度云端數(shù)據(jù)倉庫報(bào)告。阿里云成為唯一入選的中國科技公司。憑借其年的產(chǎn)品成熟度技術(shù)領(lǐng)先性及一站式的大數(shù)據(jù)開發(fā)解決方案,成為云端數(shù)據(jù)倉庫市場(chǎng)的領(lǐng)導(dǎo)者。 摘要: 參考消息網(wǎng)3月19日?qǐng)?bào)道 日前,全球權(quán)威調(diào)研機(jī)構(gòu)佛瑞斯特研究公司(Forrester)發(fā)布《2018年一季度云端數(shù)據(jù)倉庫》報(bào)告。報(bào)告對(duì)大數(shù)據(jù)服務(wù)商的主要功能、區(qū)域表...

    jerry 評(píng)論0 收藏0
  • 為什么 kubernetes 天然適合微服務(wù) (3)

    摘要:此文已由作者劉超授權(quán)網(wǎng)易云社區(qū)發(fā)布。五更加適合微服務(wù)和的設(shè)計(jì)好了,說了本身,接下來說說的理念設(shè)計(jì),為什么這么適合微服務(wù)。相關(guān)閱讀為什么天然適合微服務(wù)為什么天然適合微服務(wù)為什么天然適合微服務(wù)文章來源網(wǎng)易云社區(qū) 此文已由作者劉超授權(quán)網(wǎng)易云社區(qū)發(fā)布。 歡迎訪問網(wǎng)易云社區(qū),了解更多網(wǎng)易技術(shù)產(chǎn)品運(yùn)營經(jīng)驗(yàn) 四、Kubernetes 本身就是微服務(wù)架構(gòu) 基于上面這十個(gè)設(shè)計(jì)要點(diǎn),我們?cè)倩貋砜?Kube...

    nicercode 評(píng)論0 收藏0
  • 深入解讀:獲Forrester數(shù)據(jù)能力高評(píng)價(jià)的阿里云DataWorks思路與能力

    摘要:阿里云成為唯一入選的中國產(chǎn)品。在阿里云的眾多產(chǎn)品中,和共同構(gòu)成了服務(wù)能力的核心。作為大數(shù)據(jù)能力賦能的重要手段,出現(xiàn)在了等阿里云專有云解決方案中。利用云計(jì)算技術(shù),互聯(lián)網(wǎng)公司得以快速的將自身的大數(shù)據(jù)處理能力對(duì)外賦能。 1.前言 本文基于Now Tech: Cloud Data Warehouse, Q1 2018 (Published: by Noel Yuhanna, March 13,...

    ashe 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<