Windows Azure - 在Azure上建立SQL Server AlwaysOn需要的容錯移轉叢集
會出現這個主題,主要是因為最近在使用SQL Server AlwaysOn,而AlwaysOn需要架設在Windows Server Failover Clustering Cluster之上,如下圖;而又因為目前的環境全部都在Azure下,所以這篇主要是從Azure下的角度去建立,但基本上,和在Local環境下並無甚麼不同,另外,如果有興趣的朋友,也可以考慮使用Azure Virtual Network來建立混和雲的架構,而基於著個因緣,小弟就只能動手開始架設,並且做個紀錄。
P.S 這篇的建置文,主要是為了符合SQL Server AlwaysOn的架構,如果想真的學習容錯移轉叢集,請參考TechNet。
在開始前,需要提醒大家,如果要在Azure上架設WSFC,要先建立Azure Virtual Netowrk,而且也必須要有一台AD Server,建議是將此AD Server也放在Azure,如果要放在Local,則就必須利用Virtual Network的Site-To-Site或是Point-To-Site來進行VPN的連線;另外在Azure的VM,如果有設定Virtual Network,它會自動跳號,而每個IP會對應到前端的LB,所以Private IP是不可以改的!!(改了話,遠端就登不進去了- -+),所以請特別注意。( 總之,都不是件輕鬆的事情啊- -… )
如果是要在Local端建立,就輕鬆許多,只要有AD,然後有兩台Windows Server,就可以完成。
那接下來就是開始設定,這台的環境,目前還沒加入AD,後面會提到;雖然還沒加入AD,但還是可以先安裝,另外,因為叢集需要兩台以上,所以兩台都要記得安裝;當然,如果想先加入AD,也是可以,但要注意,在Azure上不可以改Private IP!! ( Local就沒差了~~ )
基本上就是從新增角色及功能精靈開始。
基本上沒有特殊的架構下,通常都直接選擇目前這台Server…(如果有特殊架構的人,我想大概也不會看這段安裝吧QQ )
這裡勾選應用程式伺服器。
然後功能的地方,選擇容錯移轉叢集。
這裡沒啥特別的,就按下一步吧。
角色服務這邊把分散式交易底下的那三個全部勾選。
關於加密憑證的部分,就先不用吧,未來有機會小弟再補上。
確定無誤就按下安裝吧,然後就祈禱人品ok~。
完成之後,就可以從工具那邊選到容錯移轉叢集管理員。
是的,就如前面所說,要使用容錯移轉叢集,必須要有AD,而且要把此電腦加入到AD之下,而且要用AD的帳號登入後,才可以開啟此管理員。
所以我們先來加入AD吧,首先我們要先設定網路IP,如下圖,在Azure下,請自動取得IP位置;而DNS伺服器的位址請使用AD那台IP( 是的,小弟AD那台IP是10.0.2.4 )。
接下來就是加入網域,這應該就不用教了吧~@@~
當加入網域的時候,會跳出要我們驗證,而這邊要注意一下,如果在Local,我們網域驗證這邊會使用STUDY4\Administrator的方式做登入,但在Azure上,如果你當初開啟的VM,設定的名稱為sky,那你安裝完AD後,sky這個人也會被加入到網域Admin的群組,所以,我們可以用STUDY4\sky來認證。( 在Azure下,STUDY4\Administrator理論上會登不進去,因為我們在創建VM的時候,根本沒設定密碼阿XDDD )
p.s 兩台都要加入網域喔….
加入網域後,我們可以先驗證設定。
就如遊戲一樣,都會有個開頭畫面。
接下來,我們要選擇準備要加入的Server,就如我所說的,這次是為了SQL Server AlwaysOn來的,所以我已經先準備好了兩台SQL Server;我們可以選擇瀏覽來進行選擇。
接下來,我們就執行所有測試!!
一樣,一個確認畫面。
然後經過一段時間的測試後,就會跳出警告…Orz…不過還好,畢竟我們是要用於SQL Server AlwaysOn AG層級的東西,所以她這邊的警告是可以忽略的。
( 這邊主要會有兩個大項警告,一個是沒有設定Share Storage,不過SQL Server AlwaysOn AG原本就不用Share Storage;另外一個是警告我們只有單張網卡,所以我們也可以忽略 )
確認無誤後,我們就可以開始建立叢集。
這邊可以選擇一個漂亮的叢集名稱。
接下來就是確認,看看有無錯誤。
到這邊就已經完成了,當然還有一些警告,但這些警告可以忽略。
完成之後,我們可以從 AD那台的Active Directory使用者和電腦這邊,看到剛剛我們建立的叢集已經完成。
另外,我們也可以從容錯移轉叢集管理員這邊,看到已經建立完成;另外,注意一下,如果下面這邊顯示失敗,又是在Azure的環境下,那有一種可能是把叢集網路設定成DHCP,那我們可以從左邊的網路、叢集網路1這邊,進去後,給他一個靜態的IP;然後再啟動,應該就可以完成了。
到這邊,符合SQL Server AlwaysOn的叢集就完成了。
後記
這次多虧了好友Cary的Blog的支援,如果有興趣想詳細了解的朋友們,也可以參考他那篇文章,內容有詳細的講到Share Storage等等的資訊。
參考資料
- http://technet.microsoft.com/zh-tw/library/hh270278.aspx
- http://sqlbuzz.wordpress.com/2012/09/09/setting-up-sql-server-2012-alwayson-availability-groups-part1/
- http://caryhsu.blogspot.tw/2011/08/sql-server-2008-r2-vm-windows-storage.html
- http://social.technet.microsoft.com/wiki/contents/articles/14776.how-to-configure-windows-failover-cluster-in-windows-azure-for-alwayson-availability-groups.aspx