天天看點

server 2016部署故障轉移群集cluster

博文目錄

一、什麼是故障轉移群集?

二、故障轉移群集的要求

三、故障檢測

四、部署故障轉移群集cluster

一、什麼是故障轉移群集?

1、故障轉移群集概述

随着Internet應用的深入,許多公司越來越依賴線上服務創造價值。這些重要的線上服務一般具有很嚴格的應用要求,單台伺服器是無法滿足如此苛刻的要求的,隻能使用群集技術來實作。

Windows作業系統提供了一種全新的技術解決方案,它內建在Windows server作業系統中,被稱為故障轉移群集。故障轉移群集主要是指一組獨立的計算機,群集伺服器(節點)通過網絡和軟體連接配接可協同工作,以增強應用程式和服務的可用性。故障轉移群集包含一個連接配接到所有節點的儲存設備,即共享儲存設備。共享儲存設備用于存儲群集的公用資料和仲裁資料。雙節點故障轉移群集如下圖:

server 2016部署故障轉移群集cluster

為了保證共享儲存設備上資料的完整性,故障轉移群集内一次隻有一個節點擁有共享儲存設備的所有權。隻有當該節點故障或者人為轉移所有權時,才會由下一個節點擁有共享儲存設備的所有權。這就決定了故障轉移群集和網絡負載平衡群集在功能上的不同,即故障轉移群集内一般隻有一個節點為使用者提供服務(活躍狀态),其餘節點處于備份狀态。當主動節點因為故障當機時,會由下一個節點接替它繼續為使用者提供服務,而網絡負載平衡群集内的節點可以同時為使用者提供服務。

2、故障轉移群集的特點

  • 故障轉移群集可通過資源故障轉移而為應用程式提供高可用性的服務。它側重于保持用戶端對應用程式和系統服務的通路。
  • 故障轉移群集最多可以支援64個節點和8000個虛拟機。
  • 可以利用本地或Microsoft Azure雲見證作為仲裁。
  • 故障轉移群集需要使用共享儲存設備。

二、故障轉移群集的要求

故障轉移群集必須滿足硬體、軟體和網絡基礎機構的預設要求,并且需要一個具有适當域權限的管理賬戶。

1、硬體要求

  • 伺服器:建議使用一組包含相同或配置相似的計算機,并且要求與Windows server 2016相容。
  • 網絡擴充卡和電纜(用于網絡通信):與故障轉移群集解決方案中的其他元件一樣,網絡硬體也要求和Windows server 2016相容,如使用iSCSI,則必須将網絡配置專用于網絡通信或iSCSI,而不能同時用于兩者。
  • 用于存儲的裝置控制器或相應擴充卡。
  • 共享儲存設備:必須與Windows server 2016相容,并且至少應包含兩個獨立卷。一個卷将用于見證磁盤,另一個卷将包含群集角色所需的檔案。共享儲存設備若是本機磁盤,則不能設定為動态卷,隻能使用基本磁盤,并且建議使用NTFS檔案系統。

2、網絡基礎結構和賬戶要求

  • 網絡設定:建議使用相同的擴充卡,并且在擴充卡上使用相同的通信設定。另外,還要比較網絡擴充卡與它所連接配接的交換機之間的設定,以確定設定不發生沖突。
  • IP位址:如果群集的專用網絡沒有用路由到其他裝置,則盡量確定每個此類專用網絡都使用唯一的子網,不要為用于不同目的的網絡指定相同的網段。
  • DNS:群集中的伺服器必須使用DNS來進行名稱解析,可以使用DNS動态更新協定。
  • 域角色:建議群集中的所有伺服器處于相同的active directory域中。此處建議所有的群集伺服器都是成員伺服器,DC不要配置成群集節點。
  • 用于管理群集的賬戶:首次建立群集或向群集中添加伺服器時,必須使用對該群集中所有伺服器具有管理者權限的賬戶登入到域。

三、故障檢測

故障檢測和防範時故障轉移群集提供的關鍵優點。當群集中的節點或應用程式失敗時,故障轉移群集可以通過重新啟動失敗的應用程式或将故障系統的工作分散給幸存的群集節點來做出響應。故障轉移群集故障檢測和防範包括雙向故障轉移、應用程式故障轉移、并行恢複及自動故障恢複。

群集服務九二一檢測各個資源或節點的故障,并動态地将應用程式、資料和檔案資源轉移到群集中可用的正常伺服器上,然後重新啟動它們。是以,資料庫、檔案共享和應用程式等資源可以對使用者和用戶端應用程式保持高度可用性。

故障轉移群集主要是通過心跳線、仲裁檢測群集故障。

1、心跳線

群集的各個節點互相間會定期使用專用的群集網絡交換裝置發送消息(預設每隔5秒互相發送一次),因為隻要群集節點還在工作,就會不停地、周期性地發送資訊給群集内的其餘節點,所有這些消息被稱為心跳資訊,用于傳送心跳資訊的專用網絡被稱為心跳線。通過心跳通信,每個節點可以檢查其他節點及其應用程式的可用性。

如果某個備份節點發生了故障,則會在給定的時間内允許它以幾種方式中的任何一種證明它仍處于正常運作中,并且可以同其他正常的節點通信。如果它無法證明,則此時會将它移除群集。

如果活躍節點發生故障,在指定的周期内(預設為兩個周期,即10秒)備份節點沒有接收到心跳資訊,則将進行故障轉移,由備用節點接管群集,對外提供服務。

2、仲裁

故障轉移群集時否可以正常工作時由群內建員投票決定的,預設情況下,每個群集節點都可以投一票,另外,仲裁見證可以投額外的一票(仲裁見證可以是磁盤或檔案共享資源)。隻有投票超過半數,群集才能正常工作。

  • 多數節點(無見證),僅群集節點具有投票權。适合群集節點數為奇數的情況。
  • 帶見證的多數節點(磁盤或檔案共享),除群集節點具有投票權外,仲裁見證也有一票。适合群集節點數為偶數的情況。
  • 無多數(僅磁盤見證),沒有群集節點具有投票權,僅磁盤見證有一票。通常不建議使用此模型,容易發生單點故障。

四、部署故障轉移群集cluster

本案例以一個雙節點的故障轉移群集為例,明确區分開三個用途不同的網絡:VM2網卡傳輸心跳資訊、VM3連接配接存儲伺服器、VM4對外服務

1、案例環境描述:

四台Windows server 2016

一台Windows 7

一台server 2016部署域控制器(我是是事先部署好的域控制器)網卡我設定的VM4對外服務。

第二台部署群集節點1(cluster01),需要三塊網卡,VM2(private)用于傳輸心跳資訊,VM3(SAN)用于連接配接存儲伺服器,VM4(public)對外服務。加入域環境。

第三台部署群集節點2(cluster02),也需要三塊網卡,VM2(private)用于傳輸心跳資訊,VM3(SAN)用于連接配接存儲伺服器,VM4(public)對外服務。加入域環境。

第四台部署存儲服務(SAN),一塊網卡,VM3,要保證和cluster01、cluster02的VM3網絡互通。加入域環境。

Windows 7充當用戶端,一塊VM4網絡,保證和前四台網絡互通,加入域。

2、開始部署:

AD_DNS配置如下:

網卡調成對外服務的VM4網卡

server 2016部署故障轉移群集cluster

登入域

server 2016部署故障轉移群集cluster

修改IP位址、DNS及關閉防火牆

server 2016部署故障轉移群集cluster

建立一個組織機關,建立兩個使用者,一會後面用于驗證故障轉移群集

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

使用者建立完成

server 2016部署故障轉移群集cluster

cluster01配置如下:

添加三塊網卡

server 2016部署故障轉移群集cluster

先證明三塊網卡的名字,然後配置IP位址,private是傳輸心跳,SAN連接配接存儲服務,public對外服務

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

修改完成将其加入域

server 2016部署故障轉移群集cluster

加入成功,重新開機計算機

server 2016部署故障轉移群集cluster

本地管理者登入域

server 2016部署故障轉移群集cluster

Cluster02配置如下:

添加三塊網卡

server 2016部署故障轉移群集cluster

搞清楚三塊網卡開始配置IP位址

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

配置完成之後将其加入域,我就省略了幾步圖檔,不明白可以參照cluster01是怎麼加入域的

server 2016部署故障轉移群集cluster

本地管理者登入域

server 2016部署故障轉移群集cluster

SAN配置如下:

添加連接配接存儲的網卡,也就是VM3

server 2016部署故障轉移群集cluster

配置IP位址

server 2016部署故障轉移群集cluster

安裝存儲服務

server 2016部署故障轉移群集cluster

預設下一步

server 2016部署故障轉移群集cluster

确認無誤後開始安裝

server 2016部署故障轉移群集cluster

安裝完成

server 2016部署故障轉移群集cluster

配置存儲服務

server 2016部署故障轉移群集cluster

建立虛拟磁盤位置

server 2016部署故障轉移群集cluster

指定一個虛拟磁盤名字

server 2016部署故障轉移群集cluster

設定虛拟磁盤大小

server 2016部署故障轉移群集cluster

指定一個目标名稱

server 2016部署故障轉移群集cluster

指定通路伺服器,我用IP位址指定,指定完成後其他IP位址就通路不到,後面也就不需要開啟CHAP驗證了

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

前面也可以不指定IP位址,這一步開啟驗證也可以的,根據需求自行配置

server 2016部署故障轉移群集cluster

确認無誤開始建立

server 2016部署故障轉移群集cluster

建立完成

server 2016部署故障轉移群集cluster

緊接着建立第二塊虛拟硬碟

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

兩塊虛拟硬碟建立完成後,你會發現他倆是未連接配接的

server 2016部署故障轉移群集cluster

cluster01連接配接存儲伺服器:

接下來開始連接配接,Cluster01伺服器上打開Windows管理工具

server 2016部署故障轉移群集cluster

單擊是

server 2016部署故障轉移群集cluster

輸入存儲伺服器的IP位址連接配接即可

server 2016部署故障轉移群集cluster

打開cluster01的計算機管理器,此時會發現有兩塊脫機的硬碟,我們将他聯機初始化,然後建立簡單磁碟區,設定Q盤為心跳盤,S盤為資料庫盤

server 2016部署故障轉移群集cluster

建立簡單磁碟區

server 2016部署故障轉移群集cluster

建立Q盤

server 2016部署故障轉移群集cluster

預設下一步

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

第二塊硬碟建立S盤,作為資料庫盤,操作是一樣的我就不截圖了。

兩塊硬碟配置完成後打開此電腦會發現多了兩塊磁盤

server 2016部署故障轉移群集cluster

Cluster02連接配接存儲伺服器:

Cluster02連接配接存儲伺服器和cluster01操作步驟是一樣的,而且盤符必須是一緻的,按照cluster01配置就可以了

連接配接存儲伺服器成功後,打開磁盤管理會發現和cluster01的盤符不一緻,我們需要手動更改盤符

server 2016部署故障轉移群集cluster

第一塊硬碟更改盤符為Q盤

server 2016部署故障轉移群集cluster

更改第二塊硬碟盤符

server 2016部署故障轉移群集cluster

更改為S盤

server 2016部署故障轉移群集cluster

cluster01開始安裝檔案伺服器故障轉移群集:

添加檔案伺服器

server 2016部署故障轉移群集cluster

添加故障轉移群集

server 2016部署故障轉移群集cluster

确認無誤開始安裝

server 2016部署故障轉移群集cluster

安裝完成

server 2016部署故障轉移群集cluster

cluster02也是安裝此步驟安裝就可以了,安裝完成之後就什麼也不需要配置了,在cluster01上配置即可

cluster01先配置故障轉移群集,然後再配置檔案伺服器

server 2016部署故障轉移群集cluster

建立新群集

server 2016部署故障轉移群集cluster

輸入伺服器名稱dc3.benet.com然後添加(計算機名加域名)

server 2016部署故障轉移群集cluster

預設下一步

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

正常在工作環境的話還需要安裝驅動,我是模拟環境就不需要了,注意檢測有沒有報錯,警告是不影響的

server 2016部署故障轉移群集cluster

輸入群集名稱和群集IP位址

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

繼續添加第二個節點

server 2016部署故障轉移群集cluster

輸入第二個節點的計算機名加域名,我的是dc4.benet.com,基本和第一個節點配置一樣,相同步驟我就省略咯

server 2016部署故障轉移群集cluster

完成驗證配置

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

完成之後點選此電腦會發現共享磁盤在cluster01上,cluster01為活躍節點,而cluster02為備份節點,而且在AD伺服器上檢視DNS正向查詢區域benet.com下多了一台cluster主機,

server 2016部署故障轉移群集cluster

配置仲裁見證磁盤

server 2016部署故障轉移群集cluster

選擇仲裁見證

server 2016部署故障轉移群集cluster

配置為磁盤見證

server 2016部署故障轉移群集cluster

選擇S盤為見證存儲卷

server 2016部署故障轉移群集cluster

配置完成

server 2016部署故障轉移群集cluster

開始配置檔案伺服器

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

選擇檔案伺服器

server 2016部署故障轉移群集cluster

預設下一步

server 2016部署故障轉移群集cluster

建立一個用戶端通路的名字和公共IP位址

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

添加共享

server 2016部署故障轉移群集cluster

快速共享

server 2016部署故障轉移群集cluster

添加共享位置

server 2016部署故障轉移群集cluster

建立共享名稱

server 2016部署故障轉移群集cluster

預設下一步

server 2016部署故障轉移群集cluster

使用者添權重限,也就是在AD上建立的那兩個使用者

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

bob設定隻讀權限

server 2016部署故障轉移群集cluster

tom設定讀取和寫入權限

server 2016部署故障轉移群集cluster

共享添權重限

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

配置完成把everyone删除然後應用确定即可

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

用戶端配置如下:

server 2016部署故障轉移群集cluster

設定IP位址

server 2016部署故障轉移群集cluster

用戶端加入域

server 2016部署故障轉移群集cluster

本地管理者登入域

server 2016部署故障轉移群集cluster

将tom和bob添加到administrator組裡,禁用administrator使用者,切換bob登入驗證

server 2016部署故障轉移群集cluster
server 2016部署故障轉移群集cluster

Tom登入,

server 2016部署故障轉移群集cluster

通路共享檔案

server 2016部署故障轉移群集cluster

此時可以看出tom有讀取和寫入權限,可以下載下傳也可以上傳

server 2016部署故障轉移群集cluster

切換Bob登入

server 2016部署故障轉移群集cluster

通路共享檔案

server 2016部署故障轉移群集cluster

會發現bob隻能讀取而不能寫入

server 2016部署故障轉移群集cluster

模拟cluster01故障,活躍節點自動切換到cluster02伺服器上,驗證能保證使用者正常通路

server 2016部署故障轉移群集cluster

關機之後去cluster02上檢視此電腦會發現群集自動切換過來,cmd裡敲ipconfig也會發現兩個群集的IP位址自動切換過來,備份節點成為了活躍節點,切換時間隻需要5s

server 2016部署故障轉移群集cluster

不影響用戶端通路,而且也看不出來cluster出了故障

server 2016部署故障轉移群集cluster

—————— 本文至此結束,感謝閱讀 ——————