如何做好大型資料中心的運維

天飛.h發表於2016-02-27

 如何做好大型資料中心的運維
2015-09-17 13:02:22
標籤:運維 資料中心
原創作品,允許轉載,轉載時請務必以超連結形式標明文章 原始出處 、作者資訊和本宣告。否則將追究法律責任。http://xjsunjie.blog.51cto.com/999372/1695653
   
   
   什麼叫資料中心?維基百科給出的定義是“資料中心是一整套複雜的設施。它不僅僅包括計算機系統和其它與之配套的裝置(例如通訊和儲存系統),還包含冗餘的資料通訊連線、環境控制裝置、監控裝置以及各種安全裝置”。在雲大行其道的今天,隨著資料中心建設規模的不斷擴大,新技術的層出不窮,資料中心變得越來越複雜。大型資料中心往往是由很多功能不一的單元系統組成,其運維工作需要具備方方面面的知識,包括硬體、網路、伺服器、儲存、安全以及業務上的東西,需要一體化聯動地去做好運維工作。

   wKioL1X6SkbDfBRfAAQjVBRsX4A585.jpg 
    當一個資料中心的規模非常大,其面臨的技術挑戰和問題也會比較多,很多在小環境小體系下不是問題的問題在這樣的規模下也就凸顯出來了,所以要做好大型資料中心的運維工作,對整個資料中心方方面面涉及到的技術體系都要花費較長時間來進行系統學習,只有對這個資料中心整體非常瞭解,才能有針對性地制定一些運維方案,自己結合特定需求進行開發一些監控運維軟體,對整個資料中心進行高效管理與監控,提升整個資料中心的執行效率、減少故障的發生,從而將運維工作不斷推向新的高度。

   一個大型的資料中心內部往往都包含了很多小系統,運維工作都是圍繞著這些具體的應用系統展開的,具體的可以分為基礎運維管理、日常業務運維、網路、伺服器、儲存、安全六大部分,本文就來說一說一般大型的資料中心應該具備的哪些運維方法和能力。

   首先從資料中心的基礎運維管理方面來說,則主要有硬體配置管理、可維護性優化、監控、報警處理、自動化運維、斷網,斷電、機房容災等運維工作。硬體配置管理包含機櫃裡每臺伺服器的型號和硬體配置,並清楚是哪些業務系統在使用這些伺服器。即便是虛擬化執行環境,也需要知道這些虛機都在哪些物理機組成的資源池中流動。資料中心物理機和虛機數量都很龐大,使用自動化運維是非常有必要的。自動化運維不僅能提升運維的工作效率,還可以減少人為的參與,同時讓資料中心自己管理自己,釋放人力。並對資料中心可能發生的故障還做好監控與報警處理,以便能夠在故障發生的第一時間知曉問題,往往一次大的故障都是從開始的一點小故障逐漸擴充套件最終引發整個大系統的崩潰的,所以在出現一些小的異常時一定要及時消除,而這些異常就要靠完善的監控和報警系統來檢測。

   從資料中心的日常業務運維方面考慮,則主要有日常檢查、應用變更、軟硬體升級、突發故障等。具體來說:1、日常檢查:“千里之堤,潰於蟻穴”。任何的故障在出現之前都可能會有所表現,小的隱患不消除,可能導致重大的故障出現,所以資料中心日常的例行檢查工作枯燥,但也很重要,可以及時發現一些執行中的隱患。根據資料中心承載業務重要性的不同,要對資料中心裡的所有執行的裝置進行例行檢查。檢查伺服器應用服務是否正常,CPU記憶體等利用率是否正常。對應用業務進行檢查,看業務執行是否正常。還有對資料中心的機房環境也要進行檢查,環境的溫度、溼度、灰塵是否合乎要求。空調、供電系統進行執行良好,裝置執行是否過熱,地板、天窗、消防、監控都是檢查的部分。空調漏水、裝置漏電都會對資料中心正常穩定執行產生危害,千萬不可大意。2、應用變更:資料中心承載的業務不會是一成不變的,隨著業務的多樣化和不斷髮展,經常要對業務進行調整,包括伺服器和網路的設定。因此要對伺服器和網路裝置操作很熟悉,主要需要掌握Linux伺服器命令和網路協議。要根據應用的需要,及時準確做出變更。3、軟硬體升級:資料中心的裝置一般執行週期是五年,不斷地有裝置需要逐漸淘汰進行更換,也有一些裝置因為存在軟體缺陷需要升級,因此軟硬體升級也是維護工作的一部分。軟硬體升級時需要做好回退機制,以防升級出現問題時無法回退,業務長時間無法恢復。當接手資料中心維護工作就會發現,怎麼會有那麼多的升級,幾乎每個月都要有升級操作,熬夜升級工作成了維護人員的家常便飯。4、突發故障:沒有任何一個資料中心是不出故障的,在資料中心執行的過程中都會出現這樣那樣的問題。對於突發故障,高水平的維護人員可以靜下心來冷靜分析故障的觸發原因,迅速找到解決的方法,如果在短時間內找不到解決方法,也可以通過切換到備用裝置上先恢復業務,再進行分析。這時擁有高水平的維護人員對於一個資料中心至關重要,在關鍵時刻就能派上用場。雖然這些工作看起來有些平常,但千萬別小看它們。資料中心日常維護工作實際上非常重要,關乎著整個資料中心業務的正常執行。只有重視資料中心的維護工作,才能給資料中心一個平安。

   從資料中心網路方面考慮,則主要有網路硬體裝置、ACL、OSPF、LACP、VIP、協議分析、流量、負載均衡、二三四七層情況、網路監控、萬兆板卡、核心交換等。網路是資料中心的重要組成部分,是一切工作執行的基本保證,沒有網路資料中心就無法運轉起來,所以保證網路穩定是資料中心運維工作中的重中之重。這裡不僅要關注網路的硬體問題,還要關注SDN軟體定義的網路。一般傳統IT架構中的網路,根據業務需求部署上線以後,如果業務需求發生變動,重新修改相應網路裝置(路由器、交換機、防火牆)上的配置是一件非常繁瑣的事情。而在當今網際網路/移動網際網路瞬息萬變的業務環境下,網路的高穩定與高效能還不足以滿足業務需求,靈活性和敏捷性反而更為關鍵。SDN所做的事是將網路裝置上的控制權分離出來,由集中的控制器管理,無須依賴底層網路裝置(路由器、交換機、防火牆),遮蔽了來自底層網路裝置的差異,而控制權是完全開放的,使用者可以自定義任何想實現的網路路由和傳輸規則策略,從而更加靈活和智慧。進行SDN改造後,無需對網路中每個節點的路由器反覆進行配置,網路中的裝置本身就是自動化連通的。只需要在使用時定義好簡單的網路規則即可。如果你不喜歡路由器自身內建的協議,還可以通過程式設計的方式對其進行修改,以實現更好的資料交換效能。比如百度自研交換機,可以直接支援SDN的遠端配置與管理特性,從而實現上線全自動配置。未來,自研交換機還會更進一步和伺服器自動化上線結合,提升伺服器交付和管理效率。網路可以說是包羅永珍,涉及太多的裝置和協議、軟體層技術,所以也需要不斷地學習,加深對網路技術的理解,這樣才能做好網路運維工作。

   從資料中心伺服器方面考慮,則主要有檔案系統、核心引數調優、各種硬碟驅動、核心版本、Kernel panic等。Linux系統不僅在伺服器,在網路作業系統也佔據著主流地位,掌握Linux系統的使用才能更好地處理伺服器和網路裝置的運維工作,Linux是運維工作的一項基本技能。除了熟悉Linux系統的操作,還要對伺服器的執行狀態和核心執行狀態進行監控與管理,減少伺服器故障的發生。一般大型的資料中心都包含有成千上萬臺的伺服器,幾乎每天都會有伺服器出現各種各樣的問題,只有對伺服器有深入理解才能很好地消除問題。為了防止伺服器故障引發業務中斷,所以一般在伺服器上都要部署虛擬化技術或者叢集技術,當一臺伺服器物理硬體故障時,業務可以平滑切換到其它伺服器上,業務不會受到任何影響。這些虛擬化技術增加了運維的難度,也需要對虛擬化技術進行不斷深入學習。另外資料中心伺服器的定製化也是很有意義的一件事。雲端計算需要大規模部署,因此需要伺服器具有更高的部署密度、節能而且易於管理,但對於每個節點的計算能力要求並不十分苛刻。而廠商生產的普通意義上的伺服器由於要適應多種應用,則更多兼顧效能、擴充套件性,忽略了成本和能耗。而如果是專門為雲定製的伺服器,會針對雲的特點進行優化設計,從而更加符合使用者的需要。對於企業來說,它帶來的好處顯而易見,試想一下,即使每臺定製化伺服器節省的電力有限(4電源改2電源),但對於大規模部署的資料中心來說,長此以往,成本的節約也是顯而易見的。比如Google所擁有的伺服器都是自己設計,採用定製化托盤,內建電池做備用電源,相比傳統伺服器成本和耗電都要低得多,這也為Google節省了大筆的電力開支。

   從資料中心儲存方面考慮,架構更加多樣和複雜化。在雲端計算、虛擬化、大資料等相關技術進入資料中心後,儲存已經發生了巨大的改變,塊儲存、檔案儲存、物件儲存支撐起多種資料型別的讀取;集中式儲存已經不再是資料中心的主流儲存架構,海量資料的儲存訪問,需要擴充套件性、伸縮性極強的分散式儲存架構來實現。在大規模系統支撐上,分散式檔案系統、分散式物件儲存等技術,為儲存的各種應用提供了高度可伸縮、可擴充套件和極大的彈性支撐和強大的資料訪問效能,並且因為這些分散式技術對標準化硬體的支援,使得大規模資料中心儲存得以低成本的建設和運維。當然分散式儲存不是要取代現有的盤陣,而是為了應付高速成長的資料量與頻寬而產生的新形態儲存系統。另外就是軟體定義儲存,它代表了一種趨勢,即儲存架構中軟體和硬體的分離,也就是資料層和控制層的分離。對於資料中心使用者而言,通過軟體來實現對儲存資源的管理和排程,實現儲存資源的虛擬化 、抽象化、自動化,能夠完整的實現資料中心儲存系統的部署、管理、監控、調整等多個要求,使得儲存系統具備靈活、自由和高可用等特點。企業及網際網路資料以每年50%的速率在增長,新增資料中結構化資料總量有限,多數為非結構化、半結構化資料,資料中心儲存架構隨著業務發展也需要極強的彈性適應能力,低成本、海量擴充套件、高併發效能是面向大型雲資料中心運營儲存架構的基本技術屬性。如何進行數量龐大且雜亂無章的資料儲存與深度應用處理,並迅速提取有價值的資訊,形成商業決策將成為各型別企業生存基礎,也是今後儲存以及圍繞儲存架構不斷衍生的業務發展方向。

    最後從資料中心安全方面來考慮,安全就是若干個小項:攻擊保護、升級備份、抓BUG/找BUG、指令碼工具、資料安全、服務巡檢等專案,其中每一項拿出來其實都包含很多的內容。比如說到攻擊與保護,這個主要指的是防止外來的異常入侵者對資料中心發起的惡意和無意攻擊,惡意攻擊就是有人故意的使用各種攻擊方法,進入到資料中心內部,將重要的資料竊取或者破壞,達到其不可告人的目的。也有的是無意的攻擊,因為整個資料中心是要與外界保持互聯互通的,執行是動態的,變化的,不可避免會有一些異常流量攻擊資料中心,有時甚至來自於資料中心內部,比如某些伺服器中毒,或者硬體故障,構造出了環路,異常流量等網路故障,這些都會影響到資料中心的執行,所以如何做好資料中心的攻擊與保護是一個很大的題目,這並不是在資料中心裡部署幾臺安全裝置就能解決的,需要對整個資料中心進行全面的統一規劃,並有針對性地部署一些安全防護措施,而且隨著各種黑客技術的提升,安全防護措施也要不斷提升,這是一個不斷學習與完善的過程,只要資料中心還在執行,這個完善就不會停止。為了方便運維,也要做好一些執行指令碼,以便在出現突發事件時,能夠快速處理問題。比如一個資料中心的業務出現異常,為了快速恢復業務,需要將路由進行調整,將流量全部引到其它的資料中心,這就需要在核心路由器上進行調整,這時有個現成的指令碼就可以自動執行,達到快速切換的目的。資料中心還應該準備很多其它工作的指令碼,以便緊急的時候快速使用。

    通過以上的分析您一定很驚訝,原來資料中心運維包含這麼多內容,大大小小數十項,而且每一項包含的內容說起來都不那麼簡單,也涉及很多的技術知識。通常資料中心是一個公司、企業或政府部門的資訊處理中心,幾乎所有的業務都要經由資料中心才能完成,所以資料中心對於一個企業或政府部門至關重要。而一個資料中心能否穩定和高效執行,運維是真正的關鍵。只有將這些方方面面的運維工作做好做細做到位,資料中心才能長期穩定。

本文出自 “滴水穿石孫杰” 部落格,請務必保留此出處http://xjsunjie.blog.51cto.com/999372/1695653

相關文章