在成功部署AG之後,跟蹤和維護健康狀況是很重要的。
PBM的核心是政策,政策有以下部分組成:
1.目标,政策運作在有一組或者一個對象上。
2.條件,條件是bool表達式,指定目标的狀态。如果條件false,就會發生錯誤。
3.歸類,歸類是對政策的簡單歸類
一旦你定義了一個政策,PBM會提供引擎來執行這些政策,擷取結果。健康模型的核心是收集BPM政策,可以再管理->政策->系統政策裡面找到。政策使用的條件可以檢視管理->政策->條件->系統條件。
所有政策并不是相同的,有些政策錯誤比其他政策要嚴重的多。為了支援這個,我們提供了PBM的歸類機制。重要的政策會放入Error歸類,不太重要的會放入Warning。
當政策執行計算目标的健康:
1.執行對象上所有的政策。
2.如果有政策是在Error歸類上,那麼報告對象錯誤
3.如果是Warning歸類,那麼報告對象警告狀态
4.否則就是健康的。
來通路健康模型。
AlwayOn是多服務系統,問題就是,這些服務在哪裡運作?答案是通常在目前primary副本上運作。因為primary副本有所有的必要的用來計算健康狀況的資料。Secondary副本隻知道自己的和primary的健康狀況。這就是hub and
spoke模型

當然然也可以在secondary上評估副本,政策在本地對象上運作,但是總體的結果會是unknown。因為健康模型報告無法準确的确定AG的狀态,因為資料不夠。
注意我們使用PBM的歸類(category)機制來判斷一個政策的敏感程度。但是不單單如此,我們也基于對象類型使用歸類來組織政策。不僅如此,我們也把這些歸檔作為探索機制。當确定使用什麼政策,健康模型明确的查找這些歸類中的政策。在釋出2012的時候,定義了8個歸類,每個不同目标類型,都有2個error和warning歸類。清單如下:
1.Availability database errors\Availability database warnings
在這個歸類下的政策的對象是可用資料庫。相關的方面是Database
Replica State
2. Availability group errors (any replica role)\ Availability group warnings
(any replica role)
在這些歸類的政策使用在可用組上。Any
replica role表示這些政策可以可以運作在AG的任意副本上。比如在secondary上運作dashborad,這個歸類下的政策就會被評估。注意這個歸類下的有些政策目标是服務對象。有必要去驗證WSFC叢集的屬性。相關方面:Availability
Group State,Server。
3. Availability group errors (primary replica only)\ Availability group
warnings (primary replica only)
這個歸類内的政策用于AG,但是要運作在primary副本上
4. Availability replica errors\ Availability replica warnings
這個歸類的政策是運作在可用副本的。相關方面Availability Replica
下面介紹dashboard的各個部分:
1.dashboard的AG部分
這個部分由4個歸類:
1.Availability Group errors(any replica role)
2.Availability Group warnings(any replica role)
3.Availability Group errors(primary replica role)
4.Availability Group Warnings(primary replica role)
注意如果你從secondary運作dashboard,隻有前面2個歸類會被考慮。如圖就表示有1個嚴重錯誤和2個警告,表示有一個error歸類的政策報錯,和2個warning歸類的政策報錯。如果點選高亮部分可以獲得詳細錯誤資訊。
2.Availability Replicas部分
健康狀态計算使用2個政策歸類,Availability
replica errors\ Availability replica warnings。當dashboard在secondary上運作,隻能看到本地的可用副本。通過點選warning可以獲得詳細的錯誤資訊。
3.可用資料庫部分
可用資料庫的健康狀态的計算使用2個政策歸類Availability
database errors\Availability database warnings。當dashboard在secondary副本,你隻能檢視本地資料庫。