去年底我們接了一個案子,需要從客戶的舊主機搬遷約400個網站過來科比主機。當時的初步了解,舊主機採用Plesk平台,部份網站跑的是 php 5.6 以下版本。在確認接這個案子之前,我們有測試過從客戶的舊主機遷出其中幾個需要不同php版本的網站。確認可行之後,我們評估了搬遷需要的時間,大概是兩個月。然後客戶說,能不能月底前完成?(因為舊廠商合約的關係)
「月底前完成」背後的意思,並不是代表有三十天安排搬遷(而且確認搬遷不是當月一號)。因為所有工序完成後,我們這邊需要測試,客戶也需要驗收。當初我們評估的兩個月時間是讓雙方有充足時間進行測試,如果只有三十天不到的時間,為了盡量增加測試時間,我們只能壓縮整個搬遷部署,所以實際整過搬遷流程由兩個月大幅縮短到不到兩個禮拜。
把檔案拷貝可能是一兩天的事情,但實際搬遷有很多事情需要克服。
一、舊主機雖然是plesk 平台,但我們估計客戶當初是從其他平台整合到plesk,所以 DNS,MySQL跟Plesk設定不太搭得上
二、部份網站 php 版本比較舊
三、網站搬遷後發現惡意軟體的處理方式
四、客戶本身的網站部份有高度客製化,需要個別測試
為了方便管理,我們傾向「長痛不如短痛」,把之前網站未有統一的規格一次過處理。首先我們先整理出客戶400個網站裡面,大概使用了20 – 30 不同框架開發,然後我們寫了一個程式去偵測那20-30框架,按不同框架更新設定,包括php版本,數據庫等等。現在這樣寫一句介紹好像很簡單,但這個是當時我們經過長時間思考整個SOP邏輯,再徹夜反覆測試後的結果(而且有些網站還是得手動處理),而且因為執行搬遷的時候,其中一位工程師在旅遊期間,晚上還得在街頭繼續跟進搬遷的事情,可謂有血有汗。
如果要為這個案子的執行打分數,我會給70分。合格,絕對有餘,但談不上優秀。基本上我們除了確保搬遷過程沒有任何資料流失,還有就是盡量避免客戶需要修改太多東西,這兩個我認為我們是做得到的。但搬遷後續還是有些小狀況,部份也許搬遷時間充裕的話是能夠避免。
希望客戶會滿意我們的安排,也在此感謝客戶方工程師的高度配合。
最後說明一下,這樣規模的案子,並不是每一個都能這樣壓縮搬遷時間,希望可以理解 Orz
