Facebook公司開發(fā)一種搭積木的方法來構(gòu)建其數(shù)據(jù)中心,以縮短施工所需的時(shí)間,現(xiàn)在通過開放計(jì)算項(xiàng)目進(jìn)行開源硬件設(shè)計(jì)的工作,這樣可以減少將新的服務(wù)器安裝到機(jī)架上的時(shí)間。Facebook公司加快部署的目標(biāo),可以提高其軟件和數(shù)據(jù)中心的能力。
其中一個(gè)Facebook的數(shù)據(jù)中心團(tuán)隊(duì)的最新項(xiàng)目是壓縮服務(wù)器物理安裝在數(shù)據(jù)中心所花費(fèi)的時(shí)間,也就是從聯(lián)機(jī)開始到正常運(yùn)行之間的時(shí)間。該項(xiàng)目是從舊版本的動(dòng)態(tài)主機(jī)配置協(xié)議切換到一個(gè)新的版本。
當(dāng)一個(gè)新的設(shè)備連接到網(wǎng)絡(luò)時(shí),人們使用DHCP配置其所定義的范圍內(nèi)網(wǎng)絡(luò)中所指定的一個(gè)IP地址。這在IT基礎(chǔ)設(shè)施管理是一個(gè)雖然小但是很重要的功能,這在Facebook數(shù)據(jù)中心部署新服務(wù)器的時(shí)候,已經(jīng)證明在部署時(shí)間上已有很大的分別。
該代碼為以前版本的DHCP,稱為ISCDHCP(ISC代表互聯(lián)網(wǎng)系統(tǒng)協(xié)會(huì))已經(jīng)存在了近20年。新的替代版本,被稱之為KEA,是更適合當(dāng)今的IT環(huán)境、尤其像Facebook這樣的公司,其IT環(huán)境與20年前沒有多少相似之處。
根據(jù)Facebook公司的一位生產(chǎn)工程師安杰洛 菲爾拉的博客文章可知,F(xiàn)acebook最近在其數(shù)據(jù)中心從ISCDHCP切換到KEA,作為一個(gè)結(jié)果可以看到新服務(wù)器的速度得到了顯著的提高。
該公司所使用的協(xié)議在新服務(wù)器上安裝操作系統(tǒng),并分配IP地址分配給帶外管理接口。這些接口的系統(tǒng)管理者使用遠(yuǎn)程監(jiān)控和管理服務(wù)器,不論這些服務(wù)器是否被開啟或已安裝的操作系統(tǒng)。
舊的模式對于Facebook公司的規(guī)模和變革來說步伐太慢。技術(shù)人員在其巨大的數(shù)據(jù)中心不斷地添加或更換網(wǎng)卡或整個(gè)服務(wù)器之類的東西,以及每一個(gè)變化可能要花上三個(gè)小時(shí),減緩了維修進(jìn)度。
其數(shù)據(jù)中心在添加或更換部件是如此緩慢,ISCDHCP是其中最主要的原因之一。技術(shù)人員會(huì)加載一個(gè)靜態(tài)的配置文件到DHCP服務(wù)器,但是這些服務(wù)器針對變化將不得不重新啟動(dòng)。“DHCP服務(wù)器重新配置比其實(shí)際提供服務(wù)的流量還要花費(fèi)更多的時(shí)間。”安杰洛 菲爾拉寫道。
在KEA的幫助下,事先設(shè)置存儲信息,例如主機(jī)分配和子網(wǎng)在中央庫存系統(tǒng)。當(dāng)DCHP服務(wù)器需要部署或更改時(shí),系統(tǒng)從庫存中查找配置信息。這意味著重新加載DHCP服務(wù)器時(shí)不再需要生成靜態(tài)的配置文件,并使更改生效。
根據(jù)菲爾拉的描述,F(xiàn)acebook的新的DHCP應(yīng)用運(yùn)行在Tupperware系統(tǒng)上,這是該公司自己的Linux容器技術(shù),它類似于谷歌的博格系統(tǒng),而博格系統(tǒng)可以非常高效地在谷歌數(shù)目眾多的服務(wù)器陣列中分配工作。
舊的模型也不太靈活。Facebook公司曾經(jīng)有兩個(gè)冗余的DHCP服務(wù)器/服務(wù)器集群,但是如果他們都失效了,那么整個(gè)集群將遭受重創(chuàng)。
這種新方法就是采用分布在整個(gè)網(wǎng)絡(luò)的DHCP服務(wù)器的虛擬集群。他們管理著IP地址的公共池和任何虛擬的DHCP機(jī),可以分配一個(gè)地址給網(wǎng)絡(luò)上的任何其它裝置。這種方式如果在集群中的本地DHCP服務(wù)器失敗,系統(tǒng)可以更快恢復(fù)。
這種新設(shè)計(jì)在傳播系統(tǒng)的變化時(shí)只需要一或兩分鐘,這比舊版本三個(gè)小時(shí)以上的傳播時(shí)間有了顯著地改善。菲爾拉寫道。