構建無堅不摧的網站環境—NLB+Cluster(一)

 

這也算是個羣集系列版吧!首先在前面大家已經看到了利用openfiler建立仲裁磁盤
然後通過Linux開源軟件openfilerwindows羣集的結合一文看到了windows cluster羣集上如何構建文件共享及DHCP服務。
那麼本次我們將要升級到一個較高的層次,來看一下當今各大網站是爲何能經得住千千萬萬網民的訪問。同時學習一下這樣的一種部署結構。爲了每個人都能看懂我還是像說ISA那樣從安裝說起,對於初次安裝的人來說並不是一件簡單的事,畢竟是在cluster環境下。
本文將會說到windows羣集NLBcluster以及sql server 2005openfiler、動易論壇等方面的一些東西。所以可能要分幾部分來說,請大家注注意前後文之間的嵌套關係。這樣才更能看的明白一些。好了,這裏就不多說了。該說的咱們邊做邊說吧!
先看看拓撲,這是一個簡單的示意圖。這種結構不管是在windows環境下,還是在Linux環境下都是通用的。也不管一個網站有多大,有多少人訪問,它也是足以應付過來的。我們都知道NLB默認支持32臺主機,Cluster默認支持8臺主機,雖然不太多,但我們可以根據N多人的需求,構建NNLBNCluster.然後再結合基於DNS的負載均衡技術。這樣的話,支持的用戶將是不可估量的。

 

上面我說的天花亂墜,只是給大家提供這樣一種思想。還是先來看看我們如何讓上面這一套基本的環境運行起來。拓撲上的大概信息我羅列如下:
1.      防火牆內外圍部分連接着前臺NLB後臺cluster的各羣集服務器
2.      Cluster羣集節點一的主機名爲sql-cluster-1;公共連接IP爲:192.168.30.41/24;專用連接IP爲:200.200.200.1/24.
3.      Cluster羣集節點二的主機名爲sql-cluster-2;公共連接IP爲:192.168.30.42/24;專用連接IP爲:200.200.200.2/24.
4.      仲裁設備的IP192.168.30.43/24
5.      NLB羣集節點一的主機名爲web-NLB-1;公共連接IP192.168.30.44/24;專用連接IP爲:200.200.200.3/24.
6.      NLB羣集節點二的主機名爲web-NLB-2;公共連接IP192.168.30.45/24;專用連接IP爲:200.200.200.4/24.
7.      Cluster羣集的IP地址爲:192.168.30.50/24.(本次不會用到這個地址)
8.      SQL Server虛擬服務器的IP地址爲192.168.30.100/24(前臺應用程序和後臺數據庫聯繫時將會用到)
9.      NLB羣集的IP:192.168.30.46/24,這個IP將會作爲服務器發佈時的源IP.
再說一下環境的準備工作:
1.      四臺服務器都要求雙網卡一個用於公共連接,一個用於專用連接。其TCP/IP參數如拓撲所示。
2.      域環境是必須的,因爲cluster必須是域環境下運行。
3.      仲裁磁盤,如果你有IBM的磁盤陣列櫃當然最好,如果沒有的話,拿一臺PC裝個openfiler也是可以的,不過需要ISICS硬盤。可以參照我的另一篇文章:
4.      Cluster環境當然是必須的,可參照我的另一篇文章:
OK!滿足上面我羅列的要求之後,咱們就開始了構建無堅不摧的網站環境之路。
第一部分:創建分佈式事務協調器(DTC)。

1.      新建一個資源,類型爲“分步式事務協調器(DTC)”如下圖,它的作用就是爲了協調接下來咱們要分佈式安裝的sql羣集服務。如果不建這樣一個資源後面就可能會安裝不成功。所以大家要重視。

 

2.      將可用節點sql-cluster-1sql-cluster-2添加到可能的所有者中,如圖,之後點擊下一步。這裏所說的可能的所有者,指的是羣集中的節點。

 

3.      將可用資源中的“磁盤F:”、“羣集IP地址”、“羣集名”添加到“資源依存”框中,這一步的作用是指定資源的依存關係。也就是說做羣集服務這些資源必須要是聯機狀態纔可以。

 

4.      創建好了之後我們要確保它是處於聯機狀態的。如圖,如果它要是沒聯機的話右擊選擇聯機,刷新幾下就可以了。

 

第二部分:在cluster基礎上安裝sql羣集服務。

1.      在任意一個cluster節點上安裝sql,我這裏是在節點1上,計算名爲sql-cluster-1.放入安裝光盤,首先會讓我們安裝.NET Framework 2.0.Microsoft SQL Native Client等一些相關組件,咱們按照老方式安裝就可以了。大家這時可能會問,另外一個節點咋辦啊?先別急,往下看。

 

2.      上面裝好之後,就到了系統配置檢查這裏了。還是一樣點擊下一步往下走就是了,另外一臺機子依然不用管。

 

3.      上面完了之後,會要求我們選擇要安裝的組件,這一步大家可要看好了,不再和咱們以前裝的SQL相同了,可以從圖上看到,咱們選擇了“創建SQL Server故障轉移羣集”和“創建分析服務器故障轉移羣集”。也就是說咱們多選的這些項目將會在cluster羣集的所有節點上同步安裝。接着往下看吧!

 

4.      這裏要求我們輸入一個虛擬服務器的名稱,那就叫cluster-sql吧!注意這個名稱在網絡上必須是唯一的,不然這步就過不去了。

 

5.      現在是要咱們配置虛擬服務器的一些信息。下面我給虛擬服務器添加了一個IP地址。使用的網絡屬於公共連接的。這個IP的作用就是讓前臺的應用程序來使用的。比如咱們搭私服或是論壇時要我們指定數據庫的IP地址,其實說的就是這個IP,當然後面把論壇一搭大家就明白了哈!

 

6.      上面的步驟下一步之後就到了選擇羣集組這裏了,保持默認即可。另外大家可以看到下面數據文件的默認路徑是“F:\Microsoft SQL Server\”也就是在咱們的仲裁設備上。

 

7.      第七步是羣集節點的配置,系統要咱們選擇要包含在虛擬服務器中的節點,咱們確認是下圖這樣就可以了,保持默認。單擊下一步。

 

8.      第八步設置用於遠程安裝所使用的帳戶。這裏需要注意的是應該設置一個Domain Admins組中的用戶,這樣的話對於cluster羣集中所有節點來說都是有管理權限的。

 

9.      現在是讓我們指定一個服務帳號,咱們可以給每個服務自定義一個帳號,也可以使用內置的系統帳號。因爲咱們裝的是cluster上的SQL服務,建議還是用域帳戶比較好。下面我用的是域帳號administrator。如果用的是其它帳號的話應該確保是Domain Admins組中的用戶。

 

10.   第十步讓咱們設置羣集服務的域組,爲了統一性及安裝的順利進行咱們使用Domain Admins這個組。如圖,設置完之後點擊下一步。

 

11 第十一步大家應該很明白,它是讓咱們給sa用戶設置密碼,並且選擇第統要使用的身份驗證模式。

 

11.   OK現在確認一下咱們將要安裝的組件,點擊“安裝”按鈕。就開始安裝了。大家千萬不要閒它慢。慢就對了啊。爲什麼呢?因爲你不光是在給自己安裝,還通過遠程的方式給cluster羣集中的所有節點同步安裝。

 

12.   現在咱們到sql-cluster-2上來,打開任務管理器會發現在進程裏多了一堆東西,比如“setup”如圖,這就說明sql-cluster-2sql-cluster-1已經在同步安裝了。

 

13.   再看看sql-cluster-2上性能選項卡,可以看到CPU、內存等計數器的使用率明顯上升。現在大家將會進入到一個漫長的等待的時期。

 

14.    現在的主題依然是一個字——等。
在這裏我順便說一些注意事項,首先在以上步驟之前或之後有可能會出現一些異常比如警告、或是不建議做什麼以及COM+方面的問題,大家不必驚慌按照提示解決問題即可。一些無關緊要的問題可以忽略。還有就是換光盤時有時侯不太順利可以多來幾次。最後需要注意的是在第二次插入光盤安裝一段時間後如果系統提示進程安裝失敗。只要沒有回滾的話。咱們繼續再安裝一次就可以了,速度很快。

 

15.    現在安裝好了咱們分別在兩個節點上驗證一下安裝的結果,下圖是在sql-cluster-1節點上的截圖,可以看到Microsoft SQL Server 2005上的所有組件保括各種工具在這裏都安裝了。至少說明在當前安裝的這個節點上安裝是成功的。

 

16 再來看一下數據庫的位置,下面是我截取的將要創建數據庫時時的一張圖,可以看到數據庫的數據文件及日誌文件的默認路徑已經不在是C盤,而是F盤,也就是咱們的仲裁磁盤。也就是說現在所有節點新建一個數庫都會複製到其它節點上,因爲它們最終存儲數據的位置是一樣的。

 

16.    現在再到另一個節點sql-cluster-2上去看一下,從下圖可以看到安裝上來的組件少的可憐。這是正常的的,因爲咱們前面第三步的時侯說過,並不是所有組件都會在其它節點上安裝。因爲有些組件不能通過羣集的方式安裝。如果需要某些組件比如客戶端管理工具可以單獨進行安裝。

 

 

    好了,由於篇幅的限制咱們這次只能說到這裏,下次大家將會看到在基於cluster羣集的SQL Server數據庫和基於NLB的前臺web服務器上搭建動易論壇。需要說明的是,安裝一兩次並不一定會成功,希望大家多來幾遍,這樣更能積累經驗。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章