Event ID: 1019

Event Type: Warning

Event Source: ClusSvc

Event Category: Log Mgr

   
    Description: The log file Q:MSCSquolog.log was found to be corrupt. An attempt will be made to reset it, or you should use the Cluster Administrator utility to adjust the maximum size.
  
    除以上比較明顯描述的錯(cuò)誤外,事件日志中還可以發(fā)現(xiàn)以下記錄:
  
    Event ID:1067;Event ID: 1148
  
    解決方法
  
    從事件日志分析,quorum.log 文件出現(xiàn)了錯(cuò)誤,導(dǎo)致了系統(tǒng)集群服務(wù)不能正常啟動(dòng),解決問(wèn)題的關(guān)鍵在于能夠把quorum.log文件恢復(fù)到一個(gè)初始化狀態(tài),從而可以使系統(tǒng)集群服務(wù)正常啟動(dòng)。
  
    解決步驟
  
    1.通過(guò)-ResetQuorumLog參數(shù)來(lái)啟動(dòng)Cluster,以達(dá)到初始化quorum.log的目的。
  
    1)打開(kāi)控制面板,雙擊“服務(wù)”(Service)圖標(biāo);
  
    2)在服務(wù)管理器中找到Cluster service,右鍵點(diǎn)擊“屬性”(properties);
  
    3)在啟動(dòng)變量(Start Parameters)空白框中寫(xiě)入-ResetQuorumLog,啟動(dòng)Cluster服務(wù)。
  
    2.如果以上方法無(wú)法啟動(dòng)Cluster,則通過(guò)-NoQuorumLogging參數(shù)停止Cluster。
  
    步驟1不能正常啟動(dòng)Cluster服務(wù),說(shuō)明需要完全重建檢查點(diǎn)和quorum.log文件,可以按以下步驟實(shí)施:
  
    1)打開(kāi)控制面板,點(diǎn)擊“服務(wù)”(Service)圖標(biāo);
  
    2)在服務(wù)管理器中找到Cluster service,右鍵點(diǎn)擊“屬性”(properties);
  
    3)在啟動(dòng)變量(Start Parameters)空白框中寫(xiě)入-NoQuorumLogging,啟動(dòng)Cluster服務(wù)。
  
    然后,再次用-ResetQuorumLog參數(shù)來(lái)啟動(dòng)Cluster:
  
    4)打開(kāi)共享磁盤(pán)柜,找到mscs目錄,刪除它;
  
    5)在服務(wù)管理器中找到Cluster service,右鍵點(diǎn)擊“停止”,將Cluster服務(wù)停止;
  
    6)在服務(wù)管理器中找到Cluster service,右鍵點(diǎn)擊“屬性”(properties);
  
    7)在啟動(dòng)變量(Start Parameters)空白框中寫(xiě)入-ResetQuorumLog,再次啟動(dòng)Cluster服務(wù);
  
    8)此時(shí)Cluster服務(wù)將正常運(yùn)行,主節(jié)點(diǎn)將可成功訪問(wèn)共享資源。
  
    3.若此時(shí)集群中第二節(jié)點(diǎn)處在故障狀態(tài),可采用以下方法來(lái)解決。
  
    1)在開(kāi)始選單的管理工具中打開(kāi)集群管理器;
  
    2)點(diǎn)擊出現(xiàn)故障的節(jié)點(diǎn), 右擊“evict”,使故障節(jié)點(diǎn)退出集群資源;
  
    3)在第二節(jié)點(diǎn)上重新安裝Cluster服務(wù),再次加入集群資源。
  
  案例思考
  
    集群的每個(gè)節(jié)點(diǎn)都在其本地計(jì)算機(jī)上維護(hù)一個(gè)集群服務(wù)數(shù)據(jù)庫(kù)的拷貝。這個(gè)拷貝位于%SystemRoot%ClusterClusdb。當(dāng)集群服務(wù)在一個(gè)節(jié)點(diǎn)上首次啟動(dòng)時(shí),一個(gè)集群數(shù)據(jù)庫(kù)的更新數(shù)據(jù)將注冊(cè)到注冊(cè)表的一個(gè)蜂巢中(HKEY_LOCAL_MACHINECluster)。當(dāng)重新啟動(dòng)集群服務(wù)器時(shí),一個(gè)存在的Cluster注冊(cè)表將被使用。
  
    集群服務(wù)將Cluster的注冊(cè)信息也保存在共享資源的一個(gè)文件中。檢查點(diǎn)文件位于MscsChkxxx.tmp,每次檢查點(diǎn)文件生效,都將把有關(guān)信息記錄入MscsQuolog.log 文件中,以下四類(lèi)情況將使Cluster服務(wù)產(chǎn)生檢查點(diǎn):
  
     主節(jié)點(diǎn)轉(zhuǎn)移到另一節(jié)點(diǎn)上;
  
     任何節(jié)點(diǎn)上的Cluster服務(wù)停止;
  
     Quolog.log文件達(dá)到了其最大重置尺寸(在Windows 2000中為64KB);
  
     在注冊(cè)表HKEY_LOCAL_MACHINECluster QuorumCheckpointInterval中設(shè)定了一個(gè)時(shí)間間隔,在Windows 2000中設(shè)置為4小時(shí),如果在此時(shí)間間隔內(nèi)Cluster沒(méi)有任何變化時(shí),也會(huì)產(chǎn)生一個(gè)檢查點(diǎn)。
  
    此次集群服務(wù)啟動(dòng)失敗,關(guān)鍵在于Quolog.log文件被破壞,所以此次修復(fù)的關(guān)鍵在于能夠讀取一個(gè)正常的Quolog.log文件。筆者采用的方法是:刪除 Mscs目錄下的所有文件,然后設(shè)置參數(shù)-NoQuorumLogging讓Cluster重建Quolog.log文件。這種操作有一定的風(fēng)險(xiǎn),因?yàn)榇藭r(shí)集群兩個(gè)節(jié)點(diǎn)的狀態(tài)的任何改變將無(wú)法被記錄下來(lái),從而也就無(wú)法保持兩節(jié)點(diǎn)的一致性
  
    隨著目前Windows 2000 服務(wù)器的大量應(yīng)用,在比較關(guān)鍵性的業(yè)務(wù)平臺(tái)上,都使用了基于Windows 2000 Cluster的集群服務(wù)器。集群服務(wù)器在幾乎所有的故障點(diǎn)上都采用了冗余的手段保證系統(tǒng)的可用性。而以下的實(shí)例,則是由于Cluster軟件的故障造成了無(wú)法對(duì)共享磁盤(pán)柜進(jìn)行訪問(wèn),也就從事實(shí)上導(dǎo)致了服務(wù)的不可用性,這是用冗余手段也難以解決的問(wèn)題。筆者希望通過(guò)對(duì)此實(shí)例的分析,能帶給大家一些解決集群故障的啟示。
  
    應(yīng)用硬件環(huán)境為兩臺(tái)服務(wù)器與一臺(tái)RA4100磁盤(pán)柜通過(guò)光纖HUB組成了一個(gè)集群環(huán)境。運(yùn)行軟件環(huán)境為Microsoft Windows 2000 Advanced Server,使用Windows 2000自帶的Cluster軟件。

分享到

多易

相關(guān)推薦