服务器集群技术高端干货创作,13年了,现在能看懂的无几人
概要
本手册提供关于在运行Microsoft® Windows® Server 2003 Enterprise Edition 64位操作系统的服务器上创建和配置使用共享磁盘的典型的单一仲裁设备双节点服务器群集的步骤指导。
●群集服务器介绍
群集服务器是一组独立的服务器,运行群集服务,并像单个系统一样运作。通过将运行着Windows Server 2003 Enterprise Edition操作系统的服务器编组,可组成群集服务器,从而对资源和应用程序提供了高可靠性的、可扩展性和可管理性。
群集服务器的目的是,在出故障或断电的情况下,保证客户对应用程序和资源的访问。如果群集里的某服务器由于故障或维护的缘故,不可用,资源和应用程序将移到其它可用的群集节点上。
对于群集系统,常使用高可用性,而不是容错性,这是由于容错技术提供了高度的恢复能力。容错服务器通常使用高度的硬件冗余,加上特定的软件,对任意单个的硬件或软件故障,提供了近于即时的恢复功能。这些解决方案的成本大大高于群集解决方案。这是因为前者要提供多余的硬件,并处于空闲状态,等待故障的出现。容错服务器主要用于支持高品质、高速处理的场合,如票据交换所、自动柜员机(ATM)或股票交易。
群集服务不保证不停顿的操作,它为大多数执行关键任务应用程序提供了足够的可靠性。群集服务可监视应用程序和资源,并自动将多数故障状态识别和恢复出来。使用群集,可以为管理工作负荷提供更大的柔性,并提高整个系统的可用性。
群集服务的好处有:
高可用性:使用群集服务,资源的所有权,如磁盘驱动器和IP地址将自动地从有故障的服务器上,转到可用的服务器上。当群集中的系统或应用程序出现故障时,群集软件将在可用的服务器上,重启失效的应用程序,或将失效节点上的工作,分配到剩余的节点上。结果是,用户只是觉得服务暂时停顿了一下。
修复返回:当失效的服务器连回来时,群集服务将自动在群集中平衡负荷。
易管理性:可以使用群集管理器来管理群集,(如同在同一个群集中),并管理应用程序(就像它们运行在同一个服务器上)。可以通过拖放群集对象,在群集里的不同服务器移动应用程序。也可以通过同样的方式移动数据。可以通过这种方式来手工地平衡服务器负荷,卸载服务器,从而方便地进行维护。可以从网络的任意地方的节点和资源处,监视群集的状态。
可扩展性:群集服务可进行调整,以满足不断增长的需求。当群集的整体负荷超过群集的实际能力时,可以添加额外的节点。
针对在运行着Windows Server 2003 Enterprise Editio的服务器的情况,本文提供了安装群集服务的说明。该手册描述了在群集节点上,安装群集服务的过程。它的作用不是解释如何安装群集应用程序。而是指导如何安装典型的、两节点的群集本身。
●群集安装环境搭建
○硬件要求
1两台HP ProLiant DL580 G4(430810-AA1)
2 MSA1500磁盘阵列 20块HP300G通用热拔插硬盘
3两个SAN交换机
4 两台服务器配备千兆双网卡
5两台服务器用交叉双绞线连接
○软件要求
1两台安装 Windows Server 2003 Enterprise Edition×64位操作系统的服务器
2配置为域模型
3所有的节点必须是同一个域的成员。
4一个域级帐户,必须是每个节点上的本地管理员组的成员。建议采用专用帐户。
5一个名称解析法,比如:域名系统(Domain Name System,DNS)、DNS动态更新协议、Windows Internet名称服务(Windows Internet Name Service,WINS)、HOSTS等等。
●安装Windows Server 2003 Enterprise Edition操作系统
方法1 先使用HP安装引导光盘打包硬件驱动程序,然后再用Windows Server 2003 Enterprise Edition 光盘安装。
方法2 直接使用Windows Server 2003 Enterprise Edition光盘安装,然后再用HP引导盘选择安装驱动。
安装过程中设置好管理员密码 复杂度要高 最少不少于6位
○网络配置
1 配置公用网络适配器
启动SERVER1选择对应的本地连接(和交换机连接)改名为 'Public'(公用网络)手动配置IP地址192.168.0.5 子网掩码255.255.255.0 首选DNS 192.168.0.5
Public连接→属性→TCP/IP属性→配置→高级→设为自动适应
Public连接→属性→TCP/IP属性→高级→DNS选项卡→选中在DNS注册中使用此连接的DNS后缀
2 配置专用网络适配器
选择对应的本地连接(和SERVER2连接)改名为 'Heartbeat'(专用网络)手动配置IP地址10.1.1.1 子网掩码255.0.0.0
Heartbeat连接→属性→配置→高级→设为10MB全双工
Heartbeat连接→属性→TCP/IP属性→高级→WIN→选中禁用TCP/IP上的NETBIOS
切换到SERVER2 如法配置server2
※设置完成后 禁用两个服务器的Heartbeat连接
※修改SERVER1和 SERVER2的注册表HKEY_MACHINE/SYSTEM/CurrentControlSet/Services/TCPIP/Parameters/将EnableRSS的值修改为[0]
3 配置绑定网络顺序
eq \o\ac(○,1) 打开网络连接
eq \o\ac(○,2)在高级菜单上,单击高级设置
eq \o\ac(○,3) 在连接框中 确认如下顺序
Public
Heartbeat
远程访问连接
eq \o\ac(○,4)配置好两台服务器 Server1和Server2
●服务器安装域
○Server1安装域
运行dcpromo命令或开始—程序—管理工具---配置您的服务器
1 配置您的服务器 下一步
2 检查设备安装步骤 下一步
3 选择服务器角色 Active Directory
4弹出Active Directory安装向导,点'下一步'
5 这里以默认,点'下一步'
6选'新域的域控制器',点'下一步'
7 选'新林中的域',点'下一步'
8 输入域的dns全名,如:sxhm.com,点'下一步'
9 输入NerBIOS名,这里以默认,点'下一步'
10 选择'数据库和日志的安装'路径,点'下一步'
11选择'共享的系统卷'的安装路径,点'下一步'
12 选择第二项,点'下一步'
13这个模式以默认,点'下一步'
14 输入还原密码,点'下一步'
这里必须输入还原密码,密码复杂度要求较高,输入后必须牢记。
15 点'下一步'
16 直到安装完成,并重新启动计算机,
○SERVER2加入域
方法1和在SERVER1上安装域的步骤基本一样 只是在到下面时选择'在现有域树中的子域'
接下来输入域名和密码
方法 2 右击我的电脑→属性→计算机名→选中域的选项输入→域名→ 确定→ 重新启动电脑
对安装域熟练时可先配置好SERVER1 在安装SERVER2 的操作系统时直接加入域
○验证连通性和名称解析
要验证专用和公用网络正确地进行通信,查验来自每个节点的所有IP地址。您必须可以在本地和远程节点上查验所有的IP地址。
要验证名称解析,使用节点的机器名称而非IP地址,从客户端查验每一个节点。应该仅对公用网络返回IP地址。您也许还想尝试通过'PING –a'命令,反向查找IP地址。
或在命令提示符下使用nslookup命令验证
●配置磁盘阵列
首先关闭SERVER1 和SERVER2开启磁盘阵列柜耐心等待… 观察显示MSA1500时启动完成。
○配置共享磁盘
警告:为了避免破坏群集磁盘,在其他节点上启动操作系统前,确认至少在一个节点上安装、配置并运行了 Windows Server 2003 和群集服务。在完成群集服务配置之前,所开启的节点数不要超过一个,这一点至关重要。
1 Array Configuration Utility 7.80.60
eq \o\ac(○,1)启动SERVER1 关闭SERVER2
eq \o\ac(○,2)开始程序-------Array Configuration Utility 7.80.60 的工具
eq \o\ac(○,3)将磁盘阵列分成如图所示的RAID6 的分区
2 划分物理分区
如上图所示
eq \o\ac(○,1). 确认仅开启了一个节点。 eq \o\ac(○,2.) 右击我的电脑,单击管理,然后展开存储。 eq \o\ac(○,3). 双击磁盘管理。 eq \o\ac(○,4.) 如果您连接了一个新的驱动器,将自动开启'写入签名和更新磁盘向导'。如果出现该向导,单击下一步,完成向导的各个步骤。请注意:该向导自动将磁盘设为动态。要将磁盘复位到基本状态,右击磁盘 n (n 在此处指您正在设定的磁盘),然后单击还原基本磁盘。 eq \o\ac(○,5). 右击未分配的磁盘空间. eq \o\ac(○,6.) 将启动'新建分区向导'。单击下一步。 eq \o\ac(○,7.) 将启动'新建分区向导'。单击下一步。 eq \o\ac(○,8). 选择主分区的分区类型。单击下一步。 eq \o\ac(○,9.) 默认将分区大小设为最大。单击下一步。(建议采用多个逻辑磁盘,而不是在一个磁盘上采用多个分区。) eq \o\ac(○,10). 使用下拉框更改驱动器盘符。使用在字母表上比默认列举的字母更靠后的驱动器盘符。通常,驱动器盘符 Q 可以用于仲裁磁盘,而 R、S 等字母则用于数据磁盘。 eq \o\ac(○,11). 使用 NTFS 格式化分区。在卷标框中,键入该磁盘的名称。例如,驱动器 Q,为共享磁盘分配驱动器卷标至关重要,因为在还原磁盘时这会大大减少故障排除时间。确认所有的共享磁盘均格式化为 NTFS 并指定为 MBR Basic。
仲裁盘quorum Q 2GB 阵列柜 BOX R 2TB BOX S 2TB BOX T 1TB
其中Q为仲裁盘 2000MB关于仲裁磁盘 仲裁磁盘用于存储群集配置数据库检查点和日志文件,日志文件可协助管理群集和维护一致性。创建一个2000MB(最小 50 MB)的逻辑驱动器用作仲裁磁盘,专门划出一个单独的磁盘作为仲裁资源。重要提示:仲裁磁盘故障可能导致整个群集失效;所以,强烈建议您使用硬件 RAID 阵列上的一个卷。除了进行群集管理外,不要使用仲裁磁盘执行其他任务。仲裁资源在群集运作中扮演着关键的角色。在每个群集中,都有一个单一资源被指定为仲裁资源。仲裁资源可以是具备下列功能的任何'物理磁盘'资源:
在群集服务安装过程中,您必须为仲裁磁盘提供驱动器盘符。常用的标准盘符为 Q,本例中亦采用 Q 盘符。
※配置SERVER2
关闭SERVER1 打开SERVER2
执行以上1.2步骤 原则为两台服务器的磁盘阵列配置完全相同
3验证磁盘访问与功能 eq \o\ac(○,1). 启动 Windows Explorer。 eq \o\ac(○,2.) 右击一个共享磁盘 (例如,驱动器 Q:\),单击新建,然后单击文本文档。 eq \o\ac(○,3). 确认您可以顺利写入磁盘,并创建了文件。 eq \o\ac(○,4.) 选择所创建的文件,然后按 Del 键,将其从群集磁盘中删除。 eq \o\ac(○,5.) 对所有群集磁盘重复步骤 1 至 4,确认可以从第一个节点正确地访问它们。 eq \o\ac(○,6.) 关闭第一个节点,开启第二个节点,并重复步骤 1 至 4,验证磁盘访问和功能。分配与驱动器卷标相匹配的驱动器盘符。对任何其他节点重复相同的步骤。确认所有节点都可以从磁盘读取和写入,关闭除第一个节点以外的所有节点,然后继续本白皮书。
○设置一个群集用户账户
eq \o\ac(○,1) 启动Server1 单击开始,指向所有程序,指向管理工具,然后单击 Active Directory 用户和计算机。 eq \o\ac(○,2.) 如果域还未展开,单击加号 (+) 将其展开。 eq \o\ac(○,3.) 右击用户,指向新建,然后单击用户。 eq \o\ac(○,4.) 键入群集名称Cluster。 eq \o\ac(○,5.) 将密码设置设定为用户不能更改密码和密码永不过期。单击下一步,然后单击完成创建该用户。请注意:如果您的管理安全策略不允许使用永不过期的密码,您必须在密码到期前,在每个节点上重续密码并更新群集服务配置。
eq \o\ac(○,6.) 在'Active Directory 用户和计算机'管理单元的左侧窗格中,右击群集,然后在快捷菜单上单击属性。 eq \o\ac(○,7). 单击将成员添加到组。 eq \o\ac(○,8.) 单击管理员,然后单击确定。这将给予新用户帐户在该计算机上的管理特权。
●配置群集服务
○创建新群集 (创建前开启SERVER1服务器 关闭SERVER2 启用心跳线连接)
群集的IP地址:192.168.0.8 群集名: Cluster
1在SERVER1上打开群集管理器
2 创建新群集
3 服务器群集向导 下一步
4 输入群集名称和域名
5 输入计算机名称
6 分析配置
○加入新节点
按照上述步骤 第二步执行操作 添加新节点
完成安装
●安装SQL2005
○SQL2005概述
SQL Server 是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。SQL Server 2005 为IT专家和信息工作者带来了强大的、熟悉的工具,同时减少了在从移动设备到企业数据系统的多平台上创建、部署、管理及使用企业数据和分析应用程序的复杂度。 通过全面的功能集、和现有系统的集成性、以及对日常任务的自动化管理能力,SQL Server 2005 为不同规模的企业提供了一个完整的数据解决方案。
○安装SQL2005
1安装必要组件
eq \o\ac(○,1)IIS信息服务 eq \o\ac(○,2)Com+ eq \o\ac(○,3)DTC eq \o\ac(○,4)消息队列
安装组件这里不再叙述 两台服务器都安装
eq \o\ac(○,5) DNS eq \o\ac(○,6)WINS eq \o\ac(○,7)MSDTC eq \o\ac(○,8) DC
2配置MSDTC (Microsoft 分布式事务协调器)资源
创建 IP 地址资源:
a. 右键单击'组0',然后单击'新建\资源'。 b. 键入一个描述性的名称,如 MSDTC IP Address。 c. 在'资源类型'中,单击'IP 地址',单击以选中'MSDTC Group'复选框,然后单击'下一步'。 d. 在'可能的所有者'中,除非不希望 MSDTC 在特定节点上运行,否则请单击'下一步'。 e. 在'相关性'中,不要添加任何相关性,然后单击'下一步'。 f. 在'TCP/IP 地址参数'中,选择公共网络,为 MSDTC 键入唯一的静态 IP 地址,然后单击'下一步'。 192.168.0.9g. 单击'完成',然后单击'确定'以确认资源已创建。 创建网络名称资源:
a. 右键单击'组0',然后单击'新建\资源'。 b. 键入一个描述性的名称,如 MSDTC Network name。 c. 在'资源类型'中,单击'网络名称',单击以选中'MSDTC Group'复选框,然后单击'下一步'。 d. 在'可能的所有者'中,除非不希望 MSDTC 在特定节点上运行,否则请单击'下一步'。 e. 在'相关性'中,添加 MSDTC IP 地址作为资源相关性,然后单击'下一步'。 f. 在'名称'中,键入 MSDTC 资源的网络名称,然后单击'下一步'。 g. 单击'完成',然后单击'确定'以确认资源已创建。
创建MSDTC Resource
a右键单击'组0',然后单击'新建\资源'。 b. 键入一个名称,如 MSDTC Resource。 c. 在'资源类型'中,单击以选中'分布式事务处理协调器',确认选中了'组0',然后单击'下一步'。 d. 在'可能的所有者'中,除非不希望 MSDTC 在特定节点上运行,否则请单击'下一步'。 e. 在'相关性'中,按住键盘上的 Ctrl 键,同时选中在步骤 2 中创建的'物理磁盘'和'网络名称',然后单击'添加'按钮。 f. 单击'完成',然后单击'确定'以确认资源已创建。 h. 右键单击 MSDTC 资源,然后单击'联机'。
事件服务充当了电子交换机的作用,它负责为在群集节点上运行的应用程序和群集服务组件发送事件,或者将事件发送给它们。事件处理器可帮助群集服务组件将有关重要事件的信息分发给所有其它组件,并且可支持群集 API 事件处理机制。事件处理器执行杂项服务,比如向那些可感知群集的应用程序发送信号事件和维护群集对象。
3 创建SQL2005服务帐户组
eq \o\ac(○,1) 启动Server1 单击开始,指向所有程序,指向管理工具,然后单击 Active Directory 用户和计算机。 eq \o\ac(○,2.) 如果域还未展开,单击加号 (+) 将其展开。 eq \o\ac(○,3.) 右击用户,指向新建,然后单击组。 eq \o\ac(○,4.) 键入组名称SQL SERVER。选中全局组
重复以上4步 分别在创建 SQL agent 和Sql search 两个组
4 SQL2005 安装步骤
打开群集管理器
在群集节点SERVER1上运行SQL2005的安装程序:
点选'服务器组件、工具、联机丛书和示例'出现许可协议,点'我接受许可条款和条件',点下一步,出现安装SQL2005所需的软件组件,由于前面我己安装了,所以这里提示己成功安装所需组件
点下一步,出现安装向导,29个成功。
点下一步,出现输入产品密钥(默认已经填写好)点下一步,出现安装的组件选项,在这里有个最重要的地方要注意,因我们要部署SQL2005数据库群集,所以一定要将'SQL SERVER DATABASE SERVICES的创建SQL SERVER故障转移群集'这个选项选中,否则就不会出现下面的虚拟服务器的选项,也就不会部署成功。这里我们全选
点选高级,进入高级项后就来到了详细的各组件的功能选择,这里可以得到详细的组件信息。根据需要选择组件功能。这里我将SQL的程序文件安装在节点服务器本地硬盘上。点下一步,'实例名'配置中选择'默认实例'。
在此输入SQL服务器的群集虚拟服务器名称,输入SQLSRV2005,这个名称会在DNS服务器SERVER1 记录注册的,点下一步输入群集虚拟服务器的IP地址,这个地址就是以后为客户端提供SQL服务的,填写IP192.168.0.10,点添加,点下一步。
出现选择群集组,由于我这里只有一个群集组,所以只列出一个,下面就是用SQL群集的数据文件存放的位置,这里选取S盘资源盘,注意不要安装在仲裁盘上。
群集节点配置中,选择可用的节点,因为我当前是双节点群集环境,所以安装向导已自动为我选择了配置远程账户,这个只有在安装过程中才会用到该用户名和密码,这是因为,在安装时,系统会自动用此账号和我的节点服务器SERVER2进行同步,这也就是为什么只需在一个节点服务器上安装一次SQL就可以了的原因。
输入服务账号,为了便于管理,最好给此账号另设一个账号专用,点下一步输入群集服务的域组,在此可能是出于以后管理和安全,所以将每个服务设为不同组的用户(此前在域用户管理下创建一个SQL服务组),在此,我输入管理组
身份验证模式中,我选择'混合模式',这和SQL2000是一样的。排序规则我是按照默认选择的。
设置'错误和使用情况报告',这里我没有选择此功能。出现安装报表服务器选项,这里选以后再配置,点下一步
终于到了正式文件的安装正式安装中,会有比较久的准备时间,打开节点服务器server2的任务栏,发现多了好几个任务。
SQL2005群集安装,在安装的过程中,能很方便地查看各节点服务器的安装进度如上图,可以自由地在各节点上来回切换,以察看安装进度。,总算完成了。重新启动两个节点服务器,打开群集管理器
SQL2005的各项服务都起来了,此时活动节点服务器在节点服务器SERVER1上。在DC上安装管理工具,打开后如下图新建数据库TEST,看文数据库存放的位置是在F盘资源盘下。
●测试SQL2005 故障转移 我现在将节点服务器server1关机,以实验在节点服务器server1出问题时,是否能够自动切换到节点服务器server2上,
当SERVER1关机后活动资源会联机挂机 几分钟后完全转到了SERVER2上
系统自动成功的切换到了节点服务器server2上,在管理工具中再建数据库TEST2,建好后如图所示至此,SQL SERVER 2005群集实验成功完成
●与文物信息管理系统的连接
方法1
1 在SQL2005建立空数据库 命名 XXX (例如 sxhm )
2 从SQL2000备份数据库
3 还原到SQL2005 数据库SXHM
4 打开文物信息管理系统 输入 SQL2005服务器IP地址 192.168.0.10
数据库名称 SXHM→保存→确定
方法2
1 在SQL2005上新建新的数据库 名称和SQL2000上需要备份的数据库同名
2 停止SQL2005 服务 将SQL2000的数据文件和日志文件直接复制到SQL2005
数据库目录下 然后启动SQL2005
3 打开文物信息管理系统 输入 SQL2005服务器IP地址 192.168.0.10
数据库名称 SXHM→保存→确定
建议使用方法1
如何卸载 Windows Server 2003 群集上的群集服务
默认情况下,群集服务的文件安装在运行 Windows Server 2003 企业版或 Windows Server 2003 数据中心版的计算机上。在 Windows 的早期版本中,此功能包含在'添加/删除程序'工具中。您无法删除群集服务,但是可以使其恢复未配置的状态:
1.启动群集管理器 (CluAdmin.exe)。
2.用鼠标右键单击节点,然后单击'停止群集服务'()。
注意:如果此服务器是群集中的最后一个节点,请勿执行此步骤。
3.用鼠标右键单击节点,然后单击'退出节点'。
该步骤会使群集返回到其最初未配置的状态。以后,您可以将其重新加入同一群集或其他群集中。
如果无法启动群集服务,或者在删除节点时有困难,则可以手动取消对群集服务的配置:
1.运行 Cmd.exe 程序来打开命令提示。
2.在命令提示符处,键入 cluster node 节点名称 /forcecleanup,然后按 ENTER 键.
注意:如果注册表中不存在群集服务,则该命令不会响应。要创建占位符,请在命令行中键入下面的行,然后按 ENTER 键:sc create clussvc