雲中SQL Server高可用性最佳實踐

tianxiaoxu發表於2018-08-31

相比於本地部署的資料庫,雲資料庫可以為使用者提供更多的靈活性和可擴充套件性,而且價格也更加的低廉。但是雲系統經常會出現問題,所以我們必須要時刻關注高可用性和災難恢復。

SIOS技術公司的高階技術推廣人員David Bermingham在SQL Server叢集管理軟體公司舉辦的網路研討會上,詳細介紹了一組針對雲使用者的SQL Server高可用性最佳實踐,同時還對比了Microsoft Azure、AWS和Google雲提供的高可用性功能。

Bermingham表示,可靠的高可用性策略可以幫助為基於雲的SQL Server系統建立高效的工作流程、正常的執行時間和有效的災難恢復程式。如果替代方案不是那麼理想,那可能就會發生資料庫停機,資料丟失和其他令SQL Server資料庫管理員(DBA)頭痛的問題。

以下是Bermingham對SQL Server高可用性最佳實踐的一些建議。

在使用雲平臺之前閱讀細則

Azure的服務級別協議(SLA)承諾每月只有22分鐘的資料庫停機時間。但是,Bermingham表示,只有當SQL Server的兩個或多個例項被分組到一個由多個虛擬機器(VMs)組成的可用性集中時,才會出現這種情況。如果你自己只設定了一個例項,你可能最終得到的只是“a dial tone”,它可以ping,可以線上,但並不能保證儲存空間可用。”

而在AWS針對SQL Server系統的SLA中,其承諾每月有4.5分鐘的停機時間,或者是99.99%的正常執行時間。不過,與Azure的SLA類似,正常執行時間保證僅適用於兩個或多個彼此配對的資料庫例項。

谷歌雲平臺同樣承諾每月只需4.5分鐘的資料庫停機時間。但谷歌SLA中停機時間的定義有所不同,指的是“所有執行例項的外部連線或持久磁碟訪問的丟失”,部署時將例項放置在同一計算區域的兩個或多個區域之間。

為系統中斷做好準備

雲雖然是一種非常有用的資源,但是更重要的是我們也要認識到雲服務並非絕對可靠,其有失敗的可能性。也正是因為此,Bermingham才會分享SQL Server高可用性最佳實踐,以及在發生中斷時,應該做出哪些應急計劃。

Bermingham表示,首先你要確保有冗餘的網際網路接入,以及有應用程式如何連線到SQL Server以及客戶端如何連線到應用程式的計劃。意外丟失網際網路服務是使用者需要找到應對或解決方法的單點故障。

除此之外,還需要使用者考慮的一件事是在雲中部署SQL Server要使用多個可用區。因為可用區域可能會完全不可用,所以Bermingham建議跨區域部署資料庫來彌補完全中斷。

Bermingham強調了實施災難恢復計劃的重要性,因為雲中的資料可能會以各種方式丟失,火災和洪水等自然災害可能會破壞持有重要資料的物理伺服器,不過,現在我們所看到的大部分中斷都是由於某種人為錯誤造成的。

利用高可用性工具

在基於雲系統實施SQL Server高可用性最佳實踐時,必須要確保重要資料無論在何種情況下都可以使用。

Bermingham表示,即使你是在雲端執行SQL Server,那麼你也需要管理它,確保它時刻線上。而SQL Server中的高可用性功能也可以幫助DBA在雲中管理資料庫,例如Always On Availability Groups和Always On Failover Cluster Instances。

SQL Server 2012中,Always On Availability Groups將一組主資料庫繫結到多達八個相應的輔助資料庫集,這些輔助資料庫配置為在發生中斷時一起進行故障轉移。Bermingham表示因為SQL Server是在每個例項上執行,因此該技術可以實現非常快速的故障轉移。

他補充道,頁面修復可以在不使用第三方產品的情況下自動完成,並且DBA能夠在輔助系統上進行備份和執行報告。不過,Always On Availability Groups僅保護使用者資料庫,並不保護用於管理和維護SQL Server的系統資料庫。

Always On Failover Cluster Instances使用了微軟Windows Server Failover Clustering (WSFC)的功能為整個SQL Server例項提供高可用性保護。故障轉移叢集例項跨多個WSFC節點部署,以便在出現故障時實現冗餘。因此,DBA不需要管理可用性或在多個例項中維護密碼和使用者名稱。

每個雲平臺提供商還提供了管理SQL Server系統中儲存可用性的功能。例如,微軟提供了Azure Managed Disks,這個軟體程式釋出於2007年,透過在不同儲存單元之間傳輸資料,減少Azure VMs的潛在儲存中斷。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31137683/viewspace-2213312/,如需轉載,請註明出處,否則將追究法律責任。

相關文章