“三分靠技術、七分靠管理”,對于大規模的數據中心,如何才能高效的運營、維護?如何才能在將運維成本降到最低的同時,保證業務的穩定運行?
本次分享,青云QingCloud運維工程師朱峻華系統的從數據中心管理的各個維度,并結合自身多年數據中心運維管理經驗,講述大規模數據中心自動化運維實踐。
以下是本次分享的內容整理。
以下是今天分享的內容:
·數據中心的定義
·數據中心的發展演進
·數據中心的等級劃分
·運維的定義
·數據中心的運維
數據中心的定義
對于數據中心,維基百科有如下的描述:數據中心(Data Center)或稱為服務器場(Server Farm),指用于安置計算機系統及相關部件的設施,例如電信和儲存系統。一般它包含冗余和備用電源,冗余數據通信連接,環境控制(例如空調、滅火器)和各種安全設備。
我對數據中心做了一個簡單的總結,現代數據中心一般都是一個園區,包含了若干個樓,樓里包含了若干個房間,被稱為模塊,這是基礎;在這之上架構了復雜的網絡;網絡之上部署了各種硬件設備,包括服務器及網絡設備;在各種設備上運行著各種軟件;最終對外提供服務。
上面簡簡單單的一段話,其實涵蓋的技術方方面面,數據中心是現代IT系統的基石,相信以后也是整個社會正常運轉的基石。
摘要:“三分靠技術、七分靠管理”,對于大規模的數據中心,如何才能高效的運營、維護?如何才能在將運維成本降到最低的同時,保證業務的穩定運行?
數據中心的發展演進
現在的數據中心通常是指一棟樓,或者是一個園區,包含很多個機房。但是早期的數據中心只有一個機房,而且機房里面只有一臺機器,因為早期的計算機組件過于龐大,而且電纜眾多。
圖1 世界第一臺電腦 ENIAC
1946年2月14日誕生于美國賓夕法尼亞大學。在當時這就是一臺電腦,一個機房,也是一個數據中心的雛形。據說ENIAC每次一開機,整個費城西區的電燈都為之黯然。
在20世紀80年代,計算機開始蓬勃發展,IT系統及其操作開始變得復雜,一些大公司開始認識到需要有意識的規劃和管理IT資源。隨著客戶端/服務器的IT模式出現,20世紀90年代服務器開始在機房中間尋找他們的位置,通過網絡電纜將服務器和網絡設備進行組網,使得在公司內的一個房間中,使用分層設計來放置服務器及網絡設備成為可能。
1996年8月北京電報大樓主機托管機房投入使用,是國內最早的IDC業務。
下面給大家展示幾幅圖片:
圖2 21世紀初的數據中心
21世紀初的數據中心是如上圖展示的這樣的,當時更多的是被稱做機房,一個大樓里面,很多個大房間,統一散熱,效率低下;不同客戶的服務器放在同一個機房里,沒有機柜、沒有鎖、沒有隔離,安全等級低。
圖3 機房設計
再后來出現了如上圖的機房設計,也是目前很多機房的現狀。會有抬高層,下面走電纜和網線、還有散熱冷風系統,在兩排機柜中間會有出風口,地板上的眼就是便于出風,然后服務器吸進冷風,從后面排出,達到散熱的效果;可以看到圖片中遠處是有門的,可以達到一定的封閉效果,提高散熱效率,但是機柜頂部并沒有封閉;另外,上面圖中的機柜沒有門及機柜鎖,安全會稍差一些。
摘要:“三分靠技術、七分靠管理”,對于大規模的數據中心,如何才能高效的運營、維護?如何才能在將運維成本降到最低的同時,保證業務的穩定運行?
圖4 機房設計
還有上兩圖的這種設計,機房有抬高層,散熱系統在下面;每個機柜都是封閉的,有自己的門和鎖,安全性高;機柜的冷風通過通道直接進入機柜中,而且可以單獨開關(如上圖紅線標示處),不僅節能而且散熱效果好,但是上半部分設備的散熱效果可能會差一些。
圖5 新的機房很多采用微模塊化設計
現在新的機房很多采用微模塊化設計,這種設計降低了對機房本身的要求,不需要抬高層,封閉的散熱系統,規范化的走線槽,將節能、美觀、高效有機的結合起來。
數據中心的等級劃分
目前比較流行的數據中心等級劃分是根據美國ANSI&TIA-942數據中心通訊網絡基礎設施標準設定的,分為如下4個等級:
等級Tier I ――基本數據中心
等級Tier II ――基礎設施部件冗余
等級Tier III ――基礎設施同時可維修
等級Tier IV ――基礎設施故障容錯
其中Tier IV等級最高,不管是國內還是國外,這種等級的數據中心都不多,目前國內大部分數據中心都是Tier III的。不同等級的具體區分,在這里不贅述,有興趣的朋友可以上網查一下。
運維的定義
運維的定義,我在維基百科并沒有找到,不知道這個是太容易理解了,還是太難于定義了。
我不敢妄加定義運維,只是說說我自己的理解。我曾經認為,運維更多的算是產品或者一個系統交付生產后,到這個產品/系統的生命周期結束前這段時間所做的工作。但是現在IT行業發展的趨勢及DevOps的流行,對運維人員的要求越來越高,需要更早的參與到整個生命周期里去。
以數據中心的運維舉例,運維人員可能需要從數據中心選型就參與進來,包括選址,選擇網絡提供商,考察數據中心各種設施及服務等,而不是說等這些定了之后,上了生產才開始運維。
另外,我需要明確一點,今天我們談到數據中心的運維,并不是簡單的從數據中心提供商角度出發,還包括數據中心使用者的角度。
青云QingCloud目前使用了多家數據中心的服務,我們也在考察、建立自己的數據中心。
數據中心的運維
現在正式進入今天的主題——數據中心的運維。
數據中心的“風火水電”
說到數據中心的運維,經常會提到“風火水電”。
·風,通常指空調制冷及通風過濾系統。干凈的空氣能延長設備的壽命,減少故障率。不考慮報廢時間,同樣的機器在北京運行和在芬蘭運行,壽命和故障率都會有很大差異。
·火,一般指消防。這個是常常被人忽略的一部分,但也經常是最致命的一部分,一旦發生火災,可能整個地方都需要停電,且短時間內難以恢復。
·水,通常是濕度及防潮。濕度過高,可能會影響設備壽命;太過干燥又會導致靜電,有可能損壞設備。
·電,機房電力。電力被認為傳統數據中心的重中之重,沒有電力,數據中心就是空殼,而且數據中心的電力需要保證穩定,且是多路備份。
上面提到了“風火水電”,其實還應該再加上一個“網”,數據中心必須保證有高效的網絡,離骨干網應該盡量的近,而且需要能提供BGP線路服務,這也是很多客戶選擇數據中心的一個重要評判標準。
數據中心的選擇
數據中心的選擇標準可以歸類到下面三點:位置,主要標準和次要標準。我們提到的標準是站在不同角色進行考慮,包括數據中心建造者與使用者。
·位置,包括數據中心所在的城市及區域,這將直接影響到預算,至少要避免受到天津大爆炸那類事故的影響;還會影響到你是否能招到合適的員工;需要考慮出現故障時的響應速度等。
摘要:“三分靠技術、七分靠管理”,對于大規模的數據中心,如何才能高效的運營、維護?如何才能在將運維成本降到最低的同時,保證業務的穩定運行?
·主要標準,包括是否有足夠的空間滿足未來的發展;穩定且廉價的電力保障;是否有能用環保手段做到廉價的散熱系統,比如選擇北方,一年四季大部分時間采用自然冷風進行散熱;還需要有高效的網絡連通性。
·次要標準,包括基礎設施,如照明、管道工程等;還包括數據中心園區的安全隔離設施,圍墻、門、窗,設備卸貨區等;推車、鏟車等設備;是否有設備預裝室;是否有監控、控制中心;其他雜項,包括安全監控攝像頭、門禁卡、防尾隨門等。
生產運維
傳統數據中心在投入生產之后,高等級機房會安排7*24人工巡檢。客戶購買的機柜及其機柜里的設備,需要自己安排人員巡檢,我曾經工作過的一家公司就有三班倒的監控人員,7*24小時待命,每個小時需要去機房巡檢一次,看各個設備是否有報警。
青云QingCloud正在考慮建立自己的數據中心,因此考慮運維的時候會更加全面,除了傳統數據中心的樓宇及基礎設施的運維,還包括各種物理設備,如服務器、網絡設備等,各種操作系統及軟件,還有我們自己研發的SDN,每一項細化都可以作為一個專題來討論。
我們簡單了解一下數據中心基礎設施運維可能涉及的范圍,包括:
·安防系統,園區樓宇的安全防護,門禁系統,監控系統等;
·消防系統,煙霧探測器,滅火設施等;
·環境檢測,如溫度及濕度等;
·供電設施,包括配電設備,發電機、UPS、機柜PDU等;
·散熱系統,包括空調設備,新風及冷水機組等;
·其他雜項,如布線,包括電纜及網絡線纜;機房內部環境,是否有易燃易爆物體,需要及時清理。
站在一個數據中心使用者的角度,我們希望數據中心能提供更高效的服務,如:
·高效的入館申請系統,包括人員和設備;
·高效的卸貨渠道及方便的預裝室;
·在認證通過的情況下,可以自由高效的進出機房,操作屬于自己的設備;
·數據中心的服務人員能高效的提供客戶所需的數據及服務,比如機柜用電量等;
·提供更多人性化及專業化的服務。
下面我們來討論一下用戶對于自己設備及服務的運維。
服務器及網絡設備的選型,是選用大品牌的DELL/IBM服務器呢,還是選擇更節省成本的定制機?
QingCloud選擇了后者,在云計算時代,我們假設服務器等物理設備本身就是不可靠的,需要靠上層的軟件來實現可靠。
操作系統選型,選擇Linux還是Windows?
毋庸置疑,QingCloud的系統肯定是跑在Linux上,但是我們需要考慮如何高效初始化服務器,快速安裝操作系統,需要考慮文件系統、內核參數調優、各種硬盤驅動、內核版本、KernelPanic等因素。應用層涉及的就更多了。
如何高效的初始化系統
如何高效的初始化系統?包括BIOS的調優,劃分RAID等工作。
對于Linux系統的安裝有很多高效的方式,最初始的方案是把Linux安裝盤ISO刻成一張光盤進行安裝,現在的服務器配光驅那肯定是被忽悠了;后來將ISO做到U盤上,這些都是手動安裝。高級一點的可以寫Kickstart/Preseed文件實現U盤的自動安裝,對于少量設備,這已經足以。
對于大規模的部署,我們目前通過網絡自動劃分RAID,安裝操作系統,還可以做到自動進行BIOS調優。
我們的目標是一臺純新的機器,物理連線都準備好的情況下,開機半小時后就可以被用于生產,包括BIOS調優,RAID劃分,操作系統安裝,網絡聯通及系統上應用的安裝。操作系統的安裝可以采用網絡PXE安裝,開源比較常用的可以采用Cobbler;對于RAID劃分和BIOS調優,這里我不做過多說明,不同廠家的硬件使用的方法都會不同。
操作系統及網絡準備好之后,我們就需要在服務器上配置特定的應用及服務了。這時候我們可以使用的工具更多,此類工具通常被稱為配置管理工具,常用的有老牌的Cfengine,很多大公司在用的Puppet和Chef,最近比較新的有Saltstack和Ansible等,這些都是很好的工具,但對于工程師來說合適的/熟悉的才是最好的。