上云不買云主機,這么做省錢還安全(上)
中國企業真正的上云之路應該是從IaaS開始的,雖然SaaS其實更早為業界所熟知和利用。這幾年也正是IaaS技術的迅速成熟以及用戶對IaaS的廣泛認可帶動了整個云計算產業的興起。
IaaS之所以能在PaaS、SaaS中脫穎而出,很大一部分原因在于,IaaS允許用戶能以一種非常簡單的方式上云:購買云主機,把應用搬到云主機中(不做或者做不多的修改)。其使用體驗和自己的服務器上使用區別并不大,學習成本低,而收益(節省成本、彈性等)很明確。因此 IaaS很快就成為最受歡迎的云服務模式。
但是,云主機并不是上云的唯一途徑,在很多場合PaaS可能更為合適。與購買云主機相比,以PaaS服務(比如數據庫服務RDS)模式上云,不僅成本更低,運維更簡單,也更安全。當然,這種方式對所上云應用的架構和開發都有一定要求,要求用戶具有一定技術能力。因此,相比IaaS模式,采用PaaS云服務模式的用戶少得多。
本期要介紹的易縱互聯(北京)科技有限公司正式以為以PaaS服務模式上云的企業,它們的經驗或許可以為其他上云的企業提供參考。
易縱互聯(北京)科技有限公司是由一群對.NET非常熟悉的技術人員(微軟MVP和資深互聯網專業人士)創建,其核心業務51Aspx.COM(以下簡稱51Aspx)是一個微軟.Net學習、分享平臺以及源代碼交易平臺,于2009年開始商業運營。
基于團隊成員對云技術的深刻了解,他們在將51Aspx.COM的業務從托管服務器遷往云上的時候,沒有選擇最常見的云主機模式,而是對軟件架構進行了重構后,使用了Azure的PaaS服務。此舉雖然初期費了些功夫,但給后期帶來運維的方便性,更好的彈性以及更經濟的成本,這些都證明這份付出是值得的。
杜鵬是易縱互聯(北京)科技有限公司CTO,是資深全棧開發工程師,從事多年軟件開發工作,曾參與大型分布式高并發互聯網項目設計開發,多次作為講師對企業內部開發人員進行Azure公有云培訓。至頂網副總編鄒大斌對杜鵬進行了獨家專訪,以下為專訪杜鵬的速記內容整理。
至頂網:請先介紹一下您所在的公司大體情況,比如什么時候成立,主營業務是什么?
杜鵬:我們公司2009年成立,公司有很多業務,基本都是圍繞微軟的產品和技術開展。51Aspx.com是我們的主營業務,它是一個軟件源代碼交易的平臺,主要是面向.NET平臺。2009年公司開始運營,最早采用的傳統的業務架構,部署在托管的服務器上。2014年我們把這個平臺的業務遷移到Azure云,算是國內較早使用Azure云的用戶。當年我們的這個上云項目案例曾參加微軟的創新大賽,拿到當時企業組的冠軍。經過差不多10年的運營,今天的51Aspx擁有上百萬的用戶,高峰時同時上線人數能達到2000人。
對于Azure云,我們算是比較了解的,這與我們核心團隊的背景有關系。在Azure還沒有真正在中國落地的時候,記得當時用的還是代號“Mooncake”,我們就參與過測試和一些小的應用開發。落地后,我們也做了一些本地化的工作。正是因為有了這些技術基礎后來我們的軟件架構調整也才比較順利。
至頂網:你們公司上云之前IT狀況是什么樣?
杜鵬:公司成立時,已經有了很多種的代碼學習和分享平臺,比如ASP、PHP等。雖然種類很多,但是沒有.NET的。公司創世團隊都是.NET的愛好者,決定自己做一個.NET的交流平臺。剛開始是完全出于愛好做這件事情,都是免費的。后來有一些人對代碼有了更高需求,也有人希望能交易代碼,然后就慢慢衍生出了我們今天的商業模式——代碼交易,后來跟微軟的業務逐漸增長、規模化,我們也走上了商業化的路線。
最早的IT系統主要有3臺服務器來支持:一個是做Web展現,一個做數據庫,一個是做備份,存放我們網站的代碼資源、代碼壓縮包、圖片資源。服務器托管到IDC。
至頂網:你們后來把系統從托管服務器遷移到Azure云上,當時是怎么做出的這個決策?
杜鵬:我們是2014年正式上云的。其實,微軟Azure在中國沒落地之前,我們曾試著把一部分業務,包括論壇、數據備份放到Azure云上。我們之所以選擇Azure云,最主要原因在于我們對Azure有技術依賴。我們的業務與Windows平臺和Azure有關,我們自己用,再給客戶進行培訓的時候也相對熟練一些。另一方面是我們整個團隊對Azure相對來說比較熟悉,所以很容易地選擇了Azure。
從2014年之后,我們就完全就遷移到Azure云了。我們用的都是Azure的PaaS云服務,沒有用一臺云主機或者虛機。其實,我們最早進行架構設計時候就根本沒有考慮用云主機或者虛機。
我們知道,很多人上云就選擇IaaS,很少用PaaS。但我們對云技術以及Azure很熟悉,我們很清楚我們最合適的選擇就是PaaS,而不是IaaS。我們的系統從運維、到管理、易用性等都是面向PaaS建的。當時設計的架構今天還是一直在運行,未來3-5年也問題不大,當時的設計還是比較有前瞻性的。
至頂網:當初你們為什么要從托管服務器遷移到公有云?
杜鵬:我們當時上公有云最大的需求就是解決備份問題。備份這個事當時讓我們非常頭疼,我們備份主要是兩個:一個是SQL Server數據庫的備份;另外一個是上傳的數據文件備份。我們有十幾年的數據,這幾百個GB的數據文件不能丟。
原來,我們做的是服務器的備份,本地做RAID。但是我們有一次嘗試對備份進行恢復時,300G數據,結果沒恢復成功,是恢復了很久后發現失敗的。還有一次我們遷移了超過100G的小文件,遷移花了24小時都沒遷移完。后來我們考慮,如果備份完了以后換數據中心,換服務器要做數據遷移,遷移和恢復時間特別長,這是問題。我們自己想了各種備份方案,都不是完美的。后來發現放到公有云上以后,有云的一式三份還有各種備份服務,這對我們來說解決了大問題。
至頂網:云是如何幫助你們解決數據備份問題了,你們單獨購買了備份服務了嗎?
杜鵬:我們沒有單獨購買備份服務。首先,云服務本身的多副本模式,讓我們基本沒有了對數據丟失的擔心。其次,對于SQL數據庫我們定期有快照進行備份,只需支付存儲空間的費用。如果有更高要求的備份,可以單獨購買服務,但都非常便宜,比自己做這些事簡單多了。
至頂網:你們沒有選最常用的IaaS服務而是選了PaaS服務,背后的原因是什么?
杜鵬:我們一直對外強調一個理念:IaaS是云上初級的應用,但是好多人還存在這種最低級的應用。根據我們自己的經驗,使用PaaS服務相比于IaaS有幾個好處:第一個是訂閱成本能降下來;第二降低了運維成本;第三提高了安全;第四開發成本也能降低。
關于開發成本降低,我這里稍做下解釋。因為以前軟件開發要考慮將來如何部署和運行,為此需要了解一些運維方面的情況,現在就不需要去關心這些了。另外,上云后很多功能能直接調用云服務商的API。比如,我們原來的消息隊列是自己開發的。而上云后我們發現Azure上有Server Bus服務,可以進行多消息傳送,很可靠,而且非常便宜。
鑒于上述原因,我的建議是,企業在上云過程中能轉換PaaS服務就應該盡量用PaaS服務;實在轉換不了,比如傳統業務因為開發工作量或者沒有源代碼,沒有辦法才用云主機來運行,只要能轉的我們會推薦直接轉到PaaS。(未來待續,下期我們將繼續請杜鵬介紹PaaS模式的優勢,以及這種模式對應用架構的具體要求)
本文章選自《AI啟示錄》雜志,閱讀更多雜志內容,請掃描下方二維碼
