OpenStack為用戶帶來了多個好處,所以不難理解用免費的開源工具自行構建云這個概念為何吸引眾多公司企業。然而,誰要是想啟動OpenStack項目,就應切合實際。我們Mirantis公司在構建并部署OpenStack云環境方面有著多年的經驗,見過許多癡心妄想――這會導致不切實際的期望。下面這十個步驟將確保你往正確的方向邁進。
1. 作好掏錢的準備
我們經常聽到這樣的話:“我們為什么需要為云立預算?我們只要借助軟件庫部署代碼就行了。又沒有許可證費用。”
這最后一句話是對的。運行OpenStack根本不需要許可證費用,但開源軟件根本不會憑空出現,對于像OpenStack這么龐大而復雜的項目來說更是如此。成百上千的人受雇努力改進代碼,而代碼在不斷變化,所以某一個組件的最新版本需要引入其他各個組件的最新版本。
這里的問題在于,最新代碼總是不太穩定,而推出關鍵修正版的步伐取決于社區,而不是取決于你。你需要請人來解決代碼缺陷,而人力需要花錢。因而,開源代碼在任何時間都是免費的,但是它需要預算和專門的資源。
2. 調動員工的參與性
如果你的整個云規模足夠小,你的筆記本電腦上就裝得下,你也許能夠自行搭建。然而如果你考慮搭建一個大中型云,那么這個項目需要牽涉好多人。大多數公司部署云出于并不簡單的原因;你要明白其他每個人需要什么,而不是光想著自己需要什么,那樣才能做好這項工作。
將你的使用場合明確記入文檔,那樣你就能搞清楚是需要公有云、私有云還是需要混合云。你的工作負載具有多租戶、長時間運行、短時間運行、專門、暫時、穩定、突發等特點,還是說上述特點同時具備?可能云根本就不是解決你問題的辦法。看一下遺留的應用程序。它們是屬于云,還是需要繼續駐留在現有的基礎設施上?這些決定都不是在真空中就能做出的。
3. 盡量闡明術語
你可能認為,每個人都明白云計算這個術語,但是有必要明白六大要素:誰、什么、為何、何時、何地以及如何。
不妨考慮我們在一次規劃會議中聽到的下面這句話:“我們構建了一項服務來支持該服務,但是我們在服務級別方面遇到問題后,我們就調用服務。”或者看一下OpenStack論壇上關于“類型”這個單詞實際含義的種種帖子。
花時間了解你的用戶所指的實際意思,因為根本不存在共識,哪怕常用詞方面也是如此。
4. 接受遺留系統根本不會消失的事實
COBOL編程員仍找得到工作有其理由。遺留應用程序根本不會消失;這就是現實。最近,一名超狂熱的系統管理員告訴我們:“我們準備構建一個云,把一切系統都遷移過去。”也許這行得通,但不會馬上行得通。一些遺留系統(比如某些數據存儲應用、事務應用、財務應用和金融應用等系統)根本還沒有準備好遷移到云端,要是業務規則還沒有完備的說明文檔,更是如此。
5. 考慮你準備遷移的工作負載
一些人認為,遷移到云端時,只要做好負載均衡方面。這一個謬見源自這種觀念:以為云就是個特大路由器,只要將無狀態流量轉到傳輸起來最快的地方。想一想你要將哪些工作負載遷移到云端。是開發測試環境嗎?你能夠增加或減少資源嗎?在緊急情況下,你能關閉它嗎?你需要單一組件還是需要多個組件?在大多數情況下,你根本無法通過克隆其組件來擴展應用程序;不是所有相關服務都能在副本之間保持一致性,除非它們一開始就采用了這樣的設計架構。
6. 與開發人員合作
在OpenStack中,相比傳統環境下,應用程序對它們運行在其中的平臺所實施的控制權要大得多。這表明操作人員與開發人員之間的關系發生了轉變,兩種角色需要相輔相成。
操作人員用OpenStack構建了云,那樣開發人員就能更容易使用基礎設施,但這并不意味著他們搶占各自的角色。他們需要認真地為開發人員提供讓對方取得成功所需的剛剛好的選擇。開發一系列服務,但又不給予對方自由支配權。他們還需要讓開發人員掌握更多的專長,以便合理地設計和運作解決方案。
7. 別以為你的員工擁有所需的技能
我們經常聽到:“我們的人員擁有技能。OpenStack就像Linux。”當然,如果貴企業擁有眾多開源專家,熟悉IP網絡、虛擬機管理程序資源管理、存儲冗余及優化、開源管理、安全及加密、驅動程序優化、分布式應用架構以及涉及OpenStack的其他許多技術,那你自然不用發愁。不過,你很有可能缺少這些技能當中的一項或多項,你的人員需要知道這一點。
誰都會使用Linux,但不是每個人都是內核工程師。你能成為無所不知的開源專家,但并非一朝一夕就能練就。
8. 擬定提案
“云帶來了高效率。它會收回成本。”看看這能不能通過首席財務官那一關。
你很有可能會需要新硬件,而這不會是輕巧便宜的系統。聰明的員工又不會白白為你打工。如果員工不知道需要掌握的知識,你需要對他們進行培訓。另外,你附近還有一個空置的水冷數據中心嗎?
你可能還需要一種新的商業模式。就貴公司目前的基礎設施而言,其投入乃是基于之前對于各個職能部門、各個業務部門將如何利用它的假設,而這些假設當前可能已不復準確。你用戶從哪里搞到支持云的資金?
我們經常發現許多公司在使用Mirantis OpenStack Express方面從小處著手,逐漸增加使用它的理由,因為它有助于讓預算具體化、易管理、可預測。這方面最成功的企業明白用戶的經濟因素和云的價值,然后提出相應的計劃。
9. 制定應急計劃
一種常見的誤解是,云能解決自身的問題。要是有合適的監控和維護,云有時候確實能解決自身的問題。但是你得確保擁有合適的監控和合適的冗余機制,特別是接近容量閾值時要發出警報。你可能直到云無法解決自身的問題才知道出了問題;然后,你會接到凌晨打來的電話。想起了無所不知的工程師?可人家并不總是隨叫隨到。要是你對突發情況作好了防備,就不至于措手不及。
10. 積極接受失敗
最后,一種不切實際的老派觀念就是,失敗不可接受。實際上,說到云,失敗完全可以接受,它還是一種核心設計原則。常失敗,而且快失敗,那樣你就能迅速行動。務必要確保你的系統和應用程序防患未然,為出現故障、需要靈活應對的時刻作好了防備。那樣,即便沒有按計劃進展,你的系統也可以保持運行,你會切實感受到OpenStack的好處。
OpenStack無疑為公司企業在IT基礎設施帶來了眾多機會,提供了一種可擴展、靈活又經濟高效的解決方案。了解貴公司的要求以及部署OpenStack需要什么,這將有助于建立貴公司想要的用途廣泛、靈活又有彈性的云系統,又不必犯那些常犯的錯誤。