1. 程式人生 > >MSCS2003跨群集遷移至WSFC2008R2

MSCS2003跨群集遷移至WSFC2008R2

mscs wsfc 跨群集遷移 群集遷移 群集資源映射

從這篇開始,老王將為大家帶來關於跨群集遷移的幾篇文章,之前在國內很少看到有人提到關於跨群集遷移的一些東西,其實微軟的群集是支持跨群集遷移的,那麽跨群集遷移究竟是怎麽回事,遷移的到底是那些內容呢,我們這就慢慢來看


在2008時代開始,當我們右鍵點擊群集名稱,更多操作,可以看到遷移服務和應用程序,點擊之後會彈出這樣一個遷移群集向導,實質上這是個跨群集遷移向導,旨在幫助我們從2003群集或2008群集,遷移至2008R2群集。

技術分享

那麽遷移向導,遷移的是什麽呢,我們談跨群集遷移究竟遷移的是什麽,在2008R2時代中,針對於跨群集遷移,主要指的是遷移低版本群集應用程序,和應用群集配置,舉個例子,例如當前有個文件服務器群集在2003群集運行,對外名稱叫Fileserver,我們遷移的是文件服務器這個群集組,不僅僅可以讓文件服務器在2003群集內部節點間遷移,還可以將文件服務器群集組直接遷移到2008R2的群集上,遷移完成之後,還是同樣的對外訪問名稱,但應該承載文件服務器群集的角色是2008R2節點。


這裏的關鍵是當我們運行跨群集遷移向導時,實際上遷移的是群集應用的配置,原來2003群集有這個角色,這個角色有一些配置,我們做的只是讓2008R2群集上面也有這個角色,同時保留相關配置,但是文件服務器的內容,跨群集遷移向導不會去幫我們拷貝文件服務器內容,文件服務器內容需要我們事先自行拷貝完成,群集遷移向導只負責幫我們跨群集遷移群集角色和群集角色配置,幫助我們完成角色到磁盤的映射,僅此而已。


有朋友可能會說,那什麽情況下會用到這種跨群集遷移呢,老王認為有以下幾種場景


  1. 原舊群集上面承載的群集角色一直被使用,名稱不希望被改變,希望盡可能的減少操作和宕機時間,因此可以通過運行群集遷移向導,直接把群集角色遷移,還保留原來的訪問名稱

  2. 針對於群集角色舊群集上面有很多,而且每個角色都做了很多個性化的設置,不想要重新搭建,重新設置,可以選擇遷移的方式,直接遷移群集角色至新群集。


跨群集遷移通常有以下兩種遷移形態


  1. 多對多跨群集遷移:直接2003一套群集不動,2008R2一套群集不動,就在兩個群集之間跨群集遷移角色

  2. 雙節點就地遷移:硬件只有兩臺服務器,當前是做了一套雙節點 2003群集,遷移時,需要把另外一個節點退出群集,重新做系統,再建立群集,實現兩邊分別1節點2003群集,1節點2008R2群集,在這樣兩個單節點群集間遷移角色


如果您使用的是這種雙節點就地遷移的場景,那麽有一點需要註意,在將其中一個節點重做成2008R2群集時,老王建議,首先針對於這個節點正常退出2003群集,之後最好重做成2008R2的時候采用重新幹凈安裝的方式,以防止有群集配置幹擾。


本文中老王將采取多對多跨群集遷移的方式,實際建立兩套多節點的群集起來。


除了遷移形態,還有區分兩種不同的遷移存儲形態

  1. 新群集使用舊存儲

  2. 新群集使用新存儲

關於這兩種遷移存儲形態老王都會進行講解,首先我們先來看新群集使用舊存儲的場景


場景介紹


2003Cluster

03node1:lan 10.0.0.7 255.0.0.0 dns 10.0.0.2 heart:18.0.0.101

03node2:lan 10.0.0.8 255.0.0.0 dns 10.0.0.2 heart:18.0.0.102

群集IP:10.0.0.60 群集名稱:fscluster 群集組名稱:fileserver

群集網絡:lan網絡 heart網絡


08dc&iscsi:lan:10.0.0.2 255.0.0.0 dns 127.0.0.1


2008Cluster

08node1:lan 10.0.0.3 255.0.0.0 dns 10.0.0.2 heart:18.0.0.1

08node2:lan 10.0.0.4 255.0.0.0 dns 10.0.0.2 heart:18.0.0.2

群集IP:10.0.0.99 群集名稱:devtest 群集網絡:lan網絡 heart網絡


實施上我們切割遷移節點如下


  1. 文件服務器群集在2003運行,對外訪問名稱fileserver,當前存儲分配給2003兩個節點

  2. 存儲分配給2008R2節點,2008R2可以看到存儲

  3. 2008R2建立群集,但是不添加存儲至群集

  4. 2008R2運行跨群集遷移向導

  5. Fileserver角色被遷移至2008R2 但不會聯機

  6. 脫機2003上面FileServer資源組

  7. 聯機2008R2上面FileServer文件服務器角色

  8. Fileserver繼續對外提供服務,但是由2008R2服務器提供


打開2003群集可以看到,當前運作一個FileServer的群集組,提供doc,txt,software三個共享,有兩個磁盤,data1,data2,所有共享都承載於data1磁盤上。

技術分享

技術分享

訪問\\Fileserver群集網絡名稱可以看到下面三個共享

技術分享

分配存儲,讓2008R2群集節點也可以看見

技術分享

打開2008R2磁盤管理器重新掃描可以看到分配給它的兩塊磁盤

技術分享

註意,這裏有一個關鍵的點在於,存儲一定不要急於分配給新的群集聯機上線,這個時候,一定要確保,雖然存儲對新群集節點可見,但是不可以被添加到新群集存儲中,否則會幹擾到舊群集的運作,就保持這樣,確保新群集能夠看到存儲即可,存儲在同一時間只應被添加到一個群集中聯機上線。


2008R2當前已經創建devtest群集,群集存儲和群集角色為空

技術分享

技術分享

在2008R2群集上執行跨群集遷移向導

技術分享

輸入同一個域內的,當前2008R2群集節點可以訪問到的2003群集名稱,勾選忽略已關閉群集節點驅動號驗證

技術分享

點擊下一步之後,遷移向導會根據規則,評估舊群集上面有哪些群集組是可以被遷移到2008R2群集

技術分享

點擊查看報告可以看到詳細的評估過程,遷移向導會根據不同的群集組給出報告,如果是一些特殊的群集組,遷移之後還需要執行一些手動配置的,也會給出說明。

技術分享

輸入2003群集服務賬戶及密碼(CNO前身),確認無誤後點擊下一步

技術分享

開始跨群集遷移,here we go!

技術分享

正在遷移群集組,跑進度條

技術分享

完成後會給出摘要,點擊查看報告可以看到詳細的報告

技術分享

點擊完成後,可以看到群集現在有了應用,有了磁盤,但都是脫機的狀態

技術分享

技術分享

接下來就是最重要的切換部分,首先我們需要將2003上面的群集組整體脫機,註意現在開始是宕機時間,需要規劃這部分執行的時間

技術分享

2008R2群集節點聯機上線存儲,可以看到磁盤管理器中,向導已經自動幫助我們完成了存儲在2008R2上面的聯機

技術分享

接下來我們需要在群集管理器裏面聯機群集磁盤,可以看到,聯機之後,已經自動映射為M和N盤,這就是遷移向導的神奇之處,可以把舊群集的配置也帶過來,自動幫助我們完成群集存儲的映射!

技術分享

接下來聯機文件服務器資源,可以看到依然保留是相同的網絡名稱和資源IP地址

技術分享

這時候可以看到2008R2群集上面已經可以看見2003上面的群集磁盤,以及群集磁盤裏面文件服務器的內容

技術分享


點擊訪問\\fileserver,發現還是可以訪問的,在2003我們用這個名稱,到2008R2還是這種訪問名稱,對於用戶來說並不需要記錄新的訪問路徑

技術分享

對於一些用戶來說,可能到這裏就已經夠了,我們通過跨群集遷移向導,交換了群集磁盤和群集角色到新群集上,角色和磁盤完成了映射,路徑名稱也可以訪問,只需要重新再把文件夾共享一下就可以了


這裏老王經過多次測試,得到的結果是如果我們按照默認的跨群集遷移向導遷移應用,遷移過來之後文件共享設置會消失,對於文件共享沒有很多權限設置的公司來說,也許重新共享一下是可以接受的,但是對於一些企業內部有很多權限設置的文件共享群集,可能這是不可以被接受的,經過老王的研究,目前我發現了一種可行的辦法


讓我們回到時間節點1,當前fileserver群集組還在2003上面運行著,訪問\\fileserver是2003節點提供服務

技術分享

這時候您可以額外插入一塊盤,進來作為一塊臨時備份磁盤,或者找一塊系統裏面的其它磁盤,使用手動拷貝,或命令拷貝的方式,把權限重要的,需要被遷移的文件夾拷貝到備份磁盤,這裏老王使用xcopy命令拷貝至C盤一份

技術分享

手動將拷貝過來的文件夾共享,權限保持默認,這裏大家註意,由於我們系統裏面當前已經有相同的共享名,運作在群集上,叫doc,所以我們這裏的備份共享就不能叫一樣的名字,我把每個備份共享的名字都加上了一個a

技術分享

這時候我們就需要利用到一個工具,permcopy,可以在2003 resource kit中獲得,工具主要用於拷貝共享權限設置

技術分享

我們使用permcopy命令,手動把群集上面的共享權限設置,拷貝一份映射到群集單個節點上面備份的共享權限設置,現在打開C盤上面創建好的備份共享,可以看到權限已經過來

技術分享

這時再次運行群集遷移向導,遷移Fileserver群集組,遷移完成後2008R2這邊默認脫機

技術分享

離線2003群集組

技術分享

上線2008R2群集角色

技術分享

訪問\\fileserver現在是2008R2群集提供服務

技術分享

但是可以看到,共享並沒有被遷移過來,我們手動把各個文件夾共享,權限先保持默認

技術分享

雖然這時2003群集組已經離線,沒辦法訪問,但是由於我們有過備份共享,因此我們還是可以利用節點IP的訪問,訪問到2003上面的備份共享 \\10.0.0.7

技術分享

再在2008R2上面利用permcopy把備份共享權限映射過來

技術分享

現在可以看到,不僅文件服務器的內容被從2003群集,跨群集遷移到了2008R2,文件權限也已經都遷移了過來

技術分享

當前文件服務器群集角色運作在node1 ,我們手動把角色移動至node2,發現共享權限也同樣被應用

技術分享

技術分享

由此大家可以看到,我們通過一個簡單向導的方式,就把文件服務器角色從2003群集挪到了2008R2群集,整個過程還算平滑,宕機時間僅發生在資源交換時,2003文件服務器群集組離線,2008R2文件服務器角色上線,因此老王認為對於已有的文件服務器群集遷移,可以通過跨群集遷移向導的方式做,幫助我們自動完成了群集角色到磁盤的映射,以及配置的遷移,可以防止人員手動操作出現失誤,對於不需要遷移共享權限的人來說,這種交換群集組的方式簡直太方便,交換過來之後手動共享一下即可。


如果涉及到共享配置權限也需要遷移,那麽可能需要額外再做一些操作,老王這裏經過測試發現這種備份共享的方式最為穩妥,但是實務上,企業裏面通常文件服務器很大,遷移時都做這種備份共享有時也不太現實,老王建議實務上如果您用老王這種方法,只針對於權限設置較為關鍵,繁多的共享文件夾做備份共享操作即可,其它普通共享,例如軟件,視頻之類,直接遷移過去手動共享,針對於關鍵權限,則遷移過去後再從備份共享permcopy映射。


接下來我們再來看另外一種遷移存儲形態,新群集使用新存儲,舊群集使用舊存儲的情況


遷移節點切割如下


  1. 文件服務器群集在2003運行,對外名稱fileserver,當前存儲分配給2003兩個節點

  2. 新建2008R2群集,存儲服務器再分配一套新存儲只對2008R2群集可見

  3. 2008R2聯機新存儲,分配盤符,添加至群集存儲

  4. 手動拷貝共享文件夾至新存儲

  5. 執行跨群集遷移向導,映射舊群集配置至新群集磁盤

  6. 脫機20003群集組

  7. 聯機上線2008R2群集組


打開ISCSI目標服務器,確認2003存儲僅分配給2003群集節點,2008存儲只分配給2008R2群集節點

技術分享

技術分享

在2008R2節點重新掃描磁盤後可以看到分配給它的盤

技術分享

初始化群集磁盤,隨機分配個盤符即可,反正也會被舊群集的配置改掉

技術分享

添加新磁盤至2008R2群集存儲

技術分享

上面曾經提到過跨群集遷移向導主要幫我們完成群集組的遷移映射至新群集,但是跨群集遷移向導在針對2003遷移至2008R2時,並不涉及具體的內容遷移,例如,如果我們要執行跨群集的文件服務器遷移,兩邊又都是用的各自存儲,這時候就需要我們實現自行手動將舊群集文件服務器內容復制至新群集存儲中

這裏老王依舊是使用命令進行復制

技術分享

復制完成後可以看到文件內容已經出現在新群集新存儲中

技術分享

運行跨群集遷移向導,指定2003群集名稱

技術分享

選擇要遷移的群集組

技術分享

輸入群集服務賬戶密碼

技術分享

重點來了,在兩個群集都用舊存儲的遷移形態中,我們是看不到這步的,當新群集有了新存儲後可以看到這一步,存儲映射,我們可以手動選擇,要把舊存儲的那塊群集磁盤配置,映射到新群集的那塊磁盤

技術分享

舊群集data1存儲映射至新群集磁盤1

技術分享

data2映射至群集磁盤2

技術分享

確認群集映射結果

技術分享

開始執行遷移資源組進度條

技術分享

前完成後會給出摘要報告,指示遷移結果,及後續應該執行的操作,如果希望進一步查看細致信息,可查看報告。

技術分享

脫機2003群集組,宕機時間開始

技術分享

聯機2008R2文件服務器角色

技術分享

可以看到,不論我們之前指定什麽盤符,執行跨群集遷移向導之後都會被覆蓋為舊群集的盤符

技術分享

訪問\\fileserver發現已經可以訪問,此時是由2008R2群集提供,但是共享設置並沒有被遷移過來,默認需要管理員手動重新共享

技術分享

查閱微軟相關文章,曾發現微軟特意指出,新群集中,新存儲的盤符和標簽,不可以和舊群集一致,老王實際測試沒發現這個問題,不論是我在新群集中磁盤用MN盤符,或是PV盤符,遷移結果都是一致的,會被舊群集的磁盤設置完全蓋過,遷移完成後可自行修改新群集上的群集磁盤盤符。


大家可以看出,文件服務器的跨群集遷移,不論是使用舊存儲,還是使用新存儲,結果都是一樣的,共享設置不會被遷移至新群集中,如果是對於權限不在乎的可以遷移過來之後重新共享一下就好了,但如果很多權限設置的就痛苦了


起初老王曾經想過一些比較簡單的辦法,既然共享權限的設置存在註冊表,那我直接舊群集節點導出註冊表,新群集上面導入不就好了,但是老王發現,在2008R2上面文件服務器群集中的共享,根本在註冊表裏面就看不到任何記錄,我嘗試把導出的共享設置註冊表分別導入2008R2所有節點,發現依然權限沒有過來,因此共享設置註冊表導入這條最簡單的路走不通了


還剩下WSMT和FSMT,但是考慮到需要額外安裝工具,因此也棄了,最終想到了備份共享這種方式,雖然有點麻煩,但是屢試不爽,一定可以保證權限順利過來


使用備份共享大概有這樣幾條路


  1. 沒遷移之前,2003端插入備份磁盤或備份到其它磁盤,手動拷貝文件過去,起一個別的共享名,然後permcopy共享權限過去,新群集遷移好了之後再permcopy共享權限回來,2003一直保留至共享權限遷移完成

  2. 沒遷移之前,直接2003端復制文件內容至2008R2節點本機磁盤,2008R2共享文件夾,共享名不能和真實的一樣,權限先默認,然後permcopy拷貝權限到本機磁盤,2008R2建立群集,執行遷移向導,完成磁盤映射,再拷貝內容至群集磁盤,這時2003群集已經可以徹底離線,2008R2群集完成映射後手動共享文件,權限默認,然後2008R2群集再用permcopy把本機磁盤備份共享權限 copy至正式群集磁盤中


兩者區別在於,2003群集的下線時間,如果備份在2003一端,那麽可能遷移完成最終還需要從2003端拷貝一次權限,2003群集至少需要運作到這個時候,如果第二種,雖然要兩次permcopy,但是2003群集在完成群集遷移向導後就可以被下線,具體還是取決於您的資源情況和需求,老王個人覺得,2003留一會也沒什麽,至少一旦2008R2端配置出錯出失敗了,那我至少在2003端還有一套備份的文件共享,實務運作的時候,完全可以直接在2003節點上插入個備份磁盤來做這件事,即便完成了權限遷移後,但是我這個備份磁盤也一直保留著一個備份。


還有一種思路,不過這種思路是特定於在新群集新存儲對舊群集舊存儲這種場景


時間節點回到完成群集遷移向導後,當前群集角色在2008R2上面聯機上線,文件共享我們都是手動啟動,權限保持默認,並沒有遷移過來

技術分享

2003群集組當前已經被離線

技術分享

這時候,由於我們有兩套群集,兩套存儲,我們就可以這樣來玩,我們修改舊群集的IP和網絡名稱,然後重新將舊群集聯機上線!

技術分享技術分享

修改完成後重新聯機上線2003群集,哈哈,老家夥又活了,我們又可以臨時訪問到它了,但這時候用戶是不知道這個地址的,它們從始到終只知道\\fileserver這個路徑,這時它們應該訪問\\fileserver應該到2008R群集的節點上

技術分享

這時候有了這個臨時路徑,我們就可以做事情啦,permcopy搞起來!

技術分享

權限已經都過來了

技術分享

這時 2003老群集就可以光榮退休了,可以讓它保持現狀或者離線,觀察後輩2008R2的運作情況,一旦遷移後2008R2出現問題,老群集還可以改個名再上來。


老王為什麽說第三種思路,只適用於新群集新存儲,老群集老存儲這種場景呢,因為如果我們是新舊群集共用一個存儲,那麽勢必我們要找一個時間節點交換存儲,一旦存儲被交換到了新群集,這時候舊群集是沒辦法再聯機的,因為共享在磁盤裏,磁盤已經被新群集交換了,所以說在新群集新存儲,老群集老存儲的場景裏老王說的第三種思路才有意義。


以上,為群集遷移系列的開篇,希望能為大家開個腦洞,帶個好頭,能夠讓更多的朋友知道,原來群集還有這樣的跨群集遷移功能可以用,在2003遷移至2008R2群集時大家可以看出,跨群集遷移向導,做的只是把舊群集裏面的應用資源以及群集組相關的設置遷移至新群集中,但是對於文件服務器的內容,跨群集遷移是不管的,因此我也說跨群集遷移這個向導在2003到2008R2時是個輕向導,它只遷移交換角色和配置到新群集,具體角色的內容和數據還是要自行遷移,在本文中老王以典型的文件服務器遷移為例,並用了一些比較老實的方法遷移了權限,我的思路可能一時有限,應該也會有更多好的辦法,這裏老王只是拋磚引玉,大家感興趣可以自行去嘗試遷移一些角色進行研究,後續老王還將繼續花幾篇文章講解群集遷移系列直到WSFC2016。

本文出自 “老王的微軟技術研究樂園” 博客,請務必保留此出處http://wzde2012.blog.51cto.com/6474289/1959545

MSCS2003跨群集遷移至WSFC2008R2