WSFC2016 工做組部署模型

 今天老王來和你們聊聊WSFC 2016裏面的工做組部署模型,正如老王剛開始在WSFC 2016系列開篇所講,對於WSFC 2016 咱們會從維護管理,排錯優化,部署遷移幾個點分別講起,基本上咱們對於WSFC 2016維護管理的新功能已經講的差很少,優化和部署還有幾篇未完
sql


 在講到工做組部署模型以前呢,咱們首先來看看歷史問題,爲何要有工做組部署模型shell


 早起在2003時代,若是咱們要創建一個羣集,每一個羣集都須要使用一個CSA(Cluster Service Account),即一個域帳號,用於支持羣集服務啓動和羣集資源的運行服務器

這樣的模型運行了一段時間後,有的管理員開始抱怨,一旦不當心修改了這個帳號的密碼,或者應用上了一些帳號管理策略,羣集沒法啓動了,等等。網絡

 因而在2008時×××始,微軟改變了這種羣集帳戶模型,引入了CNO和VCO模型架構


  CNO   Cluster Name Object負載均衡


  1.做爲羣集訪問標識的一部分,管理員或應用能夠鏈接到CNO訪問羣集ide

  2.負責管理VCO 虛擬機計算機對象的建立,密碼同步,VCO DNS記錄建立維護。優化

  3.CNO會被寫入特定的SPN,應用程序會經過CNO來和羣集完成Kerberos驗證ui

  4.CNO會被建立和VCO之間的關聯關係,在羣集節點註冊表中能夠獲得查看加密


基本上當咱們建立羣集的時候,輸入的羣集名稱,羣集就會拿着使用咱們當前建立羣集的帳戶,聯繫到AD,在指定OU下生成CNO計算機對象,所以咱們建立羣集的帳戶須要能夠在OU上面建立計算機對象的權限,建立完成CNO後,還會拿着咱們的帳號去DNS裏面建立CNO的DNS記錄。計算機對象和DNS記錄合起來算做一個CAP,管理或應用都依賴於這個CAP去訪問羣集。


建立完成CNO以後,所謂VCO 虛擬計算機對象,便是指,咱們在羣集上面跑的羣集應用,一般狀況下大部分羣集應用都會要單獨的訪問名稱和IP,嚮導完成後,羣集就會拿着咱們輸入的訪問名稱,去AD裏面建立VCO,以及VCO的 DNS記錄,這裏VCO的計算機對象和DNS記錄,就是由CNO負責維護的了,CNO建立完成VCO後會在VCO ACL裏面寫入CNO的權限。


基本上你們能夠看到,在2008時代以後,羣集和AD域的關係變的愈來愈緊密,若是你要部署Windows Cluster,那麼就必定要有一個AD,那對於不少企業來講可能就面臨一些問題


  1. 我企業裏面只有幾個SQL DBA,咱們須要SQL羣集,可是又不懂AD,部署羣集須要AD,AD出現問題,SQL DBA沒辦法解決AD層面的問題

  2. 帶來額外的管理成本

  3. 一旦AD域服務器進行維護,羣集將沒法啓動


上面咱們說到羣集會在AD中建立CNO,VCO計算機對象,它們和其它計算機對象也是同樣的,也須要進行密碼同步,啓動時也須要聯繫到AD進行驗證,在2012以前,假設這時AD服務器正在維護重啓,這時候若是羣集正在進行故障轉移,手動切換,或冷啓動,羣集須要聯機上線時,你會發現羣集網絡名稱資源時沒辦法鏈接的,由於聯繫不到AD,CNO和VCO沒法進行驗證,所以羣集會關閉,只有等AD從新啓動時,羣集才能啓動,這樣就致使了額外的停機時間


其關鍵仍是羣集與AD太過於緊密了,每次聯機都須要和AD進行驗證,並且Kerbros驗證也須要通過AD


因此有的企業若是沒有AD域環境的需求,可能就在想能不能不用AD域,或者減輕羣集對於AD域的依賴


微軟在WSFC 2012時代更新了這方面的技術,主要有兩個


  1. 無Active Directory集羣啓動

在一些虛擬化場景下,可能域控制器也進行了虛擬化,就在羣集中,那麼就極可能會陷入一個循環問題,羣集啓動,可是虛擬機在羣集裏面,而域控虛擬機沒啓動羣集又始終啓不來,WSFC 2012微軟在虛擬化域控制器的場景下,能夠支持域控制器沒啓動下,先讓羣集節點啓動。


Tip:雖然微軟宣稱有了這項技術,但仍是建議你們額外部署一臺域控在羣集外,或始終保留一臺物理機域控


  2.無Active Directory依賴羣集

2012開始支持無AD依賴羣集,即不須要建立CNO與VCO對象的羣集,羣集管理員再也不須要過多關心AD,也不須要擔憂CNO VCO對象被刪除,致使羣集沒法使用的狀況,在2012時代,此技術仍須要羣集節點加入到域,但建立羣集的時候不須要聯繫AD管理員分配AD寫入權限,羣集管理員徹底就能夠自行建立羣集


這種所謂的無AD依賴羣集,看起來很好,結合無AD羣集啓動技術,能夠把對於AD的依賴降到最低,可是隨之也有它的弊端,No Computer Object No Kerberos,您不能對無AD依賴羣集進行Kerberos的驗證,雖然在羣集內通訊可使用Kerberos,可是從外面訪問羣集名稱要作驗證,只有經過NTLM


如下爲羣集負載對於無AD依賴環境的支持狀況


集羣工做負載 支持/不支持 更多信息
SQL Server 支持 咱們建議您使用SQL Server身份驗證進行Active  Directory獨立的羣集部署。
File server 支持,但不推薦 Kerberos身份驗證是服務器消息塊(SMB)流量的首選身份驗證協議。
Hyper-V 支持,但不推薦 支持快速遷移,不支持實時遷移,由於它具備對Kerberos身份驗證的依賴。
Message Queuing (also known as MSMQ) 不支持 消息隊列存儲屬性在AD DS

除上述資源外:Bitlocker羣集磁盤加密,自動更新的CAU也不被支持


基本上最適合的負載就是SQL Server了,SQL DBA如今能夠部署一個SQL羣集或SQL Always on,而後使用SQL身份驗證,AD服務器重啓維護短期也不會影響到SQL羣集的正常運行。


2012時代建立一個無AD依賴羣集步驟以下


#建立無AD依賴羣集 

New-Cluster SQLCluster -Node sql01,sql02 -StaticAddress 10.0.0.80 -NoStorage -AdministrativeAccessPoint Dns


#查看羣集管理點模式

(Get-Cluster).AdministrativeAccessPoint


命令中的AdministrativeAccessPoint即羣集的管理點模式,默認狀況下是由CNO計算機對象+DNS記錄共同構成,若是您不須要羣集依賴於AD,不須要CNO,那麼您單獨指定僅DNS做爲管理點便可


須要注意,WSFC 2012建立無AD依賴羣集,沒有GUI的方式,只有經過Powershell操做

一旦建立完成後羣集部署架構已定,沒法更改,除非摧毀重建羣集


建立完成無AD依賴羣集後,您須要爲羣集配置共享存儲,見證模型,在工做組羣集或多域羣集中,羣集見證僅支持多數節點,磁盤見證,雲見證


這是2012時代的模型,好像國內對於這項功能關注的朋友並很少,事實上老王以爲一些SQL DBA卻是應該瞭解下,至少能夠減小你SQL羣集對於AD域的一部分依賴


也maybe是無AD依賴環境仍是存在一些問題,例如仍然仍是須要AD,而AD又一般和DNS在一臺,若是這臺服務器維護,一段時間事後羣集也可能出現問題。


到了WSFC 2016時代,微軟完全如你們所願,如今能夠在一個徹底工做組的環境下部署WSFC羣集,連域成員身份也不須要了,完全擺脫AD,直接使用工做組就能夠部署羣集,這對於企業沒有AD域環境,又想要部署羣集,或者想要部署羣集可是又不一點也想管理AD域的管理員來講就太方便了


可是和2012時代無AD依賴同樣,No Computer Object No Kerberos,支持的負載依然同樣,最適合的負載仍是SQL 羣集&AG 使用SQL身份驗證


實驗驗證WSFC 2016工做組模式羣集


環境介紹


DNS&iscsi

lan:10.0.0.2 255.0.0.0

iscsi:30.0.0.2 255.0.0.0


HV01

MGMET:10.0.0.9 255.0.0.0 DNS 10.0.0.2

ISCSI:30.0.0.9 255.0.0.0

CLUS:18.0.0.9 255.0.0.0


HV02

MGMET:10.0.0.10 255.0.0.0 DNS 10.0.0.2

ISCSI:30.0.0.10 255.0.0.0

CLUS:18.0.0.10 255.0.0.0


工做組模式羣集先決條件


  1. 全部節點操做系統必須爲Windows Server 2016

  2. 全部節點必須使用已經認證的標識硬件

  3. 全部節點必須安裝故障轉移羣集功能

  4. 工做組模式羣集需在各節點使用相同密碼相同用戶,該用戶須要是本地管理組成員,若是是非administrator用戶還需額外修改註冊表鍵值

  5. 對於工做組模式羣集,要求每一個節點須要有主DNS後綴


操做流程

  • 在各節點建立相同密碼本地用戶

wKiom1nKIWyQOsEXAAAEKoawodk177.png

  • 添加用戶進入各節點本地管理員組

wKiom1nKIaPwaQNYAAAGihpNgAg027.png

  • 設置用戶密碼,並勾選密碼永不過時

wKiom1nKIeXhE17DAAAfvXYZ_jg704.png

  • 修改註冊表鍵值

因爲咱們沒有使用默認的administrator用戶,因此咱們須要修改各節點註冊表鍵值

進入註冊表以下位置HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

新增DWORD鍵值LocalAccountTokenFilterPolicy,設定值爲1

wKiom1nKI3_RmAFcAABNZtqs91s104.png

  • 爲各節點新增DNS主後綴,修改完成後需重啓

wKiom1nKJFySQZWFAAA32NNlVnA884.png

  • 先決條件都準備完成後,咱們能夠經過GUI或Powershell建立工做組羣集,Powershell命令和2012無AD依賴羣集相同


這裏咱們選擇經過GUI界面進行建立,打開故障轉移管理器,建立羣集,添加節點名稱,正常狀況下輸入後應該能夠看到帶DNS後綴的節點

wKiom1nKOJjRN7FLAAAq35C1q3A974.png

羣集驗證,這裏咱們暫時選擇否

wKioL1nKPKeh3IeoAAA_QWBHymQ787.png

輸入羣集名稱,這裏若是咱們部署的是傳統的AD域模型,會拿着咱們這個名稱去建立CNO和DNS管理點,可是這裏因爲咱們是工做組模型,所以只會建立DNS管理點

wKioL1nKPKeB8n02AAAwvqEKm0w857.png

點擊下一步確認,能夠看到,羣集建立嚮導識別出咱們當前是工做組羣集,自動幫咱們確認爲僅DNS註冊

wKiom1nKPOXiMFfbAAA7i1hprLU268.png

建立完成後能夠看到,羣集當前正常工做,且自動幫咱們選擇大於512MB的最小磁盤做爲見證,WSFC 2016 不管是工做組羣集或是多域羣集,都不支持文件共享見證。

wKiom1nKPOWjjH7gAACO***5tuE132.png

這時若是執行羣集驗證嚮導,能夠看到關於AD配置的警告,警告指出咱們當前是工做組模式部署,須要爲全部節點更新相同的補丁,確保DNS名稱被複制到羣集節點的權威DNS服務器

Tip:別忘記,生產環境下執行羣集驗證,若是勾選存儲驗證,會致使應用脫機聯機

wKioL1nKPKfwdw1kAABFz-dWlow665.png

工做組羣集建立完成後,下面咱們能夠開始作基於羣集的應用部署,按照微軟的建議,依然是使用SQL身份驗證的SQL羣集&AG爲最佳場景,但老王認爲不須要Kerberos驗證,又不須要寫入AD域對象的應用,也嘗試工做組部署模型。


WSFC 2016新功能大部分也均可以用於工做組模式羣集 ,例如


故障域站點感知

站點運行情況檢測

Cloud Winess

Cluster Log 優化

簡單的SMB多通道

羣集VM負載均衡 ( No LiveMigration  Only QuickMigration )

VM彈性與存儲容錯 ( No LiveMigration  Only QuickMigration )

相關文章
相關標籤/搜索