[AlwaysOn Availability Groups]CLUSTER.LOG(AG)
CLUSTER.LOG(AG)
作為故障轉移資源,在SQL Server和windows故障轉移集群服務的資源DLL(hadrres.dll)之間有額外的內部交流,DLL無法被SQL Server監控。WSFC log,CLUSTER.LOG可以診斷WSFC集群或者SQL Server Resource DLL的問題。
以下演示了SQL Server和windows集群管理的關系。windows集群管理用來初始化AG資源創建,釋放或者狀態修改。
1.生產集群日志
有2個方式生產集群日志:
1.在命令行使用cluster /log /g命令。集群日志會生成在\windows\cluster\reports目錄的每個WSFC節點下。這個方法的有點是你可以指定生成日志詳細程度的級別,通過/level選項。壞處是不能指定生成什么目錄下面,具體可以看:?How to create the cluster.log in Windows Server 2008 Failover Clustering.
2.使用Get-ClusterLog powershell命令,好處是可以指定所有節點生產到什么目錄上。好處是不能指定日志的詳細級別。
以下Powershell命令生產最近15分鐘的cluster log,并放入到當前日志文件。運行這個命令需要管理員權限
Import-Modeul FailoverClusters
Get-ClusterLog –TimeSpan 15 –Destination .
2.冗余AlwaysOn日志
可以通過以下操作,設置CLUSTER.LOG的冗余程度:
1.啟動故障轉移集群管理器
2.展開集群和服務和應用節點,點擊AG名
3.右擊AG資源點擊屬性
4.點擊屬性tab
5.修改VerboseLogging屬性,默認為0,取值從0到2.
6.點擊確定
7.右擊AG資源點擊,Take this resource offline
8. 右擊AG資源點擊,Bring this resource online
3.AG Resource事件
表如下可以顯示CLUSTER.LOG下的關于AG資源的不同事件,更多關于?Resource Hosting Subsystem (RHS) 和 Resource Control Monitor (RCM) in WSFC的信息查看:Resource Hosting Subsystem (RHS) In Windows Server 2008 Failover Clusters.
| Identifier | Source | Example from CLUSTER.LOG |
| Messages prefixed with RES and '[hadrag]' | hadrres.dll (AlwaysOn Resource DLL) | 00002cc4.00001264::2011/08/05-13:47:42.543 INFO [RES] SQL Server Availability Group <ag>: [hadrag] Offline request. 00002cc4.00003384::2011/08/05-13:47:42.558 ERR [RES] SQL Server Availability Group <ag>: [hadrag] Lease Thread terminated 00002cc4.00003384::2011/08/05-13:47:42.605 INFO [RES] SQL Server Availability Group <ag>: [hadrag] Free SQL statement 00002cc4.00003384::2011/08/05-13:47:42.902 INFO [RES] SQL Server Availability Group <ag>: [hadrag] Disconnect from SQL Server |
| Messages prefixed with [RHS] | RHS.EXE (Resource Hosting Subsystem, host process of hadrres.dll) | 00000c40.00000a34::2011/08/10-18:42:29.498 INFO [RHS] Resource ag has come offline. RHS is about to report resource status to RCM. |
| Messages prefixed with [RCM] | Resource Control Monitor (Cluster Service) | 000011d0.00000f80::2011/08/05-13:47:42.480 INFO [RCM] rcm::RcmGroup::Move: Bringing group 'ag' offline first... 000011d0.00000f80::2011/08/05-13:47:42.496 INFO [RCM] TransitionToState(ag) Online-->OfflineCallIssued. |
| RcmApi/ClusAPI | An API call, which mostly means SQL Server is requesting the action | 000011d0.00000f80::2011/08/05-13:47:42.465 INFO [RCM] rcm::RcmApi::MoveGroup: (ag, 2) |
3. 隔離的調試AlwaysOn資源DLL
最好的調試配置是,集群獨立的使用AlwaysOn資源DLL(hadrres.dll)。默認WSFC集群所有的資源DLL在獨立的實例rhs.exe上運行。所有集群里的資源會共享給通一個rhs.exe實例。當你試圖使用調試器調試hadrres.dll使用定點暫??赡軙е缕渌蚕砹?/span>rhs.exe.的實例也中斷了。當你在集群中使用多個AG組,當你在調試器定點調試,一樣的配置會導致所有的AG都會中斷。
為了隔離其他資源DLL,包括其他AG,在獨立的rhs.exe使用以下步驟:
1.打開注冊表,找到HKEY_LOCAL_MACHINE\Cluster\Resources。這個key包含了所有資源的key,每個都有不同的GUID。
2.找到一個key包含了AG名的。
3.修改SeparateMonitor?=1
4.重啟集群服務。
?
總結
以上是生活随笔為你收集整理的[AlwaysOn Availability Groups]CLUSTER.LOG(AG)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WiFi万能钥匙联合长安汽车,“一键连接
- 下一篇: shell中经常能看到的:/dev/n