一千萬個為什麽

搜索

您如何計算雲服務的復合服務級別協議(SLA)?



亞馬遜網絡服務 AzureGoogle 和大多數其他人發布 S 服務 L evel greement (或SLA)。然後,架構師,平臺工程師和開發人員負責將這些技術結合在一起,創建一個為應用程序提供托管的架構。

孤立地看,這些服務通常提供三到四分之九的可用性:

  • Azure流量管理器:99.99%或'四個9'。
  • SQL Azure:99.99%或'四個9'。
  • Azure應用服務:99.95%或'三九五'。

但是,如果在體系結構中組合在一起,則任何一個組件都有可能遭受停機,導致整體可用性不等於組件服務。

串行化合物可用性

Serial Availability

在這個例子中有三種可能的故障模式:

  • SQL Azure關閉
  • 應用服務已關閉
  • 兩者都關閉

因此這個“系統”的總體可用性必須低於99.95%。我認為這是如果兩項服務的SLA是:

該服務將在24小時內提供23小時。

然後:

  • App Service可能在0100和0200之間
  • 0500到0600之間的數據庫

兩個組件都在其SLA內,但整個系統在24小時內不可用2小時。

串行和並行可用性

串行和並行可用性

在這種架構中,主要有大量的故障模式:

  • RegionA中的SQL Server已關閉
  • RegionB中的SQL Server已關閉
  • RegionA中的應用服務已關閉
  • RegionB中的應用服務已關閉
  • 流量管理器已關閉
  • 上面的組合

由於流量管理器是斷路器,因此它可以檢測任一區域的中斷並將流量路由到工作區域,但流量管理器仍然存在單點故障,因此“系統”的總可用性無法高於99.99%。

上述兩個系統的復合可用性如何計算並記錄在業務中,如果業務需要比架構能夠提供的更高服務水平,可能需要重新構建?

如果你想註解圖表,我已經在 Lucid Chart 並創建了一個多用途鏈接,請記住任何人都可以編輯這個鏈接,以便您可以創建要註釋的網頁副本。

轉載註明原文: 您如何計算雲服務的復合服務級別協議(SLA)?

一共有 2 個回答:

我認為這是一個數學問題,SLA是可能的。

在這種情況下,我們可以依靠概率規則來獲得整體。

對於第一種情況,App Service(A)和Sql Service(B)同時關閉的概率是其概率的乘積:

P(A)*P(B) = 0.0005 * 0.0005 = 0,00000025

其中一個發生故障的概率是他們發生概率的總和:

P(A)+P(B) = 0.001

當兩個事件是獨立的時候,所考慮到的兩個事件的可能性公式是:

P(A,B) = P(A) + P(B) - P(A)*P(B) = 0.001 - 0,00000025 = 0,00099975

So the overall SLA would be 1 - 0,00099975 = 0,99900025 wich in percent is 99.900025 %

簡化是第一個概率的乘積: 0.9995 * 0.9995 = 0,99900025

適用於您的1小時/ 24小時停機(每天4,166666%)這給出(小數點縮寫):

0.0416 + 0.0416 - (0.0416 * 0.0416) = 0,081597222

So the probability of being OK is 1 - 0.0816 = 0.9184 in percent: 91,84%

24 * 0.0816 = 1.95 h

這比2小時的最壞情況還要少,因為這兩個機會同時出現下降。

牢記這一點,您可能會註意到每個的可用性是 95,84%0,958333333 * 0,958333333 = 0,918402778 ,這是我們的 91.84 %(對不起,這裏有完整的小數,但是它們是演示所需的)

現在對於第二種情況,我們將從每個區域的復合概率開始獲得收益(對不起,我駁回了SQL的更改以保持合理),假設區域本身沒有獨立概率,並且每個區域都是孤立的,數據庫故障只會占用其區域。

我們擁有流量管理器OK概率P(T)= 0.9999,並且每個應用+ DB與OK概率P(G)= 0,99900025

How much region we have play a role as we have to apply the product of failure probability only to get the probability both region are down as the same time:
0,00099975 * 0,00099975 = 0,0000009995000625 which means an overall availability of at least one region of 99,049375 %

現在我們擁有整個區域的可用性,與流量管理器的產品給了我們整個系統的可用性:

0.9999 * 0,9999990004999375 = 0,99989900059988750625

整體可用性為 99.989900%

閱讀 Tensibai的出色答案之後,我意識到我曾經能夠為網絡分析目的計算這一點。我挖掘了我的高可用性網絡基礎知識由克裏斯奧格裏諾所做,並且從這個問題上解決了這個問題,而不是第一個校長。

直接從Tensibai的答案中拿出我的連續實例就是將每個組件可用的概率乘以另一個的情況:

Serial Availability

所以

99.95%* 99.95%= 99.9%

並行計算有點復雜,因為我們需要考慮可用性百分比的大小:

Serial and Parallel Availability

計算過程如下:

  1. Multiply the unavailability of the two regions together.

    0.1% * 0.1% = 0.0001%

  2. Convert that back to availability

    100% - 0.0001% = 99.9999%

  3. Multiply the Traffic Manager availability by the availability of the two regions.

    99.99% * 99.9999% = 99.9899%

  4. The result is the whole system availability.

    99.9899% is close to 99.99%

我結束了使用Excel來執行計算,這裏是值:

Excel Values

......和公式......

Excel Formulas