2011年初,為解決搜狐內(nèi)部各部門海量數(shù)據(jù)存儲和數(shù)據(jù)在線快速讀取的問題,北京研發(fā)中心利用半年的時間,匯聚國內(nèi)多位存儲方面的頂尖人才自主研發(fā)了一整套分布式存儲系統(tǒng),其中包括針對海量小文件的 BFS 存儲系統(tǒng),針對大文件的 Blade Store 存儲系統(tǒng),以及針對元數(shù)據(jù)的 Blade Cube 存儲系統(tǒng)。2012年3月,搜狐云分布式存儲系統(tǒng)在經(jīng)歷了無數(shù)次測試和優(yōu)化之后,正式在搜狐內(nèi)部上線。隨后,搜狐內(nèi)部的絕大部分?jǐn)?shù)據(jù)逐漸遷移至搜狐云服務(wù),逐漸覆蓋包括搜狐網(wǎng)站,搜狐汽車,搜狐焦點(diǎn),搜狐新聞客戶端,搜狐視頻,搜狐相冊等產(chǎn)品在內(nèi)的幾乎所有的搜狐內(nèi)部的服務(wù),實現(xiàn)了北京研發(fā)中心最初的承諾“one sohu one storage”。搜狐云服務(wù)在公司內(nèi)部穩(wěn)定運(yùn)行的兩年間,伴隨著公司數(shù)據(jù)量的增長,其性能和穩(wěn)定性得到了長期的驗證。
與此同時,國內(nèi)云計算市場雖然巨頭林立,小團(tuán)隊叢生,但始終沒有令企業(yè)滿意的云存儲服務(wù)。對于數(shù)據(jù)規(guī)模較大的企業(yè)來說,數(shù)據(jù)存儲的需求極為強(qiáng)烈,數(shù)據(jù)的安全性,數(shù)據(jù)的讀寫性能都直接關(guān)系著產(chǎn)品體驗,但數(shù)據(jù)存儲的技術(shù)門檻又相對較高,導(dǎo)致好多公司每年都要在數(shù)據(jù)存儲上做大量的投入,但效果卻不盡如人意。雖然目前市場上有很多優(yōu)秀的開源存儲系統(tǒng),但由于企業(yè)使用環(huán)境的差異,在開源系統(tǒng)的重復(fù)改造上通常也會浪費(fèi)掉大量的人力和物力,而且伴隨著業(yè)務(wù)量的增長,開源系統(tǒng)的難以預(yù)測性也給企業(yè)的數(shù)據(jù)帶來了巨大的隱患。
正是看到國內(nèi)市場對企業(yè)級云存儲的強(qiáng)烈需求,搜狐云服務(wù)于是開啟了從對內(nèi)服務(wù)向?qū)ν夥?wù)轉(zhuǎn)型的大門。由于通常的開源存儲系統(tǒng)的性能在不同的使用環(huán)境下有很大的差異,并不能為企業(yè)快速解決存儲難題,消除安全隱患,所以從一開始,搜狐北京研發(fā)中心就沒有止步于僅將存儲技術(shù)共享,而是致力于為客戶提供一站式存儲解決方案,讓客戶可以簡單便捷的將數(shù)據(jù)托管至搜狐云服務(wù),由搜狐來為客戶的數(shù)據(jù)安全買單,完全省去客戶“重復(fù)修復(fù)輪子”的煩惱。搜狐云服務(wù)的存儲設(shè)備,全部托管在國內(nèi)五星級機(jī)房,同時在數(shù)據(jù)傳輸?shù)母鱾€環(huán)節(jié)配備有完整的監(jiān)控系統(tǒng),能夠保證客戶的數(shù)據(jù)異常在第一時間被發(fā)現(xiàn),第一時間恢復(fù),保障客戶業(yè)務(wù)的穩(wěn)定健康。
為了給企業(yè)解決更多的難題,搜狐云還精心打造了國內(nèi)最專業(yè)的云端圖像處理系統(tǒng),幫助企業(yè)輕松應(yīng)對多屏?xí)r代的多圖煩惱。搜狐云服務(wù)的實時圖像處理功能,能夠幫助企業(yè)節(jié)約近50%的帶寬成本,同時能夠提升網(wǎng)頁訪問速度,給終端用戶帶去更為快速流暢的體驗。此外,搜狐云服務(wù)還與國內(nèi)多家優(yōu)質(zhì)的云分發(fā)(CDN)平臺進(jìn)行了深入的合作,客戶可以從搜狐云服務(wù)的平臺直接接入多家公司的云分發(fā)服務(wù),為網(wǎng)站帶去最優(yōu)質(zhì)的體驗。
搜狐企業(yè)級業(yè)務(wù)編排運(yùn)維管理系統(tǒng)——DomeOS
DomeOS的技術(shù)團(tuán)隊擁有多年的云存儲經(jīng)驗,國內(nèi)領(lǐng)先的圖片處理技術(shù)以及CDN分發(fā)經(jīng)驗。團(tuán)隊經(jīng)營的主打產(chǎn)品“搜狐云臺”擁有業(yè)內(nèi)頂尖的圖片壓縮技術(shù),為搜狐內(nèi)部產(chǎn)品和幾十家外部企業(yè)級用戶帶來了極致的用戶體驗。搜狐云臺除了可靠地云存儲服務(wù)、頂尖的圖片處理技術(shù),還有人臉檢測、黃反圖識別、廣告圖識別等方面的研究。
搜狐云臺陳偉表示“我們是幫人解決問題的,存儲和圖片的需求通過搜狐云臺得到了很好的解決,但是我們也發(fā)現(xiàn)了流程中很多新的問題。”
傳統(tǒng)運(yùn)維模式的問題
陳偉在GTIC大會會場和大家分享了搜狐云臺團(tuán)隊在多年云存儲開發(fā)運(yùn)維過程中遇到的問題。
1. 隨著業(yè)務(wù)快速發(fā)展,服務(wù)器環(huán)境越來越復(fù)雜,各種緊急上線,技術(shù)債務(wù),臨時版本的程序,腳本等,可能長期得不到清理,最終引發(fā)問題
2. 技術(shù)平臺快速發(fā)展,管理依賴是件很麻煩的事,而且影響運(yùn)維和開發(fā)的溝通
3. 環(huán)境統(tǒng)一問題,經(jīng)常導(dǎo)致上線失敗。開發(fā)、測試、運(yùn)維協(xié)作困難。
4. 監(jiān)控體系不斷重構(gòu),難以滿足需求
5. 規(guī)模小無需自動化,而規(guī)模大后再自動化又容易引起問題。
6. 十分依賴經(jīng)驗豐富的運(yùn)維人員
Docker的優(yōu)勢和問題
陳偉總結(jié)docker的優(yōu)勢有:
1. Docker的先進(jìn)理念:“build、ship、run”。把應(yīng)用的構(gòu)建、分發(fā)、運(yùn)行的流程標(biāo)準(zhǔn)化、規(guī)范化。
2. 私有的registry天然就是一個分發(fā)倉庫,名稱+tag的方式也很有利于版本管理,回滾等。
3. 單進(jìn)程模型重新梳理了應(yīng)用的意義。一個應(yīng)用天生就應(yīng)該是一個進(jìn)程為單位的單元。
4. docker的資源控制和自包含性綜合起來,成為了一個很有前景的功能,更加適合使用動態(tài)的資源調(diào)度的方式來部署服務(wù)。
Docker帶來曙光的同時,陳偉表示,docker作為一個新的技術(shù),仍然存在以下問題:
1. 目前還沒看到十分令人滿意的網(wǎng)絡(luò)模式
2. 傳統(tǒng)應(yīng)用不一定能很好地遷移到docker中
3. 開發(fā)人員有較大的學(xué)習(xí)成本,需要較長時間適應(yīng)docker
4. Docker版本迭代較快,會帶來不兼容等問題,而升級docker又需要把上面的服務(wù)停掉
5. 在國內(nèi)做開發(fā)都會遇到的問題,比如:墻、構(gòu)建性能、分發(fā)性能等等
陳偉還對比了docker和虛擬機(jī)的特點(diǎn),他著重強(qiáng)調(diào)了一點(diǎn):虛擬機(jī)無關(guān)應(yīng)用,是基礎(chǔ)架構(gòu)層面的事情,開發(fā)人員不關(guān)心這一點(diǎn);而docker是應(yīng)用層面的,開發(fā)運(yùn)維的思路都會隨之發(fā)生變化。
DomeOS設(shè)計
DomeOS的最主要的理念是“開箱即用”。陳偉表示:“我們不希望DomeOS是一個和我們自身業(yè)務(wù)結(jié)合很緊密的東西,我們把它定位為一個純工具。”DomeOS團(tuán)隊希望今后的各個使用者能夠輕松上手,開箱即用。
除了開箱即用,DomeOS還具有:開發(fā)自運(yùn)維、全流程全視圖、追求效率和利用率的特點(diǎn)。
DomeOS主要的功能有:集群管理、開發(fā)測試、發(fā)布回滾、運(yùn)維監(jiān)控和應(yīng)用商店。
集群管理改造自kubernetes,使用了pods等概念。多數(shù)據(jù)中心統(tǒng)一管理,自動化調(diào)度不超出數(shù)據(jù)中心范圍。此外,DomeOS區(qū)分生產(chǎn)環(huán)境和開發(fā)測試環(huán)境,并且有權(quán)限要求。
持續(xù)集成是DomeOS的一個創(chuàng)新點(diǎn),沒有使用jenkins等工具,從頭設(shè)計。持續(xù)集成功能使用github、gitlab的API設(shè)置hook,獲取代碼。在開發(fā)過程中搜狐云臺的技術(shù)團(tuán)隊使用了搜狐云臺的scs云存儲服務(wù),提升了開發(fā)效率和服務(wù)性能。
應(yīng)用商店是DomeOS另一個具備鮮明的docker理念的功能。它能夠把一個復(fù)雜的分布式系統(tǒng)描述清楚,并能夠在可視化界面上進(jìn)行配置,一鍵部署。此外,能夠?qū)崿F(xiàn)測試環(huán)境直接搭建,生產(chǎn)環(huán)境依賴注入,大大提升測試和生產(chǎn)的效率。此外,陳偉還和與會嘉賓分享了DomeOS的網(wǎng)絡(luò)和磁盤相關(guān)的特點(diǎn)以及開發(fā)過程中所遇到的問題。
DomeOS還在持續(xù)迭代和實踐的過程中,搜狐云臺團(tuán)隊希望docker的愛好者和從業(yè)者能夠關(guān)注DomeOS,希望與更多的docker團(tuán)隊交流分享。
搜狐云服務(wù)的未來
比起單純的提供云存儲服務(wù),搜狐云更希望能夠為打造國內(nèi)健康的云生態(tài)環(huán)境貢獻(xiàn)力量。未來,搜狐云服務(wù)將與業(yè)內(nèi)其他的云計算相關(guān)產(chǎn)品展開更為豐富和深入的合作,致力于建設(shè)完整的云計算生態(tài)合作群體,目前,搜狐云已經(jīng)與國內(nèi)多家ISV(獨(dú)立軟件開發(fā)商)和SI(服務(wù)集成商)達(dá)成共識,將攜手為客戶一站式解決公有云的需求。