數(shù)據(jù)庫
SQL Server 2000 由 MSIB 2.0 及其依賴項用于連接到數(shù)據(jù)庫上。 由于數(shù)據(jù)庫服務(wù)器是運行在平臺操作系統(tǒng)和服務(wù)頂部的,因此存在很多引起故障的原因,包括:
文件/磁盤系統(tǒng)失效
網(wǎng)絡(luò)故障
數(shù)據(jù)庫應(yīng)用程序故障
服務(wù)器故障
建議采用的解決方案
建議采用兩種 Windows 2000 高可用性解決方案:
Microsoft 群集服務(wù) (MSCS)。 這種解決方案適用于 MSIB 數(shù)據(jù)庫服務(wù)器。 這種解決方案可以提供可靠性,不過卻不能提供額外的可擴展性,這是因為其工作負荷并不是分布式的。
網(wǎng)絡(luò)負載均衡(NLB)。 這種解決方案適用橫向擴展模式。 在這種模式下,多個數(shù)據(jù)庫服務(wù)器在一個單一的虛擬 IP 地址之下進行了負載均衡。 一般情況下這些數(shù)據(jù)庫服務(wù)器是作為主數(shù)據(jù)庫服務(wù)器的用戶工作的,這個數(shù)據(jù)庫服務(wù)器則作為一個數(shù)據(jù)發(fā)布者工作。 在一個數(shù)據(jù)庫服務(wù)器出現(xiàn)故障的時候, NLB 將該服務(wù)器從群集中刪除并將連接指向其他正常的服務(wù)器。
解決方案部署中應(yīng)當包括對數(shù)據(jù)庫和構(gòu)成數(shù)據(jù)庫的存儲過程的備份。
類似地,如果現(xiàn)有的計算機出現(xiàn)了硬件資源的瓶頸,那么您應(yīng)當為 Web 群添加后端 SQL 服務(wù)器。 在添加了更多 SQL 服務(wù)器之后,構(gòu)成 MSIB 2.0 解決方案的數(shù)據(jù)庫應(yīng)當在 SQL 服務(wù)器中分離開來。
MSIB 2.0 企業(yè)部署的恢復(fù)模型
下圖給出了 MSIB 2.0 企業(yè)部署中典型的單點故障,下表介紹了 MSIB 2.0 企業(yè)部署是如何從單點故障中恢復(fù)過來的。 為了避免發(fā)生這些單點故障,建議您在投入實際運行之前在您的 MSIB 2.0 企業(yè)部署中采用本文前面介紹的高可用性技術(shù)。
注: 在下表中,所謂的可接受時限是指小于默認 ASP 超時時間的一個期間,在理想情況下為 15 秒鐘或更少。 為了進行本文所述的測試,所有的故障切換時間都由 MSIB 項目組進行了記錄。
單點故障 | 故障類型 | 檢定/描述 |
1(前端應(yīng)用程序/Web 服務(wù)器) | 套接字 | 由 NLB 將 Web 服務(wù)器從群集中刪除,終用戶不會感覺到出現(xiàn)了錯誤或者數(shù)據(jù)丟失。 |
網(wǎng)絡(luò) | 由 NLB 將 Web 服務(wù)器從群集中刪除,終用戶不會感覺到出現(xiàn)了錯誤或者數(shù)據(jù)丟失。 | |
2(前端搜索服務(wù)器) | 套接字 | 由 NLB 將 搜索服務(wù)器從群集中刪除,終用戶不會感覺到出現(xiàn)了錯誤或者數(shù)據(jù)丟失。 |
網(wǎng)絡(luò) |
由 NLB 搜索服務(wù)器從群集中刪除,終用戶不會感覺到出現(xiàn)了錯誤或者數(shù)據(jù)丟失。 | |
3 和 4(防火墻之間的連接) | 套接字 | 在可接受時限之內(nèi)平穩(wěn)過渡到備份防火墻。 |
網(wǎng)絡(luò) |
在可接受時限之內(nèi)平穩(wěn)過渡到備份防火墻。 |
|
5和6(域控制器之間的連接) | 套接字 | 在可接受時限之內(nèi)平穩(wěn)過渡到備份的域控制器。 |
網(wǎng)絡(luò) | 在可接受時限之內(nèi)平穩(wěn)過渡到備份的域控制器。 | |
7 和 8(前端 Web 和搜索服務(wù)器上的硬盤) | 磁盤 | NLB 將故障服務(wù)器從群集中刪除掉。 |
9 和 10 (Web 或搜索服務(wù)器失效) |
服務(wù)器 | NLB 將故障服務(wù)器從群集中刪除掉。 |
11(第二防火墻層上的硬盤) | 磁盤 | 由防火墻正確地將載荷傳遞到故障切換服務(wù)器上,不會給客戶端帶來數(shù)據(jù)損失或超時。 |
12(防火墻失效) | 服務(wù)器 |
由防火墻正確地將載荷傳遞到故障切換服務(wù)器上,不會給客戶端帶來數(shù)據(jù)損失或超時。 |
13(防火墻和數(shù)據(jù)庫群集之間的連接) | 套接字 | 為了測試這個連接,建議您對使用未經(jīng)高速緩存的數(shù)據(jù)庫請求的 Web 頁面進行測試,以確保不會發(fā)生終用戶可見的錯誤。 |
網(wǎng)絡(luò) | 為了測試這個連接,建議您對使用未經(jīng)高速緩存的數(shù)據(jù)庫請求的 Web 頁面進行測試,以確保不會發(fā)生終用戶可見的錯誤。 | |
14和15 (到域控制器的連接) |
套接字 | 在可接受時限之內(nèi)平穩(wěn)過渡到備份的域控制器。 |
網(wǎng)絡(luò) | 在可接受時限之內(nèi)平穩(wěn)過渡到備份的域控制器。 | |
16(Business Desk 計算機和 SQL Cluster 之間的連接) | 網(wǎng)絡(luò) |
為了測試這一連接,建議您在幾種不同模塊中對幾種 Business Desk 功能進行測試,以確保不會發(fā)生任何錯誤,以至令系統(tǒng)處于一種部分失效的狀態(tài)。 |
17( MSCS 數(shù)據(jù)庫故障切換: 交易、內(nèi)容、管理、運動) | 服務(wù)器 | 一個服務(wù)器錯誤會引起包括應(yīng)用數(shù)據(jù)庫在內(nèi)的 MSCS 故障切換。 為了核實這種錯誤狀態(tài),建議您對使用未經(jīng)高速緩存的數(shù)據(jù)庫請求的 Web 頁面執(zhí)行 GET 操作,以確保不會發(fā)生終用戶可見的錯誤。 系統(tǒng)會在被動節(jié)點變成活動節(jié)點之后重試請求,由 Web 頁面返回成功的請求。 |
18(SQL 群集上的硬盤故障:目錄、搜索、用戶) | 磁盤 | 一個系統(tǒng)磁盤錯誤會引起包括應(yīng)用數(shù)據(jù)庫在內(nèi)的 MSCS 故障切換。 為了檢驗這種錯誤狀態(tài),建議您對使用未經(jīng)高速緩存的數(shù)據(jù)庫請求的 Web 頁面執(zhí)行 GET 操作,以確保不會發(fā)生終用戶可見的錯誤。 系統(tǒng)會在被動節(jié)點變成活動節(jié)點之后重試請求,由 Web 頁面返回成功的請求。 |
19(域控制器故障) | 服務(wù)器 |
|
20(域控制器磁盤失效) | 磁盤 |
|