鳳凰伺服器
2012 年 7 月 10 日
有一天,我幻想著為營運部門建立一個認證服務。認證評估將由我和一位同事前往企業資料中心,並帶著棒球棒、電鋸和水槍,對關鍵的生產伺服器進行設定。評估將根據營運團隊讓所有應用程式重新啟動並執行的時間長度為依據。
這可能是一個愚蠢的幻想,但這裡有一個智慧的結晶。雖然你應該放棄棒球棒,但定期虛擬燒毀你的伺服器是一個好主意。伺服器應該像鳳凰一樣,定期從灰燼中重生。[1]
使用鳳凰伺服器的主要優點是避免組態偏移:系統組態未記錄的臨時變更。偏移是一個通往雪花伺服器的街道名稱,而你不想在沒有大型犁機的情況下前往那裡。
對抗偏移的一種方法是使用自動將伺服器與已知基準線重新同步的軟體。Puppet 和 Chef 等工具具有執行此操作的功能,自動重新套用其定義的組態。[2]限制在於,重新套用此類組態只能在工具控制的區域中發現偏移。發生在這些區域之外的組態偏移不會被修復。然而,由於鳳凰從頭開始,因此它們將從來源組態中擷取任何偏移。
這並不表示重新套用組態沒有用,因為它通常比燒毀伺服器更快且破壞性更小。但同時使用這兩種策略來對抗雪花是有價值的。
延伸讀物
Netflix 有個 chaos monkey,會隨機燒毀伺服器,以測試其系統的復原力。