原文連接:http://www.sqlservercentral.com/articles/Failover+Clustered+Instance+(FCI)/107536/sql
By Perry Whittle, 2016/02/24 (first published: 2014/09/24)數據庫
歡迎來到第一級的系列「SQL Server AlwaysOn樓梯」。 在1級的這篇文章中,咱們會發現技術「AlwaysOn」、「故障轉移羣集實例」(FCI)和「Windows服務器故障轉移集羣」。 咱們會在每個細節和總結中堆棧他們坐的高可用性。 這將爲咱們提供一個良好的基礎,這對提高階梯水平相當重要。更高級別的樓梯將研究所需的基礎設施和使用的不一樣的存儲需求和選項組和fci AlwaysOn可用性。異步
在每一個樓梯級後你將得到進一步的瞭解AlwaysOn結構構建。 儘管做爲一名DBA,您可能沒有任何直接與核心基礎設施項目下面AlwaysOn fci,它有助於全面理解全部的技術集成。最後的樓梯將致使功能性AlwaysOn配置。sqlserver
咱們首先要看基礎知識,其中包括簡要描述每一個3的技術已經提到。spa
有許多縮略詞和縮寫用於AlwaysOn描述。 咱們有包括經常使用專業術語在本文的結尾。操作系統
閒話少說,讓咱們深刻一看每個技術。設計
Windows服務器故障轉移集羣(WSFC)是高可用性(HA)核心產品,坐在下面的全部微軟高可用性應用程序。 WSFC是一個Windows服務器操做系統軟件套件的一部分。 以前,您能夠建立一個SQL服務器的故障轉移羣集實例,一羣AlwaysOn高可用性,甚至Microsoft Exchange郵件服務器集羣,您須要部署和配置WSFC。代理
Windows服務器故障轉移集羣提供的能力結合多個計算機節點(物理和\或虛擬)爲高可用性服務的一組應用程序。 一個應用程序服務器軟件,如SQL server或交換,咱們但願可以在任何節點上運行。 應用高可用性給了客戶一個虛擬的接入點,由一個獨特的計算機名稱或IP地址和一個獨特的「虛擬網絡的名字」。 這個地址和虛擬的名字成爲資源的應用程序組和參與節點之間傳遞令牌。 活躍的計算機節點的關鍵硬件故障會致使損失的服務(s)在該節點上運行。 集羣服務將自動嘗試從新啓動集團在當前節點或合做夥伴節點,根據故障類型(硬件或軟件)。
在高級別上,客戶端訪問點細節以及任何磁盤和服務資源轉移到一個故障轉移夥伴節點。 故障轉移羣集實例的緣由斷開客戶端鏈接; 客戶可能會從新鏈接一次服務能夠在另外一個節點。常見故障一般是其中的一個,但任何應用程序的失敗可能致使服務搬到另外一個節點:
WSFCs,集羣的應用程序安裝到單獨的組或「應用程序」,它包含一組資源,如磁盤服務IP地址,等。該集團及其資源是由單個節點在任何一個時間,和資源不能夠從任何其餘夥伴節點除非計劃開關或一個節點發生故障轉移。
一個Windows服務器故障轉移集羣的典型視圖以下所示。 集羣節點都是經過一個網絡鏈接,和域控制器和DNS服務與WSFC容許客戶機鏈接到虛擬IP或虛擬網絡的名字,不管在哪一個節點實際運行服務。
部署的FCI,計算機節點必須使用共享存儲提出了每一個節點,一般從聖。 典型的AlwaysOn集團的部署節點利用本身的本地存儲,不與其餘集羣夥伴共享。
儘管集羣節點可能有不一樣的硬件,它一般是最好的硬件統一跨節點,以免任何狀況不那麼強大的節點來處理負載超出其能力。 然而,節點都必須使用相同的操做系統補丁水平和網絡配置; 這將變得清晰時,驗證您的配置在部署以前的Windows服務器故障轉移集羣。 最大的集羣節點數Windows Server版本之間的不一樣(8節點在Windows 2003,16節點在Windows 2008和2008節點在Windows 2012)。
部署一個健壯的Windows服務器故障轉移集羣須要精心設計,支持硬件和相應的版的Windows服務器操做系統。 Geo-graphically分散集羣(集羣跨廣域網)進一步增長所需的設計和規劃,並大大增長了成本。
重要的是要知道WSFC只提供故障轉移夥伴功能。 應用程序沒有負載平衡或跨節點向外擴展。 每一個服務一個且只有一個節點上運行。
一般,在大型多節點集羣安裝集羣應用程序在Windows服務器故障轉移集羣節點的一個子集。 製做安裝應用程序在全部節點的錯誤可能會致使一些不受歡迎的故障轉移,稍後咱們將會看到,也違反了AlwaysOn組限制政策,確保全部AlwaysOn實例居住的地方在不一樣的集羣中的節點。
WSFC須要某種形式的中介控制集羣資源全部權。 這個中介是集羣羣體的形式提供的。由於Windows 2003 SP1,這個羣體的一個節點與所需的多數選票投票系統,保持羣體。 你也可使用額外的羣體資源的形式爲局部集羣或遠程文件共享磁盤多站點集羣。 從Windows Server 2012,法定人數利用動態節點重量配置動態平衡集羣票計劃停機期間,以防止沒必要要的故障。 咱們將詳細討論法定人數在將來的水平。
故障轉移集羣實例的SQL服務器一直是一個受歡迎的高可用性技術在SQL Server產品。 SQL服務器集羣的高可用性實例,以減輕任何節點硬件故障和潛在的軟件故障。 這裏惟一的薄弱環節是存儲; 存儲子系統成爲單點故障。
故障轉移羣集實例是SQL Server的一個實例,違約或命名,已經安裝到WSFC集羣應用程序。 集羣應用程序一般有如下資源做爲最低:
一個獨立實例共享相同的基本需求,除了獨立的實例,計算機的IP地址和Networkname節點自己和磁盤存儲是由計算機的本地磁盤資源。
指的是上面的圖中,咱們看到一個典型的集羣和單個FCI 2節點。 SQL Server的集羣實例將利用任何共享存儲,提出了WSFC節點。 這一般存儲將從聖lun的形式呈現。 FCI的SQL Server部署在一個兩步的過程將會在後面的樓梯。 如今,這裏有一個基本的概述2步驟部署SQL服務器的故障轉移羣集實例:
注意:儘管標準版限制FCI 2個節點,這並不決定有多少節點加入Windows集羣(您可能有任意數量的操做系統最大)。 的限制是在SQL Server安裝程序級別執行。
FCI有點像一個跑道繼電器團隊的傳遞過程; 計算機節點擁有集羣的SQL服務器應用程序及其資源,而後提供給客戶的訪問SQL Server服務(把接力棒)。 在活躍的計算機節點發生故障時(巴)的降低,合做夥伴節點步驟和須要集羣應用程序及其資源的全部權(拿起指揮棒)。
多年以來,故障轉移集羣的主要方法爲SQL Server提供高可用性。 當一個節點失敗時,另外一個服務器接管提供SQL Server服務客戶。 AlwaysOn與Windows集成服務器故障轉移集羣技術來提供一個更有彈性的高可用性平臺。
而聚類在實例級工做,AlwaysOn配置在數據庫級。 AlwaysOn可用性組織中引入的新技術SQL Server 2012數據庫複製預約義組一組只讀夥伴實例,或副本,在AlwaysOn。 多個節點每一個主機的同步副本AlwaysOn數據庫(s)和訪問提供的是最好的一個偵聽器的配置(不久)。
AlwaysOn可用性組須要一個或多個二級副本主機高可用性數據庫的副本。 這些二級數據庫能夠是可讀的。 他們也可能被更新以異步或同步的方式。 異步副本只支持手動強制故障而自動或手動同步副本支持故障轉移。
二次只讀副本能夠被配置爲響應只讀查詢,你也能夠目標二次備份\維護操做的主數據庫來緩解壓力。 這個主要也是可逆的二次關係,確保真正的高可用性。 任何只讀夥伴適當配置可能承擔主要角色在系統中出現故障。
AlwaysOn依賴於WSFC歐文龍提供核心功能實現高可用性,但不須要任何下列共享資源與FCI有關。
這個共享資源規則有一個例外。 當建立一個AlwaysOn組監聽器,這將建立一個IP地址和網絡名稱的資源將由AO集團共享副本。
咱們已經發現,薄弱的環節故障轉移集羣實例共享存儲。 有不少方法能夠實現冗餘,但它一般顯著的代價,每每很難安裝和維護。 固然,如前所述,只有減輕了服務器硬件故障轉移羣集實例。 它沒有提供一個甚至多個二級數據庫。 咱們已經在SQL Server數據庫鏡像版本以前,SQL Server 2012,但這些只提供一個範圍,non-readable,二級數據庫。
AlwaysOn仍然使用熟悉的SQL Server實例通訊端點實例。 端點使用可用時自動配置部署嚮導。 嚮導驅動的部署提供了最簡單的部署路線,而手動部署須要大量的人工交互。 儘管如此,一個基本的AlwaysOn組配置仍然是極其容易部署和配置,並提供必定程度的哈,之前無貨不經過複雜的功能集成水平。
你也能夠建立一個高度可用的偵聽器服務,您將使用接受傳入的鏈接可用性。 偵聽器由一個惟一的IP地址和一個獨特的虛擬網絡名稱。 這是到目前爲止一個最重要的變化使集團內的數據庫高可用性。
在AlwaysOn可用性組的建立,建立一個集羣的做用在Windows服務器故障轉移集羣和包含一個資源。 這個資源是故障轉移夥伴節點之間在一羣AlwaysOn故障轉移和標識的主副本AlwaysOn組。
偵聽器配置時,將建立資源和駐留在應用程序故障轉移集羣\ AlwaysOn的可用性。 的資源是:
偵聽器使用TCP端口默認接受傳入的鏈接和鏈接到主複製。 當只讀路由配置,一個鏈接到偵聽器指定一個只讀的意圖鏈接將被路由到第二個合做夥伴,而不是主副本。 這是另外一種方式咱們能夠減輕主副本上的負載。
故障轉移期間AlwaysOn集團之間的集羣應用程序及其資源故障轉移集羣中的節點。 集羣應用的節點位置跟蹤主副本和它的底層集羣中的節點和移動。 主副本的SQL Server的集羣實例,偵聽器由FCI的活動節點\複製品。
這就是一級的樓梯,這提供了一個快速介紹3核心技術用來使咱們的SQL Server實例及其對象高可用性。 在咱們的高可用性堆棧WSFC做爲基礎水平,這是主要的要求安裝FCI或AlwaysOn可用性。 接下來咱們有FCI,坐落在WSFC和依賴於集羣服務和保護的SQL服務器實例。 最後AlwaysOn組,坐上獨立的SQL服務器的實例和\或故障轉移集羣的SQL服務器的實例。
在2級,咱們將查看可用的存儲類型及其典型用法在SQL服務器高可用性。 這將有助於您理解將來樓梯系列的水平。
AO |
AlwaysOn可用性組 |
FCI |
SQL Server的故障轉移羣集實例 |
TCPIP |
傳輸控制協議/互聯網協議。 微軟客戶端所使用的網絡協議網絡 |
OS /號 |
網絡操做系統 |
WSFC |
Windows服務器故障轉移集羣 |
局域網 |
局域網 |
灣 |
廣域網 |
DNS |
域名系統 |
DHCP |
動態主機配置協議,網絡計算機自動分配IP地址 |
IP地址 |
一個32位(IPV4),惟一的地址分配給計算機對象 |
廣告 |
活動目錄,目錄服務。 微軟技術用於在Windows域對象管理 |
博士 |
災難恢復 |
防曬係數 |
單點故障 |
SCSI |
小型計算機系統接口 |
iSCSI |
互聯網小型計算機系統接口 |
足球俱樂部 |
光纖通道 |
副本 |
SQL Server中使用的術語AlwaysOn可用性團體指的是SQL Server的一個實例,是一個特定AlwaysOn集團的一部分 |