前面經過2003遷移到2008R2,2008R2遷移到2012R2,爲你們介紹了傳統羣集角色以及虛擬機角色如何進行跨羣集的遷移,在遷移過程當中你們能夠發現不管是2003到2008R2,或是2008R2到2012R2,咱們都須要搭建兩個羣集,不管是單節點也好,多節點也好,最終咱們是要羣集對羣集完成跨羣集遷移,經過羣集自帶的跨羣集遷移向導,咱們能夠經過不多的操做,完成應用的跨羣集遷移,實現只有老羣集離線,新羣集上線時的宕機時間。數據庫
在WSFC2016開始,推出了滾動升級的功能,改變了之前的遷移思惟,簡單來講,咱們如今能夠在一個羣集中就完成零宕機的遷移升級,不須要多個羣集作跨羣集遷移向導,咱們能夠直接把節點退出2012R2羣集,重裝成2016,再加入羣集,羣集如今實現了一種混合模式,能夠容許羣集中既有2012R2節點,也有2016節點,針對於虛擬機和SOFS資源,直接能夠在羣集內從2012R2節點遷移到2016節點上面,針對於虛擬機能夠採起實時遷移的方式移動,移動完成後再重作節點,加入羣集,最終節點都升級爲2016,能夠看到,這種方式很好,是一種顛覆性的思惟,如今咱們就在一個羣集中就能夠完成羣集的升級,並且連離線上線的宕機時間也不須要有,不過惋惜只支持Hyper-V和SOFS能夠經過這種滾動升級的方式升級,其它羣集角色仍須要經過跨羣集遷移向導。windows
本文老王將爲你們實做介紹Hyper-V滾動升級,並提出實務操做上須要注意的點網絡
滾動升級中,涉及到第一個新概念,即ClusterFunctionalLevel,簡單來講,能夠把它理解爲一種羣集的功能,默認2012R2羣集的FunctionalLevel是8,這有點相似於域裏面林級別,域級別的概念,級別越高,功能越多,低級別沒辦法用到高級別的功能,所以,滾動升級的第一個階段,全部節點都是2012R2,這時候羣集FunctionLevel爲8,享受8級別下全部羣集功能,第二階段當2016節點加入時,羣集處於混合模式,這時FunctionLevel仍然會是8,由於還有節點未升級到2016,因此羣集總體沒辦法徹底使用2016羣集的新功能,第三階段,全部羣集節點均已升級至2016,能夠手動升級羣集FunctionLevel爲9,徹底享受2016羣集的新功能。ide
Technet滾動升級操做流程圖測試
本次滾動升級環境以下優化
08dc&iscsispa
lan:10.0.0.2 255.0.0.0設計
iscsi:30.0.0.2 255.0.0.03d
12R2羣集orm
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
此次咱們將採用兩節點就地升級的方式
當前12R2羣集上面跑了三臺虛擬機
生產環境開始執行滾動升級以前,建議應針對於羣集數據庫和羣集應用進行備份,而後應檢查羣集當前是否正在運行羣集感知更新CAU角色,若是正在運行,滾動升級過程當中應該暫停該角色
使用 Get-CauRun命令查看當前羣集是否運行CAU,若是未運行會獲得以下警告,是正常的。
若是CAU正在運行,須要使用Stop-CauRun命令暫停它的運行
接下來咱們須要進行滾動升級,首先從HV02節點開始,使用維護模式,實時排水出HV02上面全部負載
排水結束,HV02當前被置爲暫停模式,全部虛擬機已經被遷移至HV01
確保節點已經排出乾淨角色後,點擊節點,選中暫停模式節點,點擊更多操做,選擇逐出節點,確保咱們乾淨的從羣集中剔除了該節點。
如今HV02已經被剔除羣集,咱們最好將它直接退出域
關機插入2016映像,不要採用升級安裝,而是直接採用乾淨安裝的方式
配置網卡,修改機器名,從新加入域,這裏老王還選擇相同的機器名,您也能夠從新規劃16節點的命名
16節點加入域後,安裝Hyper-V角色及故障轉移羣集功能
鏈接共享存儲,確保和12R2節點能夠看到一樣的存儲
配置Hyper-V虛擬交換機,確保和12R2節點一致,由於以後還要進行實時遷移
在16節點上面鏈接到羣集
添加節點至現有12R2羣集
當前羣集已經處於混合模式運做,能夠看到HV02節點系統爲2016,HV01節點系統爲2012R2
在16節點上面運行Get-Cluster | Select ClusterFunctionalLevel ,能夠看到當前爲8,即12R2羣集的級別
當前咱們已經來到了混合模式,在混合模式下運做羣集時須要注意如下內容
混合模式下老是使用16節點去管理操做羣集
混合模式不要運做太長時間,微軟建議混合模式最多可維持四個星期
不要在16節點上面調整存儲空間,不然故障轉移到12R2節點時可能不兼容
混合模式下可選擇回退,若是發現16節點不兼容現有應用,徹底能夠重作16節點回去12R2,可無宕機時間直接實時遷移。
截止到目前爲止還未出現宕機時間,如今16節點已經加入,咱們須要把虛擬機資源從12R2節點在線移動至16節點,這個操做須要在16節點上執行!
接下來按照相同步驟執行其它節點的升級操做
暫停節點,排出角色
逐出節點,退域
乾淨安裝2016系統
修改計算機名,加入域,配置網絡,安裝Hyper-V,故障轉移羣集功能
配置虛擬交換機
加入羣集
手動在線移動資源回來,或使用放置策略移動。
HV01也升級完成後,當前羣集中是兩臺2016OS節點
可是此時運行Get-Cluster | Select ClusterFunctionalLevel查看發現羣集級別依然是8
爲何呢,按照不少人的理解可能會覺得既然羣集節點如今都已經到2016了,羣集功能級別應該自動會升級到最新的阿,但其實並無,緣由是這個操做,羣集讓咱們本身來決定,更新羣集功能級別很簡單,可是一旦更新了以後,意味着羣集內節點只能有2016,以後再有2012R2節點時沒辦法再加入到羣集的,升級羣集功能級別,意味着完全切割滾動升級過程,意味着羣集全部節點都已經升級到2016OS,您確信您的應用均可以很好的在16OS上面工做後,手動升級羣集功能級別後,便可享受到完整的2016羣集功能,升級羣集功能級別是沒有後悔藥能夠吃的,因此作這個決定必定要慎重,下一條命令很簡單,可是下完以後羣集就完全切割爲2016級別,沒法回退,2012R2節點再也沒法加入。
#升級羣集功能級別
Update-ClusterFunctionalLevel
能夠看到已經升級爲2016羣集功能級別,如今已經能夠徹底使用2016羣集的新功能
若是以前有停用掉羣集CAU功能,這時候能夠再從新啓動起來了
這裏咱們回過頭來思考一下,爲何能夠作到一個集羣內的滾動升級,關鍵革新的技術有兩個
1.16節點能夠加入到現有12R2羣集
2.虛擬機能夠在線從12R2節點移動至16節點
第一點,老王認爲核心的技術是混合模式羣集,微軟在16羣集上面加入了向下兼容的機制,當咱們試圖把16節點加入到12R2羣集時,16節點檢測到,這個羣集的羣集功能級別是8,符合個人最低要求,我能夠加入進去,在混合模式狀態下,幫助它們逐步完成滾動升級,因而16節點能夠加入12R2羣集,這在之前跨大版本是不可能加入到羣集的,所以老王認爲滾動升級第一個要點即實現了混合模式,有這個前提才能夠繼續日後作。
第二點,雖然咱們實現了混合模式,16節點能夠加入到12R2羣集,這時羣集層面的事情,但咱們完成滾動升級的關鍵是,虛擬機是能夠直接從2012R2節點實時遷移至2016節點的,這就是Hyper-V層面的功能了,也就是說應用,要完成滾動升級,不光羣集層面要支持混合模式,並且應用也要能夠向下兼容,才能完成滾動升級,Hyper-V 2016設計爲能夠兼容2012R2,2012R2Hype-V不管是經過實時遷移,或者虛擬機導入導出的方式,均可以移動虛擬機至2016上面運行,由此你們能夠看出,要完成滾動升級,還須要羣集應用的配合,目前16只能向下兼容Hyper-V和SOFS角色,maybe往後會容許更多應用滾動升級
Hyper-V 2016裏面咱們能夠手動控制虛擬機的配置級別,默認狀況下,若是在以前的版本,虛擬機導入導出到更新的OS,或虛擬機就地升級,虛擬機的配置文件會隨之自動更新至新版本,在2016這發生了改變,當咱們從2012R2移動過來的虛擬機,或2012R2導入進來的虛擬機,默認狀況下,並不會自動升級其虛擬機配置文件版本,便是說,雖然虛擬機在2016上面運行,可是虛擬機的配置級別仍是2012R2的
這樣有一個好處,便是說,咱們又多了一個後悔藥能夠吃,默認狀況下咱們當前完成了滾動升級,羣集功能級別已經升級至全新2016,2012R2節點不能夠加入羣集了,可是不要緊,只要虛擬機配置級別沒有升級,咱們仍是能夠從16羣集中,把未升級虛擬機配置級別的虛擬機再實時遷移回單機的Hyper-v2012R2上,這樣一旦16羣集上面虛擬機跑的不舒服,或者16羣集出現問題,咱們能夠丟棄掉羣集,再把虛擬機遷移回12R2單機節點上面運行。
若是咱們選擇升級虛擬機配置級別,那麼首先你須要關機虛擬機,關機以後才能升級它的配置級別,升級以後,虛擬機才能夠利用到Hyper-V 2016的完整功能,也會有新的配置文件格式,可是,一旦虛擬機配置被升級到16最新,你就再沒有後悔藥可吃,虛擬機配置升上去以後,不再能遷回到12R2,這裏一些公司可能虛擬機跑了一些關鍵應用,遷移新環境須要進行測試,老王建議,升級虛擬機配置這個步驟能夠不着急,羣集功能升級到最新後,能夠觀察個3-4周,確保虛擬機在16上面一切能夠正常跑,又以爲16Hyper-v上面有本身須要的功能,這時候您能夠選擇在一個合適的時間點,關機升級虛擬機配置。
首先要關閉虛擬機
#升級虛擬機配置級別
Update-VMVersion -VMName
#檢查節點虛擬機配置級別
Get-VM * | Format-Table Name, Version
#升級完成全部虛擬機
#開機全部虛擬機
能夠看到,虛擬機的配置文件已經變成了VMCX VMRS格式,而非12R2時的xml
關於16 Hyper-V新功能介紹以下,若是升級至16則能夠得到裏面所說所有功能,感興趣的朋友能夠看下是否有須要的值得升級上去的功能
滾動升級探險祕籍
不支持使用share vhdx的Guest羣集使用滾動升級
SCVMM 2016能夠和WSFC滾動升級功能配合,在VMM console觸發執行滾動升級操做
滾動升級支持多臺同時進行,例如你能夠多我的一塊兒重裝羣集節點,但只要規劃好有足夠的可用節點
16節點必定執行乾淨安裝,不要執行升級安裝!
混合模式下always使用16節點管理操做羣集!
至此WSFC遷移篇結束,WSFC2016新功能介紹篇開始,老王計劃從三個角度部署遷移,維護管理,排錯優化分別講起,但願不管是對於滾動升級不瞭解,或瞭解的朋友,看過老王這篇文章後都能帶來新的思考和收穫。