虛擬化容器正迫使服務(wù)器架構(gòu)升級(jí)
最新架構(gòu)和云計(jì)算的發(fā)展,正推動(dòng)虛擬化容器應(yīng)用到數(shù)據(jù)中心生產(chǎn)環(huán)境。
容器化方法對(duì)虛擬化行業(yè)發(fā)出的傳票,正如虛擬化對(duì)傳統(tǒng)數(shù)據(jù)中心一樣,容器化虛擬方案與虛擬機(jī)管理程序一樣,都必須面對(duì)跨租戶(hù)窺探的漏洞。當(dāng)虛擬機(jī)管理程序因未授權(quán)或意外而暴露企業(yè)信息,Intel增加了硬件功能來(lái)遠(yuǎn)程消除租戶(hù)信息,防止數(shù)據(jù)泄露。當(dāng)固態(tài)硬盤(pán)實(shí)例過(guò)度配置問(wèn)題得以解決后,行業(yè)又遇到并克服了數(shù)據(jù)安全漏洞這一問(wèn)題。
現(xiàn)在,隨之而來(lái)的是容器方法的快速發(fā)展。容器運(yùn)行在單一操作系統(tǒng)上,而且這些硬件內(nèi)存控制工具無(wú)法隔離多個(gè)容器。
為確保數(shù)據(jù)安全,數(shù)據(jù)中心可以在虛擬化管理程序里的一臺(tái)虛擬機(jī)中運(yùn)行容器,但這可能會(huì)減緩容器創(chuàng)建速度,也沒(méi)有利用到容器技術(shù)的這一主要賣(mài)點(diǎn)。IT架構(gòu)師可以在單一虛擬機(jī)中建造成百容器,以此來(lái)隔離其他用戶(hù)在另一臺(tái)虛擬機(jī)中創(chuàng)建的幾百個(gè)容器,但結(jié)果是操作非常繁瑣。IT團(tuán)隊(duì)需要調(diào)整虛擬化演變而來(lái)的隔離機(jī)制,以更好的支持容器。
Intel已經(jīng)對(duì)準(zhǔn)虛擬化容器的發(fā)展方向進(jìn)行了架構(gòu)開(kāi)發(fā)。在改變硬件時(shí)額外增加DMA重映射邊界控制,可以限制每個(gè)設(shè)備可訪問(wèn)的系統(tǒng)內(nèi)存,Intel通過(guò)容器化方法,推出了Clear Containers作為一種聚合輕量級(jí)虛擬化管理程序,很像kvmtool。這種結(jié)合擴(kuò)展了內(nèi)存共享能力。
增加輕量級(jí)虛擬化管理程序的額外開(kāi)銷(xiāo)大約在20MB左右,這對(duì)生產(chǎn)環(huán)境中幾乎沒(méi)有影響。更重要的是,新容器的啟動(dòng)時(shí)間大概是150毫秒。雖然比Docker容器慢了點(diǎn),但對(duì)大多數(shù)用途是夠用的。
Intel評(píng)估,管理員可以在一臺(tái)擁有128GB內(nèi)存的服務(wù)器上運(yùn)行大約3,500個(gè)輕量級(jí)虛擬化容器。這樣會(huì)導(dǎo)致I/O饑餓,但數(shù)量確實(shí)高的驚人,也突出了容器方法的價(jià)值所在。
Intel同樣還開(kāi)發(fā)了針對(duì)虛擬化容器的安全功能。Kernel-Guard Technology在硬件與內(nèi)核之間增加了一個(gè)小型監(jiān)視器,可以防止內(nèi)核與寄存器被修改。Cloud Integrity Technology生成密鑰模塊哈希,并且調(diào)用Trusted Platform Module進(jìn)行簽名,這樣他們?cè)诒或?yàn)證時(shí)能夠確保有效。Software Guard Extension允許在內(nèi)存中存在安全飛地,定義用來(lái)協(xié)助維護(hù)加密密鑰的安全。Intel計(jì)劃在未來(lái)進(jìn)一步改進(jìn)容器性能,包括QEMU虛擬機(jī)模擬器摻入和內(nèi)存使用優(yōu)化。
仍舊缺失的與文件訪問(wèn)保護(hù)沖突的數(shù)據(jù)共享。這既是虛擬機(jī)管理程序和操作系統(tǒng)的問(wèn)題,也是容器的問(wèn)題。Intel正在尋找通過(guò)NVMe來(lái)解決這一問(wèn)題的方案,基于隊(duì)列的存儲(chǔ)接口,可以避免多層SCSI棧。NVMe允許I/O直接與虛擬機(jī)或容器直接關(guān)聯(lián),并且最高可達(dá)64,000個(gè)隊(duì)列。這可能是機(jī)械化存儲(chǔ)I/O的有效途徑。
CoreOS宣布,Intel Clear Containers成為他們Rocket 容器的解決方案。Clear Containers可能打開(kāi)容器部署的開(kāi)發(fā)局面——如果我是一名虛擬化管理軟件供應(yīng)商,我會(huì)非常關(guān)注容器根據(jù)我得具體需求收斂后,具體的步長(zhǎng)。有可能出現(xiàn)共存的情況,但Clear Containers會(huì)讓邊界盡可能的接近容器的領(lǐng)地。
虛擬化容器對(duì)數(shù)據(jù)中心的影響
小尺寸、可靠的安全容器意義在于,我們將需要更少的服務(wù)器來(lái)承載相同的工作量。因?yàn)槿萜骺梢栽诂F(xiàn)有的服務(wù)器上進(jìn)行部署,幾乎在兩年內(nèi)無(wú)須采購(gòu)新的設(shè)備。數(shù)據(jù)中心預(yù)算也可能會(huì)被花費(fèi)到別的地方。
提高I/O性能以滿(mǎn)足容器數(shù)量是個(gè)不小的挑戰(zhàn),但本地固態(tài)硬盤(pán)能夠?yàn)槿萜魈峁┓浅?捎^的IOPS水平。超強(qiáng)的性能意味著容器不會(huì)出現(xiàn)I/O饑餓,同時(shí)還能采用少量主SSD存儲(chǔ)與更便宜的二級(jí)SATA存儲(chǔ)方案。
針對(duì)虛擬化容器方案的增強(qiáng)可以應(yīng)用在Intel 3D Xpoint near-in內(nèi)存場(chǎng)景。增加這些到服務(wù)器上能夠大幅提高服務(wù)器整體性能,因?yàn)閄-Point安裝在DIMM總線上的內(nèi)存擴(kuò)展器。
優(yōu)秀的I/O性能能夠提高容器的接受程度,但所有這一切將給網(wǎng)絡(luò)性能也帶來(lái)不少難題。單獨(dú)一臺(tái)操作系統(tǒng)所產(chǎn)生的網(wǎng)絡(luò)流量會(huì)比虛擬機(jī)管理程序中多臺(tái)操作系統(tǒng)之間交互要少得多,但密集容器解決方案仍然會(huì)增加網(wǎng)絡(luò)負(fù)載。
數(shù)據(jù)中心可以采用10Gb以太網(wǎng),2016年將開(kāi)始使用25Gb以太網(wǎng)。更快的帶寬可以緩解網(wǎng)絡(luò)擁堵,但也增加了成本。在辯論中,我們得到的是利用RDMA over Ethernet技術(shù)來(lái)降低服務(wù)器開(kāi)銷(xiāo)負(fù)載;能節(jié)省非常多。Chelsio的iWarp似乎是Ethernet RDMA的商業(yè)贏家。這樣就能夠運(yùn)行更多的容器,網(wǎng)絡(luò)利用效率也會(huì)更高。
結(jié)合兩者,服務(wù)器、存儲(chǔ)與網(wǎng)絡(luò)的密度增加和性能提升,將減少I(mǎi)T支出,并讓數(shù)據(jù)中心在一段時(shí)間內(nèi)保持相同甚至更小的空間占用增長(zhǎng)。