在XenServer集群上给客户搭建一个应用服务,要求有负载均衡,Web服务器用Windows Server 2008 R2 + IIS,数据库Sql Server 2008 R2,并且使用SAN存储。我设计的逻辑架构如下图:

上面的架构图中包含7个VM,分别是作为转发器的LVS Director和LVS Backup、作为Web服务器装

有Windows Server 2008 R2系统的2个VM、装有Sql Server 2008 R2的2个VM以及作为SQL
Server故障转移集群域控制器

和DNS和ISCSI Target的1个VM。

客户端通过虚拟IP访问Web服务器,请求首先到达LVS Director,LVS Director根据特定的算法将请求转发到2台Web服

务器其中的一台,Web服务器根据具体情况,往SQL Server服务器读或写数据。Web服务器通过虚拟IP访问SQL
Server

服务器,其中接到请求的SQL Server服务器将读取存放在ISCSI Target中的相应数据或往ISCSI Target中写入相应的数

据,而最终数据都存放在SAN存储中。

LVS Director和LVS Backup的功能一样,它们之间通过Heartbeat来探测对方的状态,如果LVS Director出问

题,LVS Backup将接管服务,即LVS Backup将会接收到来自客户端的请求,这样其中一台转发器出现故障不会影响到

负载均衡的功能。同样,后面的Web服务器如果一台出现了故障,LVS会将请求发送到正常的那台Web服务器上。Web

服务器通过虚拟IP访问SQL Server服务器,在Web服务器看来,就像后端只有一台SQL
Server服务器一样,如果其中一

台SQL Server服务器出现故障,另一台SQL Server服务器将接受Web服务器的请求继续服务。这样一来,LVS、Web服

务器、SQL Server服务器均不存在单点故障,只要每一种服务器还有一台能正常工作,服务就不会受影响。注意到了

吧,作为域控制器、DNS、ISCSI Target的服务器只有一台,这里又引入了单点故障,但是这台VM基本上不装什么应

用,一般认为是比较稳定的,不太容易出现问题,这里用一台应该就够了。

我猜可能有童鞋又有疑问了,我们不都是在用SAN存储吗,本来就是共享的,为何要搞个ISCSI Target呢?按本人的理

解,没有一台VM作为ISCSI Target好像还真搞不了这个故障转移集群(如有误请指出)。Windows Server 2008在创建集

群时需要集群的成员有ISCSI共享盘,这些磁盘有作为仲裁磁盘的,也有作为共享数据盘的。我们的SAN存储是挂载

到XenServer上的,这些XenServer之间是共享SAN存储,但是对于XenServer的2个VM来说,它们添加磁盘就是通过你

所熟悉的“add disk”操作来完成,这样一来,他们虽然也是用到了SAN存储,但是两个VM使用了SAN存储的不同部

分的空间,在VM看来它们并没有共享什么存储。现在的做法是通过“add disk”给作为ISCSI Target的VM添加一

个1000G的磁盘,这个1000G空间来自SAN存储,然后在该VM上Microsoft ISCSI Target软件,通过这个软件将这

个1000G的磁盘作为ISCSI目标共享给两台Sql Server服务器,这样两台Sql Server服务器有了共享的ISCSI盘(作为仲裁

盘、数据盘),就可以建立故障转移集群,并且将以后web服务器产生的数据存储在这个1000G的磁盘中。

SQL Server故障转移集群的更多相关文章

  1. 在Windows Server 2012 R2中搭建SQL Server 2012故障转移集群

    需要说明的是我们搭建的SQL Server故障转移集群(SQL Server Failover Cluster)是可用性集群,而不是负载均衡集群,其目的是为了保证服务的连续性和可用性,而不是为了提高服 ...

  2. 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...

  3. (转)从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    原文地址:  http://www.cnblogs.com/lyhabc/p/4682028.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集 ...

  4. sql server 复制,镜像,日志传输及故障转移集群区别

    一, 数据库复制 SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行 实时数据同步, ...

  5. 从0开始搭建SQL Server 2012 AlwaysOn 第二篇(配置故障转移集群)

    本篇主要讲配置Windows 故障转移集群及遇到的相关问题(坑),因为AlwaysOn是基于Windows的故障转移集群的 在讲解步骤之前需要了解一下故障转移集群仲裁配置 四种集群的仲裁配置: 1.多 ...

  6. (转载) 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集群,因为AlwaysOn是基于Windows的故障转移集群的 在讲解步骤之前需要了解一下故障转移集群仲裁 ...

  7. SQL AlawaysOn 之四:故障转移集群

    声明,故障转移集群,仅安装在SQL服务器中,域服务器不能和SQL服务器一起加入集群. 1.添加故障转移集群,下一步 2.安装 3.在域控制服务器上的管理工具里打开故不障转移集群管理器,选择创建集群 4 ...

  8. windows server 2012R2 故障转移集群配置

    配置说明: AD:10.10.1.10/24  Node-2:10.10.1.20/24 Node-3:10.10.1.30/24 zhangsan-PC:10.10.1.50/24  VIP1:10 ...

  9. sqlserver2008 复制,镜像,日志传输及故障转移集群区别

    一, 数据库复制 SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行 实时数据同步, ...

随机推荐

  1. 【PL/SQL编程基础】

    [PL/SQL编程基础]语法: declare 声明部分,例如定义变量.常量.游标 begin 程序编写,SQL语句 exception 处理异常 end: / 正斜杠表示执行程序快范例 -- Cre ...

  2. 图论trainning-part-1 F. Highways

    F. Highways Time Limit: 1000ms Memory Limit: 10000KB 64-bit integer IO format: %lld      Java class ...

  3. [uiautomator篇][11]wifi

    package com.softwinner.network.wifi; import android.content.Context; import android.content.Intent; ...

  4. Charlie's Change(完全背包记录路径)

    Charlie is a driver of Advanced Cargo Movement, Ltd. Charlie drives a lot and so he often buys coffe ...

  5. 【java基础 8】垃圾收集算法及内存分配策略

    本篇博客,主要介绍GC的收集算法以及根据算法要求所得的内存分配策略! 一.收集算法 收集算法,主要包括四种,分别是:Mark-Sweep(标记-清除).Copying(复制).Mark-Compact ...

  6. .NET重构(四):窗体继承+模板方法,完美实现组合查询

    导读:在机房重构中,有好些个查询都是大同小异,最为显著的就是组合查询了.怎样给自己省事儿,相同的东西能不能重复利用,就成了一个现实的问题.第一遍做机房的时候,使用的更多的是:复制+粘贴.学习了设计模式 ...

  7. API错误码设计-资料

    搜索到一篇文章:新浪微博API错误代码说明对照表 可以参考新浪微博的错误码设计思路,设计自己系统的错误码.

  8. nginx的正则

    ~      为区分大小写的匹配. ~*     不区分大小写的匹配(匹配firefox的正则同时匹配FireFox). !~     不匹配的 !~*    不匹配的 .     匹配除换行符以外的 ...

  9. P1133 教主的花园 (动态规划)

    题目描述 教主有着一个环形的花园,他想在花园周围均匀地种上n棵树,但是教主花园的土壤很特别,每个位置适合种的树都不一样,一些树可能会因为不适合这个位置的土壤而损失观赏价值. 教主最喜欢 3种树,这3种 ...

  10. 如何将一个int转换成cstring

    如:int a = 5;CString b;b.Format("%d",a);补充:如果a是double,或a是float的就是:b.Format("%f",a ...