標籤:
轉載:http://dufei.blog.51cto.com/382644/902026
今天有客戶問起Windows 群集的相關內容,畢竟Windows Server2008所支援的群集技術和Windows Server2003還是有點不同的,就收集了以下知識供參考。以下內容均來自互連網。
Windows Server 2008提供兩種群集技術:容錯移轉叢集和網路負責平衡群集。容錯移轉叢集主要提供高可用性;網路Server Load Balancer群集主要提供延展性,在實現延展性的同時,提高基於WEB服務的可用性。有的資料上說還有一種支援高效能運算的組件Server Load Balancer群集。
在應用中到底是選擇容錯移轉叢集還是網路Server Load Balancer群集,主要取決於所啟動並執行應用程式是否具有長期啟動並執行記憶體中狀態:容錯移轉叢集是針對具有長期運行在記憶體中的狀態或具有大型的、頻繁更新的資料狀態的應用程式而設計。這些應用程式稱為狀態應用程式,並且它們包括資料庫應用程式和訊息應用程式。容錯移轉叢集的典型使用包括檔案伺服器、列印伺服器、資料庫伺服器和Message Service器。網路Server Load Balancer適用於沒有長期運行在記憶體中的狀態的應用程式。這些應用程式為無狀態應用程式。無狀態應用程式將每個用戶端請求視為獨立的操作,因此它可以獨立地對每個請求進行Server Load Balancer。無狀態應用程式通常具有唯讀資料或不常更改的資料。前端Web伺服器、FTP伺服器以及Proxy 伺服器通常使用網路Server Load Balancer。NLB還可以支援其他基於TCP或UDP的服務和應用程式。我們今天主要介紹容錯移轉叢集的配置。容錯移轉叢集可以配置使用多種不同的配置。組成群集的伺服器可以是活躍狀態或不活躍狀態,而不同伺服器可以被配置為在活躍伺服器故障後立刻接管相應的資源。一般容錯移轉的過程只需要幾分鐘的時間,至於時間的長短主要取決於群集的配置和具體應用,當節點處於活躍狀態時,該節點上可以使用所有資源。當伺服器故障後,在這台伺服器上配置了容錯移轉叢集的資源群組就會被其他伺服器所接管。當故障伺服器重新上線後,叢集服務可以配置為允許讓原伺服器進行容錯回復,或者是讓當前伺服器繼續處理新的用戶端請求。
Windows Server 2008
支援三種基本類型的容錯移轉叢集: 單節點群集、單仲裁多節點群集、過半數節點群集。單節點群集:單節點群集並不能用來實現容錯移轉,一般用來實現更為簡單的共用資源和網路儲存管理。主要優勢是,在故障或停止回應時監控和自動重啟應用和依存的資源。單節點群集可用作檔案、列印或WEB共用,而這種群集主要考慮的是讓和戶更方便的訪問相應的資源,而不需要提供其他複雜的功能。這種實際應用的應該比較少。多節點群集:一般使用較多的是多節點群集:多節點群集模式包括“活躍、活躍”和“活躍、非活躍”方式。在“活躍、非活躍”方式中,有一台或多台伺服器是活躍的,可處理用戶端的請求,另外一些伺服器是閒置。在“活躍、活躍”方式中,所有的節點都是活躍的,都可以處理用戶端的請求,其中一個活躍節點發生故障,其他節點會接管此節點的工作,直到此節點恢複正常。在多節點的群集配置中會存在一台仲裁裝置,所有節點共用群集配置資訊資料都儲存在仲裁裝置的存放裝置上。過半數節點群集:還有一種容錯移轉叢集類型是過半數節點數,在此類型中,節點可以不需要串連到共用的存放裝置上,每個節點可以有自己的存放裝置。群集配置資料可以儲存在群集內的多個磁碟上,這樣每個節點就可以有自己的仲裁裝置。過半數節點群集配置通常用於分散在不同位置的服務呂上。最主要的是,這是因為每個節點可以有自己的存放裝置,以及群集配置資料的本機複本。
容錯移轉叢集資源:資源是群集實現容錯移轉的基礎,互相之間有有關係的或者是互相依賴的資源可以被看作是資源群組,所有位於同一個組中的資源也必須位於同一個節點上。如果其中某個服務故障了,則所有服務都有可能出錯。在將應用添加為高可用性資源之間,需要判斷該應用是否可以在群集環境內運行。而能夠在群集環境中運行,並且支援群集事件的能力叫群集感知。群集感知應用可以在容錯移轉叢集中註冊,以獲得狀態和通知資訊,例如:DFS、DHCP、exchange伺服器、檔案伺服器、internet儲存名稱伺服器、MSDTC、SQL伺服器等。不支援群集事件的應用叫做群集不感知,有些群集不感知應用程式也可以配置為高可用性資源,並實現容錯移轉。
硬體需求:硬體的配置應該被調節以能夠最大化實現總體輸送量,並為有高要求的應用和服務進行效能最佳化。不同伺服器具有不同的最佳化需求,例如處理靜態HTML頁面的Web伺服器可能需要更快的硬碟和更多的記憶體,以將頁面緩衝的記憶體中,但通常並不需要高速度的CPU。而典型的資料庫伺服器則可能需要高端CPU、快速的硬碟,以及更多的記憶體。管理員應該仔細對叢集節點中的每台伺服器進行最佳化。在進行最佳化時,能夠獲得最大收益的關鍵內容則是分頁檔案。有關分頁檔案的重要規則如下:為了防範過量,分頁檔案的大小應該是固定的,同時不應該位於共用的叢集存放區裝置上。分頁檔案的大小都應該根據硬體裝置製造商的建議設定。如果有多個本地硬碟,請考慮將分頁檔案放在獨立硬碟上以提升效能。同時還需要注意,同一群集中的伺服器必須運行同樣的硬體架構版本的Windows Servers 2008作業系統,例如應該都使用x64或Itanium版本。群集中的伺服器必須是同一個Active Directory域的成員,並且需要使用DNS進行名稱解析。
群集對象:叢集服務負責管理容錯移轉叢集的所有功能,這中間包括群集中要用到的物理以及邏輯單元和對象。群集對象包含屬性,可定義對象在群集內的行為。群集API中包含了通過叢集服務管理對象所需要的控制碼和管理功能,群集中的每個節點都需要運行叢集服務Lussvc.exe、叢集網路驅動clusnet.sys以及群集磁碟驅動clusdisk.sys的執行個體。叢集伺服器通過專用網路介面卡和其他節點傳輸活動訊號,也就是說每個節點網路驅動會定期在節點間發送UDP資料包來檢測網路及路由狀態,如果某個節點沒有響應,則說明出現問題,叢集網路驅動就會通知叢集服務,進行容錯移轉。每個節點的群集磁碟驅動主要用來負責維護共用磁碟的獨佔所有權。只有擁有實體磁碟資源的節點才可以訪問磁碟,所有其他節點都無法訪問磁碟資源。群集資料庫:群集正常工作中,傳輸的資訊除了活動訊號之外還需要傳遞管理資料,而這些資料基本儲存在群集資料庫中,這個資料庫中包含了群集的配置和資源的使用資訊,這些資訊稱為群集對象,叢集服務會定期維護這些資訊。
群集仲裁資源:仲裁資源主要用於負責維護恢複日誌,會將群集加的所有變動寫入到恢複日誌中,以確保群集的配置和狀態中以被恢複。仲裁資源一般在發生故障的時候發揮作用。群集完整功能取決於仲裁,配置群集的時候,叢集服務會自動為群集設定必要的仲裁設定,而仲裁設定決定了群集可以承受的故障的最大數量。如果在該數量外發生了額外的故障。群集就會停止工作。例如:如果有四個節點的群集,如果有兩個節點發生故障,達到了半數,則無法繼續運行,但如果是五個節點,有兩個發生故障,還可以容錯移轉,繼續工作。
群集介面和網路狀態:叢集節點間為了判斷對方是否發生故障,叢集服務會監控專用網路的適配器介面以及叢集網路的狀態。使用者可以使用Cluster netinterface或容錯移轉叢集管理工具查看網路介面的目前狀態。一般狀態如下:Up: 正常的工作狀態,可以和網路上的其他介面通訊。Unknown:目前無法判斷其狀態。Unavailable:介面被禁止用於群集,或串連節點的網路介面故障。Unreachable:節點無法通過該介面通訊。Failed: 關聯給該介面的節點是活躍的,但無法通過該介面通訊。 使用者還可以使用cluster network命令或工具查看網路的狀態。Up: 正常的工作狀態。Unknown:目前無法判斷其狀態。Unavailable: 網路被禁止用於群集,或串連到該網路的所有節點都不活躍。Partitioned: 網路功能故障,有些活躍群集無法通過網路通訊。Down:網路出現故障,所有活躍群集都無法通過網路通訊。 如果某個網路介面為failed狀態,叢集服務會對使用該網路介面的所有IP地址資源發起容錯移轉。但如果網路介面的狀態是unreachable,叢集服務則不會進行轉移,如果介面狀態是unavailable,則叢集服務會認為節點down了。通常叢集網路都應該是Up狀態,在這種狀態下,叢集網路的工作完全正常,所有活躍群集都可以通訊。如果網路變為Partitioned狀態,這意味著一個或多個節點的通訊有問題,或者最近故障了。Down狀態代表了當前網路已經故障,無法正常工作。在Down狀態下,群集之間無法通過網路通訊。
Windows 2008 容錯移轉叢集介紹