網站遷向云端實例詳解
前段時間幫朋友一個創業的朋友做一個網站遷移。之前他的網站使用的自己的服務器托管在IDC機房,后來由于合作的關系需要單獨遷移出來。在遷移過程中也考慮過幾個方案,但最終選擇了使用云端相關的服務。在試用了這一小段時間之后感覺還是非常不錯。分享給大家。
首先原有服務器的拓撲結構大概如下圖所示,當然由于權限的原因我沒有具體操作到原有服務器。大概是兩臺Web做了NLB,一臺數據庫服務器,一臺集管理、開發、域名、郵件等功能的服務器。
【原有服務器拓撲圖】
軟件方面。網站使用PHP編寫,操作系統使用CentOS,其他應用軟件都是比較常用的:Apache,MySQL,SVN等。
遷移方案
方案一 新浪SAE
由于之前也有一些項目使用的是新浪SAE,速度比較快,計劃費模式也比較靈活低廉。但由于SAE是PaaS的服務,雖然很多應用軟件都不需要自己來配置但由于網站的目錄結構及代碼功能類庫基本上都是使用原來獨立服務器的方式。而且SAE平臺對于源碼大小(暫時不能超過100M),MySQL并發連接數,PHP文件操作等類庫的使用有很多限制,因此如果遷移到PaaS平臺上會有比較多的改造工作量。對于幫助做遷移的我不是什么好的方案。因此就放棄方案一
方案二 自主服務器 + IDC托管
放棄了方案一之后就開始在琢磨第二個方案了,第二個方案是想著跟以前一樣的環境,就是買臺服務器找個IDC機房托管,也咨詢了相關的供應商,差不多點的服務器一臺大概在一萬元左右,再加上IDC托管費用北京這邊大概在5千-7千左右。這樣折下來差不多得將近2萬塊錢。當然當時想著如果沒有更好的方案的話就開始準備采購了。跟我那朋友講了之后說別人給他推薦了西部云計算中心,我查了查電話也打不通,也沒有試用的就放棄了。不過有天突然在網上看到了阿里云的廣告或文章啥的。其實之前也聽過阿里云、盛大云等只是之前沒留意。現在重新對這些進行了簡單的評估于是有了方案三。
方案三 云主機
針對這個工作,剛開始試用的是阿里云(當然盛大云很早就開始用了,還跟他們在微博上吵了好一會兒),由于可以申請試用就申請了臺4核4G/500G標準C 型主機行試用,效果還不錯。本來還想再重新評估一下盛大的云。盛大云的計費模式比阿里的要靈活可以支持按天付費,不過當時工作比較晚了就沒付費試用,隨手試了一下他的云硬盤建了兩個各200G的云硬盤,沒想到第二天正要準備付費使用的時候提示我欠費欠了6塊多。NND我可以是1bit都沒用啊就想收我錢了。算了***在微博上吵吵就沒用了。于是就采用第三個方案就是用阿里云。由于可以向上升級先租了一臺2核1.5G,150G的標準A型主機。后來又開通了一臺1核1.5G/100G的經濟B型主機做為開發服務器。
服務器搞定之后當然還有包含DNS,郵件等其他應用,根據以往的經驗使用了其他免費的服務,分別如下:
DNS:國內的免費DNS服務應該比較好選擇了除了DNSPood(http://dnspod.cn/)應該就沒有別的了。特別是速度快,穩定,還帶宕機、DNS請求數統計等監控功能。
郵件:郵件使用的是騰訊的企業郵局(http://exmail.qq.com/ ),免費版本支持200個用戶對于初創公司來說應該夠用了。大品牌也比較有保障,另外QQ的Web郵箱還是蠻好用的。
監控:監控主要是使用的監控寶(http://www.jiankongbao.com/ )的監控服務,基于SNMP協議可以支持服務器和服務的監控,由于是免費版本所以只有郵件通知、監控報告等(短信10條而以基本忽略),基本上滿足監控的需求。當然阿里的云監控也有使用,他免費提供每賬戶1000條免費短信的服務,基本上也夠用。
安全: 網站安全除了常規的Linux配置之外,還使用了360的Web安全掃描,并根據掃描后的結果進行了相應的優化。這一步確實有必要。后來在網站上確實是發現了一些木馬。10年底就給種上了,到現在都沒發現。木馬方面的情況可以參考我之前的一篇文章:邪惡的木馬
源碼管理:之前是打算把代碼托管到GitHub的。后來考慮到速度,開發人員熟悉程度等方面的顧慮就暫時沒有用。目前使用的還是另外租了一臺阿里的云主機+SVN進行管理。
備份:對于運維的工作來說最重要的工作就是備份跟恢復了!本來只有本地備份,后來看了Rubby之父的程序世界里講到的之前Ruby網站被黑的事情,黑客使用了 rm –rf / 的命令,于是觸發我必須要做異地備份!當然我不可能再去租一臺服務器。于是就考慮了如Dropobx,酷盤,S3等網盤,但由于國外的速度是個問題就沒考慮,國內的網盤沒有找到合適的上傳程序也沒辦法考慮。還好阿里云有OSS服務,而且半年內50G內是免費的,找了半天找到了合適的Pythone上傳程序,再加上我之前搞定的備份Shell,現在每天晚上自動備份到本地并上傳到阿里云的OSS上。基本上是挺靠譜的了。
網站新拓撲
遷移之后我們發現我們的拓撲圖不單單是服務器的結構了。我們更多強調的是使用的服務。除了保留最核心的網站環境之外我們基本上都把其他服務都免費“外包”給其他服務商了。
【新網站拓撲圖】
服務器性能
我們可以從測試數據大概看到原有三臺服務器的性能還不如一臺性能很普通的云主機的性能 。當然測試數據并不一定很精確,造成以上原因的大概有幾個方面:1.網站本身代碼的問題,靠硬件提升的空間已經很小。2.網站帶寬的問題。阿里云的帶寬由于是獨5M的可能比普通的IDC要好很多。3. 軟件安裝的問題。由于我使用的是一鍵安裝包可能做了相應的優化。
遷移心得
1. 知識的轉移
其實我不是專職做Linux運維工程師的,因此感覺相關服務安裝配置起來很麻煩費事,還好找到了LAMP的一鍵安裝包(http://www.wdlinux.cn/linux_lanmp),一下子就解決了我這個問題。另外還有像360安全檢測之類的,其實都是屬于知識的轉移。我沒有相關深厚的知識背景,但卻只需要使用一些小工具就可以迅速的掌握這些知識(至少7-80%)的樣子。
2.關于服務與網站托拓撲
根據近段時間的運行我覺得已經有很多成熟的服務可以支撐IT工作,因此其實沒有太多必要自己去搭建各種應用,特別是對于初創公司來說。
3. 成本問題
由于放棄了方案一,所以就剩方案二跟方案三了。方案二的成本大概在1.5-2萬元/年,方案三兩臺服務器,生產服務器3990元/年,開發服務器1990元/年,總共5980元/年。還是省不少錢的!
幾個問題
1. 為啥原來用四臺服務器現在只用了兩臺
首先之前4臺服務器的架構不是我設計的,而且當時可能是評估會有很大的訪問量,業務會開展得比較不錯(這也是傳統IT的弊端,必須提供冗余性能),所以就買了4臺或更多。現在使用兩臺,一是基于目前網站的訪問量還不是很大,升級擴展也非常簡單(阿里云可以無縫向上升級,基本上就是重啟的時間,1分鐘左右就可以搞定。)另外考慮到開發和生產分開、異地辦公等因素不然一臺也就夠了。
2.發現的問題
目前運行還是比較穩定,其中有一個問題就是備份時由于數據量較大5G左右,造成前端網站訪問速度受影響。但目前基本上是深夜在進行的暫時還能接受,正與阿里云的聯系解決問題。
***
歡迎大家加入云計算的擁抱!想試試本次遷移效果的可以訪問我朋友的網站:
原文鏈接:http://www.cnblogs.com/cbcye/archive/2012/06/27/2565851.html