① sql server 負載均衡集群 哪種好
一個應用系統隨著業務量的提高,以及訪問量和數據流 量的快速增長,各個核心部分的處理性能和計算強度也相應增大,使得單一設備根本無法承擔。在此情況下,如果扔掉現有設備去做大量的硬體升級,必將造成現有 資源的浪費,而且下一次業務量的提升,又將導致再一次硬體升級的高額成本投入。於是,負載均衡機制應運而生。
對於應用系統的負載均衡的硬體和軟體比比皆是,因為應用伺服器上的程序基本上認為是不變化的,而且一般的各個應用伺服器上的程序是不交互的。因此應用伺服器的負載均衡非常好做,只需要能夠進行分流的軟體或者硬體把多個客戶端的連接分配到多個應用伺服器上去即可。
因為資料庫內的數據是頻繁變化的,為了數據的一致性以及鎖資源的分配協調等,所以像應用伺服器那樣只有分流是不夠的,各個節點需要頻繁的交互。這也是資料庫集群軟體難做的原因,當然也是賣的貴的原因了。
Oracle Real Application Clusters
對於資料庫負載均衡,大家最為耳熟能詳的就是Oracle RAC了。RAC是雙機並行伺服器(8i及以前版本稱作Oracle ParallelServer,OPS),用來在集群環境下實現多機共享資料庫,以保證應用的高可用性,同時可以自動實現並行處理及均分負載,還能實現資料庫在故障時的排錯和無斷點恢復。它可以自動進行負載平衡、故障修復和規劃停機時間,以支持高可用性應用程序。若並行伺服器中某節點失效,透明的應用程序容錯能夠把用戶自 動轉接到另一節點上繼續運行,應用程序在用戶沒有察覺的情況下繼續執行。這使周期性和非周期性發生故障的系統增大了連續可用性。進程的失效可以完全透明地 轉移到另一節點上去,通過適當地配置,可以指定所有查詢都在客戶端進行緩存,這樣它們便可以在轉移後的節點上重新設置。
Moebius for SQL Server
截至到SQL Server 2008,微軟還是沒有推出負載均衡組件,只能靠第三方軟體來實現,好在這個軟體是幾個從微軟出來的人寫的,也算是個小小的巧合。說他們是微軟出來的並不是說他們的技術多厲害,而是他們利用SQL Server的一些內部介面把集群做的非常透明, 無論是應用程序的調用還是開發/管理人員的使用都和面對一個資料庫一樣。
他們的實現原理是這樣的:和SQL Server鏡像一樣,每個資料庫節點都有自己的數據,也就是無共享磁碟架構。 他們稱之為「中間件」的程序宿主在資料庫的內部,每個節點資料庫上寫入數據導致數據變化時,SQL Server會激活「中間件」,「中間件」把變化的數據同步到其他的節點上。其他節點發生變化也是一樣。因為「中間件」宿主在資料庫內, 所以它能夠把每個同步的Session和SQL Server的Session綁定到一起,也就是使用戶的執行和數據的同步成為一個原子操作,從而保證數據在每時每刻都是一致的。因此查詢可以隨便到每個 機器上去查,從而做到了真正的負載均衡。
② 構建SQL Server 集群
先做好操作系統的群集,在存儲陣列、主域伺服器、備份域伺服器都工作正常並且網路連接正常的情況下,在主域伺服器上安裝SQLSERVER,安裝時選虛擬伺服器,裝完就OK了,沒什麼復雜的。主域上裝過後,備份域上也就自動裝上了。
③ SQLSERVER怎麼搭建伺服器集群實現負載均衡
很多組織機構慢慢的在不同的伺服器和地點部署SQL Server資料庫——為各種應用和目的——開始考慮通過SQL Server集群的方式來合並。
將SQL Server實例和資料庫合並到一個中心的地點可以減低成本,尤其是維護和軟硬體許可證。此外,在合並之後,可以減低所需機器的數量,這些機器就可以用於備用。
當尋找一個備用,比如高可用性的環境,企業常常決定部署Microsoft的集群架構。我常常被問到小的集群(由較少的節點組成)SQL Server實例和作為中心解決方案的大的集群哪一種更好。在我們比較了這兩個集群架構之後,我讓你們自己做決定。
什麼是Microsoft集群伺服器
MSCS是一個Windows Server企業版中的內建功能。這個軟體支持兩個或者更多伺服器節點連接起來形成一個「集群」,來獲得更高的可用性和對數據和應用更簡便的管理。MSCS可以自動的檢查到伺服器或者應用的失效,並從中恢復。你也可以使用它來(手動)移動伺服器之間的負載來平衡利用率以及無需停機時間來調度計劃中的維護任務。
這種集群設計使用軟體「心跳」來檢測應用或者伺服器的失效。在伺服器失效的事件中,它會自動將資源(比如磁碟和IP地址)的所有權從失效的伺服器轉移到活動的伺服器。注意還有方法可以保持心跳連接的更高的可用性,比如站點全面失效的情況下。
MSCS不要求在客戶計算機上安裝任何特殊軟體,因此用戶在災難恢復的經歷依賴於客戶-伺服器應用中客戶一方的本質。客戶的重新連接常常是透明的,因為MSCS在相同的IP地址上重啟應用、文件共享等等。進一步,為了災難恢復,集群的節點可以處於分離的、遙遠的地點。
在集群伺服器上的SQL Server
SQL Server 2000可以配置為最多4個節點的集群,而SQL Server 2005可以配置為最多8個節點的集群。當一個SQL Server實例被配置為集群之後,它的磁碟資源、IP地址和服務就形成了集群組來實現災難恢復。
SQL Server 2000允許在一個集群上安裝16個實例。根據在線幫助,「SQL Server 2005在一個伺服器或者處理器上可以支持最多50個SQL Server實例,」但是,「只能使用25個硬碟驅動器符,因此如果你需要更多的實例,那麼需要預先規劃。」
注意SQL Server實例的災難恢復階段是指SQL Server服務開始所需要的時間,這可能從幾秒鍾到幾分鍾。如果你需要更高的可用性,考慮使用其他的方法,比如log shipping和資料庫鏡像。
單個的大的SQL Server集群還是小的集群
下面是大的、由更多的節點組成的集群的優點:
◆更高的可用新(更多的節點來災難恢復)。
◆更多的負載均衡選擇(更多的節點)。
◆更低廉的維護成本。
◆增長的敏捷性。多達4個或者8個節點,依賴於SQL版本。
◆增強的管理性和簡化環境(需要管理的少了)。
◆更少的停機時間(災難恢復更多的選擇)。
◆災難恢復性能不受集群中的節點數目影響。
下面是單個大的集群的缺點:
◆集群節點數目有限(如果需要第9個節點怎麼辦)。
◆在集群中SQL實例數目有限。
◆沒有對失效的防護——如果磁碟陣列失效了,就不會發生災難恢復。
◆使用災難恢復集群,無法在資料庫級別或者資料庫對象級別,比如表,創建災難恢復集群。
虛擬化和集群
虛擬機也可以參與到集群中,虛擬和物理機器可以集群在一起,不會發生問題。SQL Server實例可以在虛擬機上,但是性能可能會受用影響,這依賴於實例所消耗的資源。在虛擬機上安裝SQL Server實例之前,你需要進行壓力測試來驗證它是否可以承受必要的負載。
在這種靈活的架構中,如果虛擬機和物理機器集群在一起,你可以在虛擬機和物理機器之間對SQL Server進行負載均衡。比如,使用虛擬機上的SQL Server實例開發應用。然後在你需要對開發實例進行壓力測試的時候,將它災難恢復到集群中更強的物理機器上。
集群伺服器可以用於SQL Server的高可用性、災難恢復、可擴展性和負載均衡。單個更大的、由更多的節點組成的集群往往比小的、只有少數節點的集群更好。大個集群允許更靈活環境,為了負載均衡和維護,實例可以從一個節點移動到另外的節點。
④ SQL Server Denali如何實現資料庫鏡像與集群的完美結合
SQL
Server
Denali引進了一種新的技術AlwaysOn,或高可用性故障恢復(High
Availability
Disaster
Recovery
,HADR)。根據何民的介紹,它的開發是一個重要的工程項目,需要付出的努力會超過90年代後期在Microsoft和原開發夥伴
Sybase
Inc.開始各自開發資料庫之後對7.0版本的SQL
Server引擎的重寫。AlwaysOn功能本身就可以看作是資料庫鏡像與集群的完美結合,並根據客戶的反饋增加了新的特性。
⑤ 什麼是sqlserver的集群
由二台或更多物理上獨立的伺服器共同組成的「虛擬」伺服器稱之為集群伺服器。一項稱做MicroSoft集群服務(MSCS)的微軟服務可對集群伺服器進行管理。一個SQL Server集群是由二台或更多運行SQL Server的伺服器(節點)組成的虛擬伺服器。如果集群中的一個節點發生故障,集群中的另一個節點就承擔這個故障節點的責任。
認為一個SQL Server集群能夠給集群中的兩個節點帶來負載平衡,這是一種常見的誤解。雖然這似乎很有用,但卻是不正確的。這也意味著集束SQL Server不能真正提高性能。集束SQL Server只能提供故障轉移功能。故障轉移就是當系統中的一台機器發生故障失去其功能時,另一台機器將接手運行它的SQL Server實例。這種功能失效可能是由於硬體故障、服務故障、人工故障或各種其它原因。
為何要集束SQL Server環境?
在實用性方面,集群SQL Server環境令人滿意。在進行故障轉移時,將資料庫實例由一台伺服器轉移到另一台伺服器的時間非常短暫,一般只需要3至7秒鍾。雖然需要重建連接,但對資料庫的終端用戶而言,故障轉移處理通常是透明的。低廉的故障轉移成本還可幫助你對集群中的節點進行維護,而不會造成伺服器完全無法訪問。
SQL Server集群類型
一共有兩種類型的SQL Server集群:主動/被動集群和主動/主動集群。下面分別對它們進行說明(說明以兩個節點的SQL Server集群為基礎)。
主動/被動集群
在這種類型的集群中,一次只有一個節點控制SQL Server資源。另一個節點一直處於備用模式,等待故障發生。進行故障轉移時,備用的節點即取得SQL Server資源的控制權。
優點:由於伺服器上只有一個實例在運行,所以在進行故障轉移時,不需要另外的伺服器來接管兩個SQL Server實例,性能也不會因此降低。
缺點:由於虛擬伺服器上只有一個SQL Server實例在運行,另一台伺服器總是處理備用模式與空閑狀態。這意味著你並沒有充分利用你購買的硬體。
主動/主動集群
在這種類型的集群中,集群中的每個節點運行一個獨立且主動的SQL Server實例。發生節點故障時,另一個節點能夠控制發生故障節點的SQL Server實例。然後這個正常的節點將運行兩個SQL Server實例——它自己的實例和發生故障的實例。
優點:通過這種配置,你能夠充分利用你的硬體。在這樣的系統中,兩個伺服器都在運行,而不是只有一台伺服器運行,而另一台處於等待故障發生的備用模式,因此你能夠充分利用你購買的機器。
缺點:如果進行故障轉移,一台伺服器運行兩個SQL Server實例,性能就會受到不利影響。然而,性能降低總比虛擬伺服器完全失靈要強得多。這種配置的另一故障在於它要求購買的許可要比主動/被動集群多一些。因為集群在運行兩個主動SQL Server實例,這要求你購買兩個單獨的伺服器許可。在某些情況下,這也可能對你形成阻礙。
集群考慮
在高實用性方面,集群SQL Server環境有一定的優勢。然而,高實用性也確實伴隨某種折衷。
首先,建立一個集群SQL Server環境非常昂貴。這是因為集群中的節點必須遵照集群節點的兼容性列表。而且,還需要建立一個復雜的網路,機器的配置必須幾乎相同,同時需要實現資料庫文件磁碟子系統共享。存儲區網路(SAN)是建立這種子系統的不錯選擇,但SAN並非必要,而且十分昂貴。另外,如果你正在運行一個主動/主動集群,你需要為集群中運行SQL Server實例的每台機器的處理器購買一個許可。
因為當地集群主要局限於同一地理區域,自然災難可能會使集群完全失靈。在那種情況下,你需要轉移到災難恢復站點進行繼續操作。你也可以建立地理分散的SQL Server集群,但這樣的系統更加復雜與昂貴。
⑥ SQL集群和windows集群是什麼意思應該怎麼去了解
集群就是一兩個或多個連接在一起,對外部客戶只顯示為一個
SQL是資料庫,WINDOWS是伺服器
⑦ 請問sqlserver集群是否一定要建立在windows集群的基礎上,
請問sqlserver集群是否一定要建立在windows集群的基礎上,
要實現微軟的微軟伺服器群集(MSCS群集)需要滿足以下幾個條件:
1.、需要域環境,並且群集中的節點在域中需要相同的身份,要麼都是DC,要麼都是非DC
2、需要准備一個域用戶帳戶,並且這個域用戶帳戶是群集節點主機本地管理員組成員
3、需要節點主機都可以訪問的共享存儲介質,並且是NTFS文件系統,不能是動態磁碟
4、至少需要兩個網路鏈接
5、需要Windows Server 2003企業版或數據中心版
⑧ 請教,sql server有類似ORACLE RAC的集群么
非要說接近的話,sql sverver2012開始的AlwaysOn會比較像rac的集群,當時sqlserver從來都不像Oracle那樣多寫,更多是讀寫分離。這也是被別人罵的最多的部分之一。但是做好設計和部署,不一定要用到RAC這種功能
⑨ mysql集群 數據節點和SQL節點區別
mysql集群 數據節點和SQL節點區別
集群最少要求有3台計算機.不過我們建議最好是4台;有2台分別運行管理節點和SQL節點,另外2台作為數據節點.採取2台數據節點的目的是提高數據的冗餘度,管理節點放在一個獨立的主機上是為了能夠保證在萬一有一台數據節點失敗的情況下提供仲裁服務.
⑩ sql server 2012 能不能做集群
當然可以,我們有成功案例,而且是做了分區的集群,總數據量6tb,最大的表大概有4tb,做了4個patition,一共10台牛x伺服器。