【WOT2015】孔德亮:360是如何做大規模集群運維的
原創51CTO WOT 2015移動互聯網開發者大會即將于2015年7月24-25日在北京富力萬麗酒店隆重召開。本次大會共設八大技術分論壇,分別從產品與設計、平臺與技術、創新與創業、移動游戲、算法分析、HTML5、運維安全、新浪微博技術等方面,為廣大移動開發者解開技術迷思。
為使大家進一步了解本次大會,有針對性地選擇課程內容,51CTO記者對即將參加大會演講的技術專家分別進行專訪,為您進行各場演講精華的新鮮速遞。本次大會詳細議程見:http://wot.51cto.com/.
今天帶來“劇透”的是360云事業部總監孔德亮,現任360私有云、公有云項目負責人。孔德亮2009年加入奇虎360,先后負責應用運維、DBA、基礎架構、平臺開發等工作,并通過逐步積累完成了私有云平臺的搭建。在本次的WOT移動互聯網開發者大會中,孔德亮老師將在“運維安全專場”為大家帶來分享,如果你還不知道怎么才能甩掉運維人員身上的“黑鍋”,就速速前來報道吧!
【講師簡介】
孔德亮,奇虎360云事業部總監,跨領域技術專家,現任360私有云、公有云項目負責人。孔德亮2009年加入奇虎360,隨著360業務快速發展,他也開始了內部創業之旅,先后負責應用運維、DBA、基礎架構、平臺開發等工作,通過逐步積累形成了私有云平臺。眾所周知,運維的工作“臟、苦、累”,一旦出現問題,運維人員似乎永遠是那個背黑鍋的人,所以,他希望能夠將技術產品化,使業務團隊借助云平臺的力量,縮短研發周期、降低運維成本,同時能讓IT技術人員在靈活的操作體驗中感受愉悅。
孔德亮 360云事業部總監
以下是51CTO記者對孔德亮老師的訪談實錄:
**************************************************************************
51CTO:請簡單介紹您個人的基本情況和從業經歷。
孔德亮:我2009年加入360,先后負責運維、DBA、基礎架構、平臺開發等工作。主導了360運維體系的建設,目前同時負責360私有云、公有云的工作。
51CTO:請您概述360云平臺將運維服務產品化的歷程。
孔德亮:傳統的運維模式已經不能適應現在互聯網的速度,運維工作“臟、累、苦”,為了改變這種現狀360運維工作經歷了工具化、自動化、平臺化、產品化的幾個階段。前三個階段更多是解決運維自身的痛點。產品化是為了更好的幫助運維、開發、測試、運營實現整體的自動化,將復雜的技術問題簡單化,把技術難題轉化為鼠標的滑動點擊。幫助360的業務線縮短研發周期,降低運維成本。同時也給運維團隊更大得發展空間
51CTO:移動應用開發的周期非常短暫,為使開發的應用快速上線,開發團隊肯定會不同程度依賴各種云技術。請您具體談一下,云計算從哪些方面影響著移動應用開發?
孔德亮:我覺得這個問題從移動應用開發常見的痛點來著手分析比較合適
1、成本問題
孵化階段投入較少,導致爆發階段資源跟不上,后期活躍度下降資源浪費問題 。移動應用有自己的生命周期,云計算能夠根據移動業務的發展隨時增減服務器,靈活升降主機配置,按照需求增減帶寬,基于熱度開關服務區域,并通過智能DNS進行快速切換,如果移動應用開發者能夠在開發階段從架構體系上實現功能模塊的解耦和去狀態化等前期規劃,基于當前主流云計算服務分鐘級的擴容性能,完全能夠滿足請求量飛速爆發時候的動態擴展,同時由于云計算大多采用按需付費,按量扣費的模式,對移動應用的前、中、后期的資源投入也達到一個相對經濟的狀態。
2、效率問題
開發團隊在拼命實現產品提出的需求的同時,可以很少或者幾乎不去考慮諸如消息隊列服務,消息推送服務,短信通知服務,郵件通知服務,內容加速服務等的問題,借助成熟云計算平臺的技術成果靈活使用,穩定性、易用性都比開發者自己搭建速度要快。讓開發者專注于實現業務邏輯從而縮短開發周期,避免錯過市場機會
3、服務質量問題
移動應用開發的特點要求網絡質量相對優質,智能CDN能選擇最近訪問,監測用戶訪問性能等需求;另外,要求相對成熟的系統級、服務級、接口級的監控和報警,能夠實現準實時的日志傳輸分析體系,這些技術在業務初創期完全可以直接使用云上提供的各種服務,在產品穩定后再做好對應的業務邏輯層面的監控分析。
51CTO:您說過,在整個移動產品開發、運營的過程中,運維是基石。那么業務團隊借助360云平臺,能夠得到哪些支撐和保障?我們主要采用了哪些技術來實現?
孔德亮:我們為業務團隊提供的服務大致體現在以下幾個方面。
1.資源保障
360云平臺從多個層面確保不同等級用戶能夠獲取合理有效的資源,首先,我們有一套不斷成熟的算法來評估產品在云平臺上的服務等級,基于不同的服務等級,我們提供諸如虛擬主機超賣率,機房災備級別,資源儲備率,工單任務流響應時間,報警響應等不同級別的服務。
2.信息整合
360云平臺實現了從機房,機架,交換機,物理服務器,虛擬服務器,服務器承載功能角色,到運維人員,開發人員,測試人員等產品線關聯關系的維護。這為后面我們一系列的智能分析和報警監控等服務提供了穩定豐富的數據來源
3.集群管理
a.軟件環境,團隊工程師針對所有常用軟件和公司內部產出的軟件,實現了360定制軟件倉庫,自動封裝,實時同步,并為軟件倉庫封裝了基于http的搜索服務更方便的檢索信息。
b.命令調度,我們封裝了salt-stack的命令模型,實現命令發布的快速響應。并實現了串行、并行、串行阻塞、串行非阻塞等模式,針對不同的運維需求使用不同的調度工具。
c.配置管理,我們使用了puppet作為主要的管控工具,將用戶常用的核心文件通過puppet作為分發工具,引入變量或者域名DNS解析等模式來將各種有狀態的資源無狀態化。充分利用puppet的功能,配置管理工作支持灰度,***限度減少誤操作的可能。另外基于zookeeper開發的Qconf工具也大量推廣到開發和運維工作中將機器的配置信息保存在zookeeper的目錄節點中,配置變更讓訂閱者動態獲取,解決集中管理和動態更新的問題。
運維支撐和保障工作有很多,比如日志收集,故障處理和切換,機器監控,值班系統,工單系統等等,我們也都有很多想法和實踐的經驗,就不一一列舉了
51CTO:結合您的實際經歷,您認為目前云計算平臺架構運維面臨的挑戰是什么?您的技術團隊是如何應對的?
孔德亮:任何技術平臺都是一個成功產品的基石。我們做的很多技術方案是為了提供一個高效穩定,能夠為產品的成功提供一條高速通道。但是生態環境在變化,現在都再提互聯網+和萬物互聯,這種生態和產品形態的變化勢必也會引發技術創新。技術團隊需要有敏銳地嗅覺,提早準備。
51CTO:您的技術分享將對移動開發者帶來哪些幫助和啟示?
孔德亮:本次分享將結合360私有云建設經驗。介紹如何進行集群管理、資源動態調配、故障災備等經驗;同時結合移動產品運維經驗,介紹如何為開發者提供輕量化運行環境,為開發者助力。
來自谷歌、騰訊、京東、360、新浪微博、樂蜂網、魅族等企業的技術專家匯聚一堂,只為助你打開實現夢想的那一扇窗。盛會虛位以待,只等你快馬加鞭!