脆弱的網路

最近的網際網路是多事之秋,除了上次提到的因為一台故障的UPS讓台灣百分之八十的連外線路掛點之外,國外也連續傳出推特、蘋果、臉書甚至是微軟的內部員工,因為 Java 漏洞而被植入惡意程式,使得某些他們客戶的資料疑似外洩。

而就在這篇文章撰稿的同時,又傳出了 CloudFlare 因為 DNS 系統出問題造成全球幾十萬個網站因而斷線將近一個小時!

而我會想發這一篇文章的動機是因為收到了VPS主機商發來的一封通知信:

你的網站有備援計劃嗎?

信中說因為網路硬碟 SAN 系統出了一些問題而必需緊急計劃停機維修1-2個小時!

而事實上高登在前兩天就已經發覺這台VPS有異常,所以已經先將這台VPS上的網站搬遷到另外的VPS主機,將這台主機空出來的目的是要好好查查看到底問題出在哪裡?

所以主機商的停機並不會造成我手下網站的任何損失,但是如果這是你的主機商,那你的網站在主機停機維修的期間,一定會是這樣無法連線的下場:

你的網站有備援計劃嗎?

網站一定要有備援系統

如果你是個人網站、部落格或許可以忍受網站停擺半天或一天,但是如果這個停擺的網站是公司企業的網站,是幫公司賺錢的網站呢?

上個禮拜的是方電訊斷線事件就讓大家知道後果的嚴重性,而這次斷線造成的損失一定是很大的,我想應該沒有企業會容許這樣的事件一再重演吧?

但是從最近的事件看起來,不管是大企業還是小網站,對於「備援」這檔事好像都不怎麼關心。

不然怎麼會建設出一個全台灣百分之八十出口在同一點的網路架構呢?

說穿了就是有人省錢省過頭了,而為什麼會省到不該省的建設那要有勞大家一起來監督了。

備份不等於備援

或許很多網管人員會說:「我們網站都有備份啊!」

但是網站資料備份的目的是什麼?不就是在資料出問題的時候回復回來!

但是一般備份都只是在原地復原,那你有想過萬一原來的主機或是線路出了大問題,沒辦法在原地復原呢?這個時候就是備援使用的時機

我想大家都有電腦故障需要送修沒有辦法迅速修復的經驗吧?而網站的主機也是「電腦」所以也一定會有壞的時候。

而一般人會有網站主機不容易故障的印象,是因為一個好的主機商都應該有完善的備援計劃,但是這樣子你自己就可以省下備援的計劃了嗎?

就算是你的網站不是很重要,可以允許一兩天停機,但你應該有聽過某家主機商硬碟壞掉資料救不回來的故事吧?

所以你自己一定要再額外的執行備份,真的有必要的時候再利用你手上的備份,就可以將網站搬遷到其他的主機商那裡,這是一般網站管理員一定要作的事。

但是說到備援那就要多花錢建置一台備用的主機,在原有的主機或線路出問題時切換到備用的線路或主機。

也就是說資料是透過「異地備援」傳送到備用的主機隨時待命,在有需要的時候備用的就可以升級成正式的主機。

您自己也可以作異地備援

但是一般的網站應該是不會採取以上的備援方式,因為備援的成本比較高!

而我這邊為什麼有備援的主機?其實是因為從事電腦相關行業這麼多年,看到過太多血淋淋的案例所致。

我深切的明瞭備份的重要性也認真地執行這個工作,而不是像許多人只會用嘴備份!

所以我從很早開始都是手上保持最少兩台主機可以互相支援,而且每天利用排程工作將兩台主機的資料互相備份。

在其中任何一台主機出問題時,只要改一下 DNS 的設定就可以讓備援主機上線運作。

而備份/備援系統的最高境界就是設好了之後就忘了它的存在(事實上還是要定期檢查一下備份的資料有沒有問題),等到要用的時候就拿出來用就好了!

身為網站主或是網管人員的您不妨也可以考慮我這種作法,如果你人面夠廣的話,跟朋友的主機互相備援,你只要花一點時間設定一下就好也不用多花你的錢。

不過備援最好是異地,否則當出現大規模的當機時,你就會知道你的備援是本地還是異地了!