SQL Server AlwaysON从入门到进阶(3)——基础架构
生活随笔
收集整理的這篇文章主要介紹了
SQL Server AlwaysON从入门到进阶(3)——基础架构
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本文屬于SQL Server AlwaysON從入門到進階系列文章
本文將更加深入地講解WSFC所需的核心組件。由于AlwaysOn和FCI都需要基于WSFC之上,因此我們首先要了解在Windows群集發生了什么。不僅可以優化SQL Server的高可用設計和部署高,也可以為后續問題偵測過程提供支持。 本節將涉及以下內容:
那么,一個常規的配置會是怎樣的?大家可以看下下面的這個圖,可以看到一個基于WSFC的典型網絡。其中有域控制器(Domain Controller,包含了DNS區域的功能)、TCP/IP網絡及群集節點。
我們也不妨一起看看基礎設施的依賴關系,這里建立了一個樹狀結構。依賴樹的組件如下圖:
藍色虛線意味著是可選項,AlwaysOn和FCI是可以獨立部署互不依賴的。
注意:雖然不在強制需要專用的心跳網卡,但是還是必須有多個冗余的TCP/IP網絡。 在第一個圖中的5個節點通過public網絡互聯,這個網絡是提供給SQL Server實例用于為客戶端提供服務。同時這個網絡也用于群集監控和SQL Server資源在啟動故障轉移時使用。并且這里也有一個冗余的TCP/IP網絡用于快速恢復。雖然這個冗余網絡并非強制要求,但是作為最佳實踐,一個可用的、獨立的冗余網絡能提供最佳的可用性。并且這個冗余網絡還可以用于SQL Server備份(特指網絡備份)、鏡像端點流量傳輸時使用。群集虛擬適配器使用一個在APIP(Automatic Private IP,自動專用IP)范圍中的地址,以便在群集節點之間隔離通訊。
雖然在上面樹狀圖中沒有出現并且不是必要要求,但是我們還是要看看DHCP。如果希望自動管理服務器TCP/IP地址分配工作,那么就需要一個DHCP服務器。在常規部署中,通常會部署在NDS服務器上。DHCP是從DHCP管理員指定的保留池中在一臺新電腦啟動時分配IP地址的協議。典型的通過DHCP的網絡配置綁定的網卡大概如下:
在部署Windows Server Failover Cluster(WSFC)之前,需要滿足以下最低要求:
SQL Server AlwaysON從入門到進階(4)——分析和部署Windows Server Failover Cluster
前言:
本文將更加深入地講解WSFC所需的核心組件。由于AlwaysOn和FCI都需要基于WSFC之上,因此我們首先要了解在Windows群集發生了什么。不僅可以優化SQL Server的高可用設計和部署高,也可以為后續問題偵測過程提供支持。 本節將涉及以下內容:
- Windows Server Active Directory Domain(Windows Server活動目錄域)
- DNS Server
- DHCP Server
- TCP/IP 網絡
- Windows Server 企業版(2008)或標準版(2012)的最小計算機節點數。
WSFC簡介及工作機制:
首先看看在一個沒有任何應用的裸群集包含一些什么配置。在這里,我們使用5個節點、無共享存儲,將在后續用于部署無FCI的AlwaysOn的群集。Windows Server Failover Cluster(下稱WSFC)是一種特殊的Windows Server 功能,在使用之前必須先啟用。可以在Windows中使用PowerShell或者【角色和功能】向導中啟用。一旦功能被啟用,那么Failover Cluster(故障轉移群集)會使用一個在每臺群集機器中的Windows 服務(Cluster service)作為伙伴節點中通訊之用。同時還可以作為節點同步和監控已集群的應用的健康狀況。 當由于某些原因導致應用無法響應時,基于資源策略的一系列步驟就會被觸發執行。故障從大類分為軟件和硬件故障。如果是軟件故障比如已集群的SQL Server服務被終止,那么會自動嘗試在同一臺機器上重啟服務。但是如果是硬件故障,那么故障轉移就會馬上啟動。 不管軟硬件故障,如果Failover需要重啟已集群的應用的服務,通常這個服務會在一個伙伴節點中重啟。也就是說,服務上的所有連接(這里特指數據庫引擎)會中斷。然后在伙伴節點上,SQL Server數據庫引擎會重啟并恢復所有數據庫,回滾、重做必要的日志。 前面提到過,集群服務同樣監控操作系統及已集群應用的常規狀態和健康情況。對于SQL Server引擎就是周期性檢測服務是否“IsAlive”,對于操作系統,“isAlive”的周期為5秒一次。 IsAlive檢測每60秒觸發一次,然后在5秒內測量。如果在5秒內沒有響應,意味著該節點的群集服務不可用。未能在指定事件作出響應將會啟動對應用、資源的故障轉移。詳細資料可在官方文檔中查閱:在故障轉移群集在 Windows Server 中的新增功能 Windows Server 2012 R2群集節點健康偵測默認時間值| 群集通用屬性 | 非Hyper-V的群集角色默認值 | Hyper-V群集角色默認值 |
| 相同子網閾值 | 5 秒 | 10 秒 |
| 跨子網閾值 | 5 秒 | 20 秒 |
那么,一個常規的配置會是怎樣的?大家可以看下下面的這個圖,可以看到一個基于WSFC的典型網絡。其中有域控制器(Domain Controller,包含了DNS區域的功能)、TCP/IP網絡及群集節點。
我們也不妨一起看看基礎設施的依賴關系,這里建立了一個樹狀結構。依賴樹的組件如下圖:
藍色虛線意味著是可選項,AlwaysOn和FCI是可以獨立部署互不依賴的。
TCP/IP 網絡:
我們從基礎開始,首先需要一個固定的TCP\IP網絡。通常由以太網交換機和網線(傳統的銅線,1Gbps)組成。計算機對象通過patch\CAT5網線插入各種網絡交換機。Windows Server 群集模型在持續改進,已經不再強制需要專用心跳適配器。在Windows Server 2003時代,這個為必須項,從2008開始發生了很大的改變。新的群集模型使用一個特定的虛擬適配器,這個適配器綁定到可用的物理網卡上用于內部節點之間心跳流量的傳輸。這個虛擬適配器類似下圖:注意:雖然不在強制需要專用的心跳網卡,但是還是必須有多個冗余的TCP/IP網絡。 在第一個圖中的5個節點通過public網絡互聯,這個網絡是提供給SQL Server實例用于為客戶端提供服務。同時這個網絡也用于群集監控和SQL Server資源在啟動故障轉移時使用。并且這里也有一個冗余的TCP/IP網絡用于快速恢復。雖然這個冗余網絡并非強制要求,但是作為最佳實踐,一個可用的、獨立的冗余網絡能提供最佳的可用性。并且這個冗余網絡還可以用于SQL Server備份(特指網絡備份)、鏡像端點流量傳輸時使用。群集虛擬適配器使用一個在APIP(Automatic Private IP,自動專用IP)范圍中的地址,以便在群集節點之間隔離通訊。
Domain Name System,DNS:
一個可靠的微軟客戶端網絡還需要有一個Domain Name System(DNS,域名系統)服務器的存在。在微軟客戶端網絡中,計算機對象(服務器和工作站)都有一個唯一的計算機名,并分配一個唯一的IP地址。這個計算機名和IP地址在計算機本地網卡中注冊信息。但是當你在TCP/IP網絡中需要通過計算機名引用另外一臺計算機時,你就需要解決計算機名到IP地址之間的解析問題。這就是DNS出現的原因。 DNS服務器可以是一臺網絡中的計算機,也可以是Windows Server域控中啟用了DNS角色的機器。DNS使用區域(zones)來解決計算機組名問題。一個區域可以是正向查找區域(強制的)或者一個反向查找區域(可選的),它們的操作如下:- 正向查找區域:解析機器名→IP地址
- 反向查找區域:解析TCP/IP地址→計算機名
Dynamic Host Configuration Protocol,DHCP:
雖然在上面樹狀圖中沒有出現并且不是必要要求,但是我們還是要看看DHCP。如果希望自動管理服務器TCP/IP地址分配工作,那么就需要一個DHCP服務器。在常規部署中,通常會部署在NDS服務器上。DHCP是從DHCP管理員指定的保留池中在一臺新電腦啟動時分配IP地址的協議。典型的通過DHCP的網絡配置綁定的網卡大概如下:
Active Directory Domain:活動目錄域
在整套環境中,必須要有一臺啟用了Active Directory Domain服務角色的Windows Server 計算機。這個角色由DCPROMO.EXE這個cmd命令創建在Windows域中。按著向導一步一步繼續下去之后,就可以為網絡客戶端提供Active Directory 身份驗證和管理網絡資源。常見的資源有:- Windows Server Failover Clusters
- 文件共享
- 打印機
- 用戶
Windows Server Failover Cluster:
在部署Windows Server Failover Cluster(WSFC)之前,需要滿足以下最低要求:
- 一個TCP/IP網絡
- 一個AD域
- 一個DNS服務器
SQL Server Failover Cluster Instance:FCI
SQL Server FCI在發生軟硬件故障時進行實例級別的故障轉移,避免SQL Server實例永久脫機。在過去,FCI是在過去SQL Server高可用的主要技術,但是共享存儲的硬性要求成為它的唯一缺點。共享存儲的故障會直接導致FCI脫機并無法啟動。 另外需要了解的是每個新實例的部署都需要有自己的唯一虛擬網絡名和唯一虛擬IP地址。實例不可共享硬盤文件路徑、虛擬IP地址或虛擬網絡名,他們必須是“唯一”的。FCI完全取決于WSFC提供的資源管理。SQL Server AlwaysOn Availability Group:
AlwaysOn 可用組是SQL 2012引入的新的高可用技術。它借助WSFC進行資源組的管控。AlwaysOn組通常包含一個主數據庫集合。而數據庫的副本被封裝到可用組(Availability Groups)中,成為“副本”并傳送到其他實例上提供只讀功能。 SQL Server 可用組的其中一個新功能是創建偵聽器服務。用于提供一個中央客戶端接入點用于訪問Availability Group中綁定到偵聽器的數據庫。配置完只讀路由后,偵聽器會把意向讀的流量重定向到次要只讀數據庫,分攤主副本的流量。 這部分內容是本系列的主題,將在后續繼續介紹。小結:
本節對整個環境進行了概要介紹,下節開始會著重對這些內容/技術進行專門的詳細講解。首先將會是作為基礎的WSFC。SQL Server AlwaysON從入門到進階(4)——分析和部署Windows Server Failover Cluster
總結
以上是生活随笔為你收集整理的SQL Server AlwaysON从入门到进阶(3)——基础架构的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NVIDIA和AMD各型号显卡超频参数一
- 下一篇: python 月球上物体的体重,1.重量