可用性是指定部署系統正常執行時間的一種方式,且通常以系統可供使用者存取時間的百分比為測量基準。系統無法存取的時間 (當機時間) 可能歸咎於硬體、軟體、網路錯誤或者任何其他造成系統當機的因素 (例如斷電)。規劃的服務當機時間 (維護和升級) 不列入當機時間計算。以正常執行時間的比率計算系統可用性的基本方程式為:
可用性 = 正常執行時間/(正常執行時間 + 當機時間) * 100%
通常以可達成的「九」的數量來衡量可用性。例如,99% 的可用性為兩個「九」。指定額外的「九」會明顯地影響部署設計。下表量化了為某個系統增加額外的可用性「九」後的非排程當機時間,該系統全年 24x7 方式執行 (合計 8,760 小時)。
表 3–3 系統執行一整年 (8,760 小時) 的未排程當機時間
「九」的數量 |
可用百分比 |
未排程的當機時間 |
---|---|---|
2 |
99% |
88 小時 |
3 |
99.9% |
9 小時 |
4 |
99.99% |
45 分鐘 |
5 |
99.999% |
5 分鐘 |
四或五個「九」的可用性需求通常需要容錯系統。容錯系統必須能夠在硬體或軟體錯誤期間繼續服務。容錯通常是透過硬體 (像是 CPU、記憶體和網路裝置) 和提供關鍵服務的軟體的備援達成的。
錯誤單點是一個硬體或軟體元件,為重要路徑的一部分,但沒有透過備援元件備份。此元件的錯誤會導致系統服務的損失。在設計容錯系統時,您必須確認並排除潛在的錯誤單點。
容錯系統的實作和維護可能很昂貴。確定您瞭解用於可用性的業務需求特性,並考慮符合這些需求的可用性解決方案的策略和成本。
從使用者觀點來看,比起整體系統的可用性,可用性更常應用在個別的服務上。例如,無法使用即時訊息傳送服務,通常不會對其他服務的可用性造成太大的影響。不過,如果無法使用許多其他服務所依賴的服務 (像是 Directory Server),對系統的影響就會大得多。較高的可用性規格應該清楚地參照到需要較高可用性的特定使用實例和使用分析。
根據優先性的順序組合列出可用性需求會很有幫助。下表排出服務的不同類型的可用性順序。
表 3–4 依優先性排列的服務可用性
優先性 |
服務類型 |
說明 |
---|---|---|
1 |
關鍵任務 |
必須隨時能用的服務。例如,應用程式的資料庫服務 (如 LDAP 目錄)。 |
2 |
必須可用 |
必須能用的服務,但是在降低效能時可以利用。例如,訊息傳送可用性在某些業務環境中可能不是關鍵的。 |
3 |
可以延遲 |
在給定期間內可以使用的服務。例如,行事曆服務可用性在某些業務環境中可能不是必要的。 |
4 |
選擇性 |
可以無限延遲的服務。例如,在某些環境中,即時訊息傳送服務可能被視為有用但不是必要的服務。 |
可用性設計會考慮可用性降低或元件遺失時可能發生的情況。同時也會考慮相關的使用者是否必須重新開始階段作業,以及一個區域的錯誤對系統其他區域所造成的影響程度。需求應該要考慮這些方案,並指定部署如何對這這些解決方案做出回應。