服務(wù)器集群就是指將很多
服務(wù)器集中起來一起進(jìn)行同一種服務(wù),在
客戶端看來就象是只有一個(gè)服務(wù)器 集群可以利用多個(gè)
計(jì)算機(jī)進(jìn)行并行計(jì)算從而獲得很高的計(jì)算速度,也可以用多個(gè)計(jì)算機(jī)做備份,從而使得任何一個(gè)機(jī)器壞了整個(gè)系統(tǒng)還是能正常運(yùn)行 一旦在服務(wù)器上安裝并運(yùn)行了群集服務(wù),該服務(wù)器即可加入群集。群集化操作可以減少單點(diǎn)故障數(shù)量,并且實(shí)現(xiàn)了群集化資源的高可用性。下述各節(jié)簡(jiǎn)要介紹了群集創(chuàng)建和群集操作中的節(jié)點(diǎn)行為。 注意:有關(guān)安裝群集服務(wù)器的信息,請(qǐng)參閱 Windows server 2003 產(chǎn)品家族的幫助和部署指南。 創(chuàng)建群集 在服務(wù)器群集產(chǎn)品中含有用來在服務(wù)器上安裝群集軟件和創(chuàng)建新群集的群集安裝實(shí)用工具。創(chuàng)建新群集時(shí),首先在選擇作為群集的第一個(gè)成員的計(jì)算機(jī)上運(yùn)行該實(shí)用工具。第一步是確定群集名稱并創(chuàng)建群集
數(shù)據(jù)庫和初始的群集成員列表來定義新群集。 Windows server 2003 群集新增了一個(gè)群集管理設(shè)置向?qū)б约笆褂?cluster.exe 命令行界面創(chuàng)建( 包括從遠(yuǎn)程創(chuàng)建 )群集的功能。 創(chuàng)建群集的第二步是,添加可供所有群集成員使用的共用數(shù)據(jù)
存儲(chǔ)設(shè)備。這樣,創(chuàng)建的新群集將帶有一個(gè)節(jié)點(diǎn)、自己的本地?cái)?shù)據(jù)存儲(chǔ)設(shè)備以及群集共用資源 —— 通常是磁盤或數(shù)據(jù)存儲(chǔ)和連接介質(zhì)資源。 創(chuàng)建群集的最后一步是,在另外將要成為群集成員的每一臺(tái)計(jì)算機(jī)上運(yùn)行安裝實(shí)用工具。每當(dāng)將新節(jié)點(diǎn)添加到群集中時(shí),新節(jié)點(diǎn)都會(huì)自動(dòng)從群集的原始成員獲得現(xiàn)有群集數(shù)據(jù)庫的副本。當(dāng)節(jié)點(diǎn)加入或形成群集時(shí),群集服務(wù)會(huì)更新該節(jié)點(diǎn)私有的配置數(shù)據(jù)庫副本。 形成群集 如果服務(wù)器運(yùn)行了群集服務(wù)并且無法找到群集中的其它節(jié)點(diǎn),它自己可以形成一個(gè)群集。要形成群集,節(jié)點(diǎn)必須能夠獲得對(duì)仲裁資源的獨(dú)占權(quán)。 當(dāng)最初形成群集時(shí),群集中的第一個(gè)節(jié)點(diǎn)將包括群集配置數(shù)據(jù)庫。每當(dāng)有新節(jié)點(diǎn)加入群集時(shí),新節(jié)點(diǎn)都會(huì)在本地獲得并保持群集配置數(shù)據(jù)庫的副本。仲裁資源用恢復(fù)日志(其中含有同節(jié)點(diǎn)無關(guān)的群集配置和狀態(tài)數(shù)據(jù))的形式存儲(chǔ)配置數(shù)據(jù)庫的最新版本。 在群集運(yùn)行中,群集服務(wù)使用仲裁恢復(fù)日志執(zhí)行以下操作 : 保證只有一組活動(dòng)、可相互通訊的節(jié)點(diǎn)才能形成群集 僅當(dāng)某個(gè)節(jié)點(diǎn)可以獲得對(duì)仲裁資源的控制權(quán)時(shí) , 才允許它形成群集 僅當(dāng)某個(gè)節(jié)點(diǎn)可以同控制仲裁資源的節(jié)點(diǎn)通訊時(shí) , 才允許它加入或留在現(xiàn)有群集中 從群集中的其它節(jié)點(diǎn)和群集服務(wù)管理接口的角度看,當(dāng)形成群集時(shí),群集中的每個(gè)節(jié)點(diǎn)可能處于三種不同狀態(tài)中的一種。事件處理器會(huì)記錄這些狀態(tài),而事件日志管理器會(huì)將這些狀態(tài)復(fù)制到群集的其它節(jié)點(diǎn)。群集服務(wù)狀態(tài)包括: 脫機(jī)。此時(shí)的節(jié)點(diǎn)不是完全有效的群集成員。該節(jié)點(diǎn)及其群集服務(wù)器可能在運(yùn)行,也可能未運(yùn)行。 聯(lián)機(jī)。此時(shí)的節(jié)點(diǎn)是完全有效的群集成員。它遵從群集數(shù)據(jù)庫的更新、對(duì)仲裁算法施加自己的影響、維護(hù)心跳通訊,并可以擁有和運(yùn)行資源組。 暫停。此時(shí)的節(jié)點(diǎn)是完全有效的群集成員。它遵從群集數(shù)據(jù)庫的更新、對(duì)仲裁算法施加自己的影響、維護(hù)心跳通訊,但它無法接受資源組。它只能支持它當(dāng)前已擁有的那些資源組。之所以提供暫停狀態(tài),是為了允許執(zhí)行某些維護(hù)。大多數(shù)服務(wù)器群集組件會(huì)將聯(lián)機(jī)和暫停視為等價(jià)的狀態(tài)。 加入群集 如果一個(gè)服務(wù)器要加入現(xiàn)有群集 , 則它必須運(yùn)行群集服務(wù)并且必須成功找到群集中的其它節(jié)點(diǎn)。在找到其它節(jié)點(diǎn)后,加入的服務(wù)器必須接受群集成員資格驗(yàn)證,并獲得群集配置數(shù)據(jù)庫的副本。 加入現(xiàn)有群集的過程開始于 Windows Server 2003 或 Windows 2000 Service Control Manager 在節(jié)點(diǎn)上啟動(dòng)群集服務(wù)之時(shí)。在啟動(dòng)過程中,群集服務(wù)會(huì)配置并裝入該節(jié)點(diǎn)的本地?cái)?shù)據(jù)設(shè)備。它并不會(huì)試圖將共用的群集數(shù)據(jù)設(shè)備作為節(jié)點(diǎn)聯(lián)機(jī),因?yàn)楝F(xiàn)有群集可能正在使用這些設(shè)備。 為了查找其它節(jié)點(diǎn) , 會(huì)啟動(dòng)一個(gè)發(fā)現(xiàn)過程。當(dāng)節(jié)點(diǎn)發(fā)現(xiàn)任何群集成員時(shí),它將執(zhí)行身份驗(yàn)證序列。第一個(gè)群集成員會(huì)對(duì)新加入者進(jìn)行身份驗(yàn)證,并且在新服務(wù)器得到成功驗(yàn)證后返回成功狀態(tài)。如果驗(yàn)證不成功(未能識(shí)別待加入節(jié)點(diǎn)的群集成員身份,或者它使用了無效的帳戶密碼),則加入群集的請(qǐng)求會(huì)被拒絕。 進(jìn)行成功驗(yàn)證后,首先聯(lián)機(jī)的群集節(jié)點(diǎn)會(huì)檢查加入節(jié)點(diǎn)上的配置數(shù)據(jù)庫副本。如果該副本已過時(shí),對(duì)加入服務(wù)器進(jìn)行驗(yàn)證的群集節(jié)點(diǎn)會(huì)為加入的服務(wù)器發(fā)送該數(shù)據(jù)庫的更新副本。剛加入群集的節(jié)點(diǎn)在收到復(fù)制的數(shù)據(jù)庫后,可以用它查找共享資源并根據(jù)需要將它們聯(lián)機(jī)。 脫離群集 當(dāng)節(jié)點(diǎn)關(guān)閉或群集服務(wù)被停止時(shí),節(jié)點(diǎn)可能脫離群集。但當(dāng)節(jié)點(diǎn)不執(zhí)行群集操作(比如不向群集配置數(shù)據(jù)庫提交更新)時(shí),節(jié)點(diǎn)也可能被迫脫離(被逐出)群集。 如果節(jié)點(diǎn)根據(jù)預(yù)先的計(jì)劃脫離群集 , 它會(huì)向其它所有節(jié)點(diǎn)成員發(fā)送 ClusterExit 消息,通知它們它將脫離群集。該節(jié)點(diǎn)不等待任何響應(yīng)就會(huì)立即進(jìn)行關(guān)閉資源和所有群集連接的操作。由于其余節(jié)點(diǎn)收到了退出消息,因此它們不會(huì)執(zhí)行在節(jié)點(diǎn)意外失效或網(wǎng)絡(luò)通訊停止時(shí)發(fā)生的重新分組過程以重新確立群集成員身份。
1 基本簡(jiǎn)介 編輯本段
服務(wù)器集群就是指將很多服務(wù)器集中起來一起進(jìn)行同一種服務(wù),在客戶端看來就象是只有一個(gè)服務(wù)器
集群可以利用多個(gè)計(jì)算機(jī)進(jìn)行并行計(jì)算從而獲得很高的計(jì)算速度,也可以用多個(gè)計(jì)算機(jī)做備份,從而使得任何一個(gè)機(jī)器壞了整個(gè)系統(tǒng)還是能正常運(yùn)行
一旦在服務(wù)器上安裝并運(yùn)行了群集服務(wù),該服務(wù)器即可加入群集。群集化操作可以減少單點(diǎn)故障數(shù)量,并且實(shí)現(xiàn)了群集化資源的高可用性。下述各節(jié)簡(jiǎn)要介紹了群集創(chuàng)建和群集操作中的節(jié)點(diǎn)行為。
注意:有關(guān)安裝群集服務(wù)器的信息,請(qǐng)參閱 Windows server 2003 產(chǎn)品家族的幫助和部署指南。
2 創(chuàng)建群集 編輯本段
在服務(wù)器群集產(chǎn)品中含有用來在服務(wù)器上安裝群集軟件和創(chuàng)建新群集的群集安裝實(shí)用工具。創(chuàng)建新群集時(shí),首先在選擇作為群集的第一個(gè)成員的計(jì)算機(jī)上運(yùn)行該實(shí)用工具。第一步是確定群集名稱并創(chuàng)建群集數(shù)據(jù)庫和初始的群集成員列表來定義新群集。 Windows server 2003 群集新增了一個(gè)群集管理設(shè)置向?qū)б约笆褂?cluster.exe 命令行界面創(chuàng)建( 包括從遠(yuǎn)程創(chuàng)建 )群集的功能。
創(chuàng)建群集的第二步是,添加可供所有群集成員使用的共用數(shù)據(jù)存儲(chǔ)設(shè)備。這樣,創(chuàng)建的新群集將帶有一個(gè)節(jié)點(diǎn)、自己的本地?cái)?shù)據(jù)存儲(chǔ)設(shè)備以及群集共用資源 —— 通常是磁盤或數(shù)據(jù)存儲(chǔ)和連接介質(zhì)資源。
創(chuàng)建群集的最后一步是,在另外將要成為群集成員的每一臺(tái)計(jì)算機(jī)上運(yùn)行安裝實(shí)用工具。每當(dāng)將新節(jié)點(diǎn)添加到群集中時(shí),新節(jié)點(diǎn)都會(huì)自動(dòng)從群集的原始成員獲得現(xiàn)有群集數(shù)據(jù)庫的副本。當(dāng)節(jié)點(diǎn)加入或形成群集時(shí),群集服務(wù)會(huì)更新該節(jié)點(diǎn)私有的配置數(shù)據(jù)庫副本。
如果服務(wù)器運(yùn)行了群集服務(wù)并且無法找到群集中的其它節(jié)點(diǎn),它自己可以形成一個(gè)群集。要形成群集,節(jié)點(diǎn)必須能夠獲得對(duì)仲裁資源的獨(dú)占權(quán)。
當(dāng)最初形成群集時(shí),群集中的第一個(gè)節(jié)點(diǎn)將包括群集配置數(shù)據(jù)庫。每當(dāng)有新節(jié)點(diǎn)加入群集時(shí),新節(jié)點(diǎn)都會(huì)在本地獲得并保持群集配置數(shù)據(jù)庫的副本。仲裁資源用恢復(fù)日志(其中含有同節(jié)點(diǎn)無關(guān)的群集配置和狀態(tài)數(shù)據(jù))的形式存儲(chǔ)配置數(shù)據(jù)庫的最新版本。
在群集運(yùn)行中,群集服務(wù)使用仲裁恢復(fù)日志執(zhí)行以下操作 :
保證只有一組活動(dòng)、可相互通訊的節(jié)點(diǎn)才能形成群集
僅當(dāng)某個(gè)節(jié)點(diǎn)可以獲得對(duì)仲裁資源的控制權(quán)時(shí) , 才允許它形成群集
僅當(dāng)某個(gè)節(jié)點(diǎn)可以同控制仲裁資源的節(jié)點(diǎn)通訊時(shí) , 才允許它加入或留在現(xiàn)有群集中
從群集中的其它節(jié)點(diǎn)和群集服務(wù)管理接口的角度看,當(dāng)形成群集時(shí),群集中的每個(gè)節(jié)點(diǎn)可能處于三種不同狀態(tài)中的一種。事件處理器會(huì)記錄這些狀態(tài),而事件日志管理器會(huì)將這些狀態(tài)復(fù)制到群集的其它節(jié)點(diǎn)。群集服務(wù)狀態(tài)包括:
脫機(jī)。此時(shí)的節(jié)點(diǎn)不是完全有效的群集成員。該節(jié)點(diǎn)及其群集服務(wù)器可能在運(yùn)行,也可能未運(yùn)行。
聯(lián)機(jī)。此時(shí)的節(jié)點(diǎn)是完全有效的群集成員。它遵從群集數(shù)據(jù)庫的更新、對(duì)仲裁算法施加自己的影響、維護(hù)心跳通訊,并可以擁有和運(yùn)行資源組。
暫停。此時(shí)的節(jié)點(diǎn)是完全有效的群集成員。它遵從群集數(shù)據(jù)庫的更新、對(duì)仲裁算法施加自己的影響、維護(hù)心跳通訊,但它無法接受資源組。它只能支持它當(dāng)前已擁有的那些資源組。之所以提供暫停狀態(tài),是為了允許執(zhí)行某些維護(hù)。大多數(shù)服務(wù)器群集組件會(huì)將聯(lián)機(jī)和暫停視為等價(jià)的狀態(tài)。
如果一個(gè)服務(wù)器要加入現(xiàn)有群集 , 則它必須運(yùn)行群集服務(wù)并且必須成功找到群集中的其它節(jié)點(diǎn)。在找到其它節(jié)點(diǎn)后,加入的服務(wù)器必須接受群集成員資格驗(yàn)證,并獲得群集配置數(shù)據(jù)庫的副本。
加入現(xiàn)有群集的過程開始于 Windows Server 2003 或 Windows 2000 Service Control Manager 在節(jié)點(diǎn)上啟動(dòng)群集服務(wù)之時(shí)。在啟動(dòng)過程中,群集服務(wù)會(huì)配置并裝入該節(jié)點(diǎn)的本地?cái)?shù)據(jù)設(shè)備。它并不會(huì)試圖將共用的群集數(shù)據(jù)設(shè)備作為節(jié)點(diǎn)聯(lián)機(jī),因?yàn)楝F(xiàn)有群集可能正在使用這些設(shè)備。
為了查找其它節(jié)點(diǎn) , 會(huì)啟動(dòng)一個(gè)發(fā)現(xiàn)過程。當(dāng)節(jié)點(diǎn)發(fā)現(xiàn)任何群集成員時(shí),它將執(zhí)行身份驗(yàn)證序列。第一個(gè)群集成員會(huì)對(duì)新加入者進(jìn)行身份驗(yàn)證,并且在新服務(wù)器得到成功驗(yàn)證后返回成功狀態(tài)。如果驗(yàn)證不成功(未能識(shí)別待加入節(jié)點(diǎn)的群集成員身份,或者它使用了無效的帳戶密碼),則加入群集的請(qǐng)求會(huì)被拒絕。
進(jìn)行成功驗(yàn)證后,首先聯(lián)機(jī)的群集節(jié)點(diǎn)會(huì)檢查加入節(jié)點(diǎn)上的配置數(shù)據(jù)庫副本。如果該副本已過時(shí),對(duì)加入服務(wù)器進(jìn)行驗(yàn)證的群集節(jié)點(diǎn)會(huì)為加入的服務(wù)器發(fā)送該數(shù)據(jù)庫的更新副本。剛加入群集的節(jié)點(diǎn)在收到復(fù)制的數(shù)據(jù)庫后,可以用它查找共享資源并根據(jù)需要將它們聯(lián)機(jī)。
當(dāng)節(jié)點(diǎn)關(guān)閉或群集服務(wù)被停止時(shí),節(jié)點(diǎn)可能脫離群集。但當(dāng)節(jié)點(diǎn)不執(zhí)行群集操作(比如不向群集配置數(shù)據(jù)庫提交更新)時(shí),節(jié)點(diǎn)也可能被迫脫離(被逐出)群集。
如果節(jié)點(diǎn)根據(jù)預(yù)先的計(jì)劃脫離群集 , 它會(huì)向其它所有節(jié)點(diǎn)成員發(fā)送 ClusterExit 消息,通知它們它將脫離群集。該節(jié)點(diǎn)不等待任何響應(yīng)就會(huì)立即進(jìn)行關(guān)閉資源和所有群集連接的操作。由于其余節(jié)點(diǎn)收到了退出消息,因此它們不會(huì)執(zhí)行在節(jié)點(diǎn)意外失效或網(wǎng)絡(luò)通訊停止時(shí)發(fā)生的重新分組過程以重新確立群集成員身份。