狠狠撸

狠狠撸Share a Scribd company logo
SQL Server 2000 高可用性群集构建  曾令皆 成都金海洋国际认证教育中心  www.gocean.com.cn
概要 1.  群集介绍 2.  群集方案 3.  服务器群集 4.  群集术语 5.  服务器群集规划 6.  理解 SQL Server Failover 群集 7. SQL Server Failover 群集特性 8.  安装与配置 SQL Server 2000 群集
群集 群集是由一组独立的计算机构成的,这些计算机协同工作以运行一组公用的应用程序,并为客户和应用程序提供类似单机系统的功能。
群集优点 可伸缩性 可管理性 高可用性 高可靠性
可伸缩性 可伸缩性是指我们可以通过增加处理器或计算机的方式不断提高计算机系统承受工作负载的能力 通过协同工作方式组织在一起的多台计算机所形成的群集可以在 群集中添加计算机的方式来提高性能
可管理性 对于最终用户、应用程序和网络来说,多台计算机组成的群集就像一个单机系统,同时为系统管理员提供了单点控制 .
高可用性与高可靠性 群集用来避免单点故障。应用系统可分布在多个计算机上,以获得一定程度的并发能力和故障恢复,并因此提供更高的可用性。 群集中的某台计算机出现故障时,群集中的另外一台计算机会自动接替故障计算机的工作,使应用继续保持运行状态。在客户方是感觉不到故障的。
Microsoft 的群集解决方案 Microsoft 服务器群集( MSCS ) 网络负载平衡群集( NLB ) 组件负载平衡群集( CLB ) Application Center 2000
Microsoft 服务器群集( MSCS ) 服务器群集是一组彼此相互独立、但作为单一系统一同工作的计算机系统(也称作节点)。服务器群集允许用户和管理员将这些计算机作为单一系统来进行访问和管理。
Microsoft 服务器群集( MSCS )
MSCS 的功能 高可用性 故障转移 / 故障恢复 滚动升级 可升缩性 主动 / 被动群集 主动 / 主动群集 可管理性 群集管理器
故障转移 / 故障恢复 故障转移是指 将相关处理过程将某个故障节点上的正在执行应用程序移植到群集中其它健康节点上继续使用,如继续进行打印队列的打印操作 故障恢复是指故障节点修复重新联机后能对群集应用程序实现故障返回 MSCS 能够在不丢失任何与故障应用程序相关数据的前提下对群集上所运行的应用程序进行故障转移与故障恢复管理,并且能够在故障恢复过程中维护用户及应用程序状态
滚动升级 管理员可以把所有的工作负荷转移到一台服务器上,并保持或升级未承担这份工作的服务器。在维护或升级完成并通过测试后,此服务器重新联机并自动重新加入到群集中。在维护或升级群集中的其他服务器时,此过程可以重复。
滚动升级 升级 SQL  Exchange Exchange SQL Server 1 Exchange SQL Server 升级  SQL A B A B A B A B SQL Server Exchange SQL Server 2 4 3
可升缩性 主动 / 被动群集 一个应用同一时刻只能在一个节点上运行 适合无法分割数据的应用 常用于兼容的以前的应用程序 主动 / 主动群集 应用可以被分开同时运行 同一类型资源的多个实例
可管理性 群集使用群集管理器来配置、控制和监视。可以在使用群集服务的   Windows 2000  的计算机上安装群集管理器。也可以从一台 Windows 2000 或者安装了 SP 3  的 Windows NT 计算机上,安装群集管理器工具远程管理   Windows 2000  服务器群集。群集管理器允许通过一个图形化的控制台管理群集对象、创建组、启动故障转移、处理维护和监视群集活动。
服务器群集术语 节点 群集服务 资源 共享磁盘 仲裁资源 组 虚拟服务器
资源 提供服务所需要的资源 磁盘 网络名称 IP  地址 服务器应用程序 每次只能属于一个节点 可能依赖于其他资源,如网络名称一定与 IP 地址相关联 能在群集服务器上进行管理
心跳线通信 群集中的节点定期给群集中其它节点发送心跳信息以表示自己的存在,并允许群集服务检测节点故障、状态改变并且将群集作为一个实体进行管理。 成员信息心跳线使用 UDP  心跳信息每约 1.2 秒一次 失败 丢失 4 次心跳信息  ( 约 5 秒 .)
?
仲裁资源 作为群集系统数据的固定存储区 这些数据以恢复日志的形式存放,其中包含用户对群集所作的所有修改的详细信息 当群集中活动节点故障时,群集中新启动的节点可通过仲裁资源的恢复日志得到原活动节点所做的修改 用于维护群集数据完整性 尽管节点之间可能无法通信 首要的任务是数据完整 Windows 2000 所提供的可充当仲裁资源的唯一资源类型是物理磁盘资源
组 组是由一组相关的或从属的资源组成 一个组同一时刻只能驻留在一个节点上 组故障转移基本单位。即群集中资源转移时,是整个组从一个节点转移到另一个节点,而不能只把组中一个资源进行转移。 可以通过群集服务管理器建立多个组,每个组包含不同应用的资源
组
虚拟服务器 虚拟服务器是包括如下信息的组: 网络名称资源。  IP  地址资源。  由虚拟服务器的客户端访问的应用程序。  虚拟服务器在以下几方面与物理服务器的作用相同: 允许访问网络资源。  以唯一的服务器名称公布给网络客户。  与网络名称和  IP  地址相关联
虚拟服务器 Virtual Server 1 IP address: 1.1.1.4 Network name: VServ1 Clustered SQL Server Cluster IP address: 1.1.1.1 Network name: MyCluster Virtual Server 2 Clustered IIS Server   IP address: 1.1.1.5 Network name: VServ2 Virtual Server 3 Clustered Exchange Server IP address: 1.1.1.6 Network name: VServ3
服务器群集规划 服务器群集主要保留客户对应用程序和系统服务的访问,如用于消息通讯的  Exchange 、用于数据库应用的  SQL Server  以及文件服务。
服务器群集规划 B A
构建 SQL Server 2000 高可用性 FailOver 群集
理解 Failover 群集 Failover 群集是指操作系统和 SQL Server 2000 一起工作,在应用程序、硬件或者操作系统失败时提供故障转移 / 故障恢复。 SQL Server Failover 建立在 MSCS 基础上 Failover 群集不支持网络负载平衡
理解 SQL Server Failover  监测到故障时强制停止在故障节点上的服务并在另一成员节点重起服务以实现故障恢复 到故障节点的所有连接将被断开,并可以很快自动重新和另一节点建立连接 服务器名称及 IP 地址不变 ( 客户端透明 ) IP 地址 failover 由群集服务中的 IP 地址资源 failover 实现 在客户端应用程序中增加连接重试的逻辑 自动的服务器端事务恢复 因为数据及事务日志文件也同时 failover( 由群集服务中的物理磁盘资源 failover 实现 ) 对 SQL Server 而言故障恢复与通常的服务停止 / 启动相同
Failover 群集支持提供的特性 最短的当机时间 快速的 failover,  除去数据库启动恢复及网络资源 failover, 通常不超过 1 分钟 客户端的透明访问 基于 IP 地址的 failover 提交的数据库事务不会丢失 与通常的 SQL Server 服务重启动相同
Failover 群集支持不能提供的保护 数据库错误 由于只有一份文件 ( 定期备份检查数据库一致性 ) 误操作 只有从备份恢复 磁盘系统失效 由于群集服务依赖磁盘系统 ( 使用高可靠性的磁盘系统,专门的冗余及高可用性解决方案 ) 自然灾害 ( 群集通常在同一地点实施 ) 由于连接磁盘系统的限制 ( 远程群集 , SAN 技术 )
Failover 群集模式 Active/Passive SQL Server 在“主”节点运行 ,  次节点等待直到 failover 发生 Active/Active 只有当需要多个 SQL Server 实例并考虑提高服务器的利用率 但影响了性能及可用性 SQL Server  在多个节点上同时运行访问不同的数据库 ( 互相独立 SQL Server 群集功能并不提供负载平衡及数据共享 )
Active/Passive Clustering RAID Array Windows 2000 Primary  Node Secondary  Node VirtualServer1 Client Windows 2000 SQL Server
Active/Active Clustering Windows 2000 Primary Node for //VirtualServer1 Secondary Node for //VirtualServer2 Primary Node for //VirtualServer2 Secondary Node for //VirtualServer1 //VirtualServer1 Windows 2000 Client Client //VirtualServer2 SQL Server SQL Server
SQL Server 2000 新增的群集功能 支持多个 IP 地址 支持 SQL server( 只有 2000 及以后版本 ) 及操作系统 (NT4/Windows 2000) 的滚动升级 支持微软的全文检索服务 全面支持节点灾难恢复 方便  的添加 / 移除节点 Windows 20000 Advanced Server  支持两个节点, Windows 2000 Datacenter Server 可支持多达四个节点
更好的群集集成 ( 服务包 ) 不再需要“ uncluster” 首先在备份节点安装服务包 Failover 到备份节点 在余下的节点安装服务包 使安装服务包所需的当机时间最小化以提高系统的可用性
更好的群集集成 ( 数据库引擎及工具 ) 避免在非共享的磁盘上创建数据库 避免在非共享的磁盘上创建全文检索索引 公司管理器 重设所有服务的启动账号及密码 重设所有群集中所有节点上的服务的启动账号及密码 使用 Cluster API 操作 SQL Server 资源组  而不是停止服务引起 failover
易用性 高度自动化的安装过程 : 只须运行 SQL Server 安装程序 全新的设计 : 简单的修复及维护 维护修复集成在安装程序中
SQL Server 虚拟服务器组件
安装 SQL Server 群集
安装 SQL Server 之前 在测试环境中预先演练 如果在生产系统中安装 ( 或服务包安装 ) 的时间表紧迫 安装并确认 Windows 群集服务 用域账号登陆 Windows 并确认在所有成员节点上有足够的权限  比如使用一个在所有成员节点上都是 Administrators 组成员的账号 检查是否存在 IP 地址 / 网络名称冲突 不要在 Windows 终端会话中运行安装程序
硬件需求 硬件必须在 HCL 列表中 : http://www. microsoft .com/ hcl 按照硬件供应商提供的手册配置硬件  每节点最少 2 块网卡 SCSI  或  SAN  共享磁盘 仲裁盘 每虚拟服务器一磁盘
软件需求 操作系统 :  WinNT4 Enterprise Edition Win2k Advanced Server Win2k Datacenter Server 磁盘 ;  分区 基本磁盘 NTFS  分区 域角色 所有节点必须是同样的域角色 群集服务帐号
安装步骤 http://www. microsoft .com/windows2000/ techinfo /planning/server/ clustersteps .asp
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集 服务器准备 域控制器 两台能够安装和配置群集服务的服务器 将两台服务器都加入到域中
安装 Windows 2000 服务器群集
网络配置 ? IP 地址 域控制器 192.168.0.99 DNS 服务器 192.168.0.99 节点 1 ( CLUSTER1 ) Public 网卡 192.168.0.100 节点 1 ( CLUSTER1 ) heartbeat 网卡 10.0.0.1 节点 2 ( CLUSTER2 ) Public 网卡 192.168.0.101 节点 2 ( CLUSTER2 ) heartbeat 网卡 10.0.0.2
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 Windows 2000 服务器群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
安装 SQL Server 2000 群集
检验安装 是否群集服务已启动 文件 / 目录已创建 注册表项已经生成 缺省组 手工移动组 群集管理器
基本信息 (SQL Server 安装 ) SQL Server 2000 安装问题 sqlstp.log  对于安装排错  sqlclstr.log  对于 SQL Server 2000 群集支持安装排错 sqlsp.log  对于服务包安装排错 后缀一个数字以避免覆盖之前的安装日志 ( 用 sql*.log 找到所有的文件 ) 在 Windows 安装目录下 (%WINDIR%) SQLDiag 报告 SQL Server 错误日志
如何着手 通常首先检查 SQL Server 2000  安装日志 InstallShield 的背景知识 如果安装日志显示 SQL Server 服务出错,检查 SQL Server 错误日志 如果 Windows 群集服务出错,通常检查 Windows 事件日志 群集日志
阅读并解释日志 基本技术及方法 十六进制 / 十进制数字转换 解释错误号 (net helpmsg) Technet, MSDN 以及 Books Online
灾难恢复场景 成员节点失效 在完好的节点上运行 SQL Server 2000 安装程序  移除失效的节点 ( 不超过 1 分钟 ) 重新建立失效的节点 更换硬件,安装 Windows 及群集服务等 运行 SQL Server 2000 安装程序加入重建的节点  安装程序完成所需的配置 仅需数分钟… 修复无需系统当机
谢谢大家
?

More Related Content

SQL Server 2000 高可用性群集构建