none
sql cluster 跑两个实例,想做负载均衡,请教!!! RRS feed

  • 问题

  • HI,各位高手: 1.操作系统版本:windows server ent sp2 2.群集节点数:2个 默认的是两台服务器做成SQL Cluster ,配置一个实例名,我现在有新的需求,如下: 这套SQL环境里面跑了几个数据库,但是发现有两个数据库(A和B)的访问量比较大,非常占资源。按照Windows Cluster的机制,只提供冗余的功能,也就是同一时刻只能有一台机器在使用sql 服务,就是说两个A,B都是跑在一台机器上面的。 我现在想做正负载加冗余的效果,也就是每台机器上面都跑一个数据库,但是根据Cluster的常规机制的话,无法做到,因为在本地服务里面,这两个库都是起在同一个服务(sql server)上面的,cluser里面同时只能有一台机器占用sql server服务,所以必须安装另外一个实例,安装完另外一个实例后,会出现两个SQL Sever服务,也就是每个实例都有一个,但是现在这两个实例还是只能同时在一台机器上面运行,不能分开,不知道为什么,不知道cluster的机制就是这个样子,还是我有什么地方配置错误谢谢各位指点。
    2011年1月30日 11:32

答案

  • 这是可以做到的. 以SQL Server 2008 为例,2个节点的cluster硬件允许装很多个sql server cluster实例. 如果数据库A和B可分别装在cluster instance1, cluster instance2中,instance1可跑在节点1上,instance2可跑在节点2上。 如果节点2故障,instance2可以故障转移到节点1上。

    前提:在共享磁盘SAN上需要有多个硬盘>=3(不是逻辑分区)。例如,数据库A位于 M:盘。数据库B位于N:盘。这样故障转移时A, B彼此独立。

    • 已标记为答案 ckadmin 2011年12月22日 9:11
    2011年2月1日 6:32

全部回复

  • Each instance needs its own disk resources and puts them separate resource group, that way you can failover individual instance.
    2011年1月30日 22:55
  • 你原来是A/P模式,现在要改为A/A模式

    首先需要对磁盘进行一个处理,就是需要为另外一台P的机器准备一个存储。我估计你现在所有磁盘都是在一个组内被A在使用。

    其次,在安装新实例的时候需要安装到新的磁盘上,这个磁盘现在是被P使用。

    这样就成为A/A模式了,不过如果任何一台机器出故障后,实例都会切换到另外一台机器上,这个时候还是一台机器2个实例。

    故障恢复后需要手动将其中过一个实例切换回去。

     


    family as water
    2011年1月31日 2:51
  • 这是可以做到的. 以SQL Server 2008 为例,2个节点的cluster硬件允许装很多个sql server cluster实例. 如果数据库A和B可分别装在cluster instance1, cluster instance2中,instance1可跑在节点1上,instance2可跑在节点2上。 如果节点2故障,instance2可以故障转移到节点1上。

    前提:在共享磁盘SAN上需要有多个硬盘>=3(不是逻辑分区)。例如,数据库A位于 M:盘。数据库B位于N:盘。这样故障转移时A, B彼此独立。

    • 已标记为答案 ckadmin 2011年12月22日 9:11
    2011年2月1日 6:32
  • Keep in mind that another instance on the cluster will not give you load balancing.
    2011年2月2日 14:57
  • 把数据库A, B分别放在2个不同的节点的2个实例上. 如果是这种方式, 也算一种负载均衡吧.

     

    2011年2月9日 2:05
  • sql server 不支持负载均衡

    这个是高可用性中的充分利用硬件资源。

    就是A/A模式了,如果A/P模式有一个机器是空闲的,不过一旦一个节点出问题,实例会切换,导致2个实例运行在一个节点上,可能带来性能问题。

     


    family as water
    2011年2月9日 3:44
  • 把数据库A, B分别放在2个不同的节点的2个实例上. 如果是这种方式, 也算一种负载均衡吧.

     

    It's load distribution but balancing, because can't redirect connections between instances based on load.
    2011年2月9日 4:18