windows MSCS+oracle ofs 双机

来源:百度文库 编辑:神马文学网 时间:2024/05/02 18:44:39
windows2003+oracle ofs 双机
硬件配置:
两台HP服务器,3G CPU ,2G内存, C盘20G ,D盘50g,双网卡,共享存储为msa1000系列,容量为820g。
软件配置:
Windows server 2003 企业版,32位系统。(集群中所有机器安装)
Oracle ofs3.3.4  (集群中所有机器安装)
Oracle9i   (集群中所有机器安装)
注意:操作系统必须为2003企业版或2003 datacentre版。
系统配置参数:
节点1(主节点)
节点2(备节点)
主机名
qhltdb2
qhlt-1mc
Public ip
10.251.8.55/24
10.251.8.56/24
Private ip
11.11.11.1/24
11.11.11.2/24
集群名
cluster
集群IP
10.251.8.144/24
Oracle集群名
mycluster
Oracle集群IP
10.251.8.60/24
系统结构:
具体安装步骤:
1,  安装2003企业版操作系统,两机均使用administrator用户登陆,密码也保持一致。
2, 配置windows MSCS。
在配置windows群集之前,需配置好网络,共享磁盘,以及windows域。
网络配置:
为了方便配置,我们将公用网卡重命名为public,私有网卡重命名为private
并将IP配好。私有网卡之间用交叉线相连。且关闭私有网卡的tcpip的netbios设置。
配置网络的时候,微软推荐把共享存储关闭,但不是必须。
域设置:
群集中的所有节点必须是同一个域的成员,并可以访问域控制器和DNS服务器。可以通过两种方式解决:
1,  双节点中,两节点均为域控制器,主节点为主域控制器及DNS服务器,备节点为额外域控制器,备节点的DNS服务器指向主域控制器。
2,  两节点均为同一域中的成员服务器。
我们选择的第一种方式,域名自选。此例为qhlt.com
将主节点配置为域控制器,使用配置您的服务器向导,根据步骤 一步一步继续,在DNS转发一项选择否。还要注意不要配置VPN防火墙!这个过程大概需要15分钟。配置完重启计算机。
然后配置备份节点为额外域控制器,在备机的cmd下输入dcpromo,根据步骤继续,选择配置为额外域控制器,其他继续,这个过程大概要10分钟。完后重启机器。
确定两台计算机重启后 是以域用户administrator 登陆操作系统。
共享磁盘配置:
1,  启动主节点,关闭备节点,开启共享磁盘
2,  在主节点上配置共享磁盘。
3,  打开我的电脑-管理-磁盘管理
4,      右击“未分配的磁盘空间”。
5,  单击“新分区”。
6,  将启动“新建分区向导”,单击“下一步”。
7,  选择“主分区”的分区类型,单击“下一步”。
8,  默认将分区设为最小。单击“下一步”。(建议采用多个逻辑磁盘,而不是在一个磁盘上采用多个分区。)
使用下拉框更改驱动器盘符。使用在字母表上比默认列举的字母更靠后的驱动器盘符。通常,驱动器盘符“Q”可以用于仲裁磁盘,而“R”、“S”等字母则用于数据磁盘。
9,  使用NTFS格式化分区。在“卷标”方框中,键入该磁盘的名称。例如:“仲裁”如下方图8所示。关键是要对共享磁盘分配驱动器标签,因为在还原磁盘时这会大大减少故障排除时间。微软推荐仲裁盘为物理上的单独磁盘,但不是必须。
根据以上步骤 继续配置共享 分区,例如S:\,微软推荐共享逻辑驱动器至少为两个。
1.     启动“Windows Explorer”。
2.     右击一个共享磁盘(比如:“驱动器Q:\”),单击“新建”,然后单击“文本文档”。
3.     确认您可以顺利写入磁盘,并创建了文件。
4.     选择所创建的文件,然后按“Del”键,将其从群集磁盘删除。
5.     对所有群集磁盘重复步骤1至4,确认可以从第一个节点正确地访问它们。
6,  关闭第一个节点,开启第二个节点,并重复步骤1至4,验证磁盘访问和功能。如果不能访问,在备节点上重新执行共享磁盘配置步骤。具体步骤要和在主节点上执行步骤一致,包括各种参数等。
配置集群:
关闭除主节点以外的所有节点,开启共享盘阵。主节点以域用户登陆。
在主节点上配置群集:
1.     依次单击“开始”、“所有程序”和“管理工具”,然后单击“群集管理器”。
2.     当出现“打开群集连接向导”提示时,在“执行”下拉列表中,单击“创建新群集”,如下方图9所示。
3.     确认您具有配置群集所必需的前提条件,如下方图10所示。单击“下一步”。
4.     键入群集的唯一名称(最多15个字符),即域名,qhlt.com,然后单击“下一步”。(在下方图11所示的例子中,群集被命名为  “Cluster”。
5.     如果您在本地登录一个不属于“具有本地管理特权的域帐户”的帐户,向导将提示您指定一个帐户。群集服务不会使用该帐户进行启动。即adminisrator,密码 :
注意:如果您拥有正确的凭证,步骤5所提到的提示,如图12所示,可能不会出现。
6.     由于可能对群集进行远程配置,因此您必须确认或键入将要作为第一个节点创建群集的服务器的名称,如下方图13所示。单击“下一步”。
为群集中第一个节点的计算机名称。
7.     下方图 14显示“安装”程序现在将分析节点,查找可能导致安装出现问题的硬件或软件问题。检查所有警告或错误信息。您还可以单击“详细信息”按钮,了解有关每个警告或提示的详细信息。
图 14. “安装”程序分析节点,查找可能存在的硬件或软件问题。
8.     键入唯一的群集IP地址(本例为:10.251.8.144)该地址需要与计算机公网IP处于一个网段,然后单击“下一步”。
9.     键入在预安装时创建的群集服务帐户的“用户名”和“密码”。(在下方图16的例子中,用户名为:“Cluster(群集)”)在“域”下拉列表中选择域名,然后单击“下一步”。
这时,“群集配置向导”将验证用户帐户和密码。
因为当时我做的时候并没有设置群集用户,用的是域的管理用户,所以如果出现这一步,也使用该administrator帐户。
. 向导提示您提供在预安装时所创建的帐户。
10.  检查“摘要”页面,如下方图17所示,确认所有将用于创建群集的信息均准确无误。如果需要,您可以使用仲裁按钮,更改由默认自动选择的磁盘指派的仲裁磁盘。
本屏幕上所显示的摘要信息可用于在出现灾难恢复状况时,重新配置群集。建议您保存并打印一份硬拷贝,与服务器上的更改管理日志保持一致。
图 17. 建议采用的“群集配置”页面。
11.  检查所有在群集创建过程中遇到的警告或错误。具体操作是单击加号查看更多信息,然后单击“下一步”。出现在“创建群集”页面的警告和错误如图18所示。
图 18. 出现在“创建群集”页面上的警告和错误。
12.  单击“完成”,结束安装。下方图19显示最终的步骤。
图 19. 设置一个新的服务器群集的最终步骤。
配置第二个节点
在另一个节点上安装群集服务所需的时间要比花在第一个节点上的时间少。“安装”程序基于第一个节点的配置,在第二个节点上配置群集服务网络设置。与此同时,您还可以通过远程操作为群集添加多个节点。
注意:对于本部分,开启节点1和所有的共享磁盘,然后开启所有其它节点。这时,群集服务将控制对于共享磁盘的访问,以便杜绝任何可能破坏卷的机会。
1.     在节点1上打开“群集管理器”。
2.     单击“文件”,单击“新建”,然后单击“节点”。
3.     将启动“添加群集计算机向导”,单击“下一步”。
4.     如果您没有通过正确的凭证进行登录,将要求您指定一个对群集中所有节点具有管理权利的域帐户。
5.     输入您要将其添加到群集的节点的机器名称,单击“添加”。重复该步骤,如下方图21所示,添加您想要的其它节点。当您添加完了所有的节点,单击“下一步”.
6.     “安装”向导将对所有节点执行分析,以便确认它们得到了正确的配置。
7.     键入用于启动群集服务的帐户密码。(administrator)
8.     检查所显示的用于确认的摘要信息。摘要信息将用于在其它节点加入群集时对其进行配置。
9.     检查群集创建过程中遇到的所有警告或错误,然后单击“下一步”。
10.  单击“完成”,结束安装。
测试:
测试:启动“群集管理器”,右击一个资源,然后单击“启动故障”。该资源将进入故障状态,然后将重新启动并在同一节点上回到联机状态。
预期结果:资源将在相同的节点上返回联机状态
测试:在相同的资源上,再执行上方“启动故障”测试三次。在第四次故障时,资源将对群集中的另一个节点执行故障转移。
预期结果:资源将针对群集中的另一个节点实施故障转移
测试:将所有资源转移到一个节点上。启动“计算机管理”,然后单击“服务与应用程序”下方的“服务”,停止群集服务。在另一个节点上启动“群集管理器”,确认所有资源均在该节点上正确地执行了故障转移并返回联机状态。
如果测试共享卷组等群集组的切换没有问题,则继续下一步。
安装ORACLE软件
1,  打开两台机器,共享磁盘在主节点上可见。(也可能在备节点,但只能在一个节点上可见)
2,  在主服务器上安装Oracle,选择自定义安装,安装过程不创建数据库,安装结束重新启动主服务器;
3,  在从服务器上安装Oracle,选择自定义安装,安装过程不创建数据库,安装结束重新启动从服务器。
4,  如果安装的是oracle9201,建议升级数据库先。9204或9206均可。
创建数据库
在主服务器上创建要添加到集群中的数据库。注意 Control 文件、redo log files 和 data files 必须创建在磁盘柜的共享分区上;初始化参数文件也要放在磁盘柜上。即将init.ora放在共享磁盘,只是将该文件内容修改为:spfile=S:\oradata\spfile{SID}.ora。
创建数据库的具体过程
1,在a机上创建数据库,数据文件 控制文件 ,redo日志文件,初始化参数文件,spfile等均放在共享磁盘上,例如S:\oradata。建完后,测试a机上启动数据库成功。
2,关a机,讲共享磁盘切换到b机,将在a机上建库的所有数据文件所在目录改名(或删除),例如改为S:\oradata1,然后在b机上按相同参数建库,同时将所有文件放在共享磁阵上。然后在b机启动数据库。
3,关b机,切换磁盘到a机,启动数据库,启动过程可能会报密码文件损坏,将b机的密码文件cp到a机,再次启动,确认数据库可正常启动。
4,关a机,切换到b机,再次确认可正常启动数据库。然后将磁盘切换到a机。
5,将a,b两机器上的oracleserviceSID,oraclelistener服务设置为手动启动。因为这两个服务是由ofs来控制的。
6,建库过程中不要配置lisner和tns等网络参数。
安装OSF
安装Failsafe要在登陆域(不能以本机登陆)的方式,不然在验证数据库时会出错。
Failsafe的版本要对应,否则在验证单机数据库时无法通过。
在主服务器上安装FailSafe3.3,安装完重新启动主服务器;
再在从服务器上安装FailSafe3.3,安装完重新启动从服务器。
在安装过程中需要输入   域名/用户;密码接受验证。用户为administrator。
注:在安装完 fail safe 后,Windows 2000 中的群集管理器中 群集配置 –〉 资源类型 –〉 下会出现两个资源类型:Oracle Database 和 Oracle TNS Listener,两者使用的资源 DLL 都是 FsResOdbs.dll 。
如果没有,启动Oracle Services for MSCS服务,或进行verify cluster后将会出现。
在两台机器上修改HOSTS文件
在目录c:\winnt\system32\drivers\etc\hosts  内容如下:两台机器上相同
10.251.8.55   qhltdb2
10.251.8.56   qhlt-1mc
10.251.8.144  cluster
10.251.8.60   mycluster
然后在两台机器上分别ping以上地址或主机名,确保解析正确。
集群配置
1、  在主节点上打开 Oracle Fail Safe Manager
Start -> Programs -> OraHome91> -> Oracle Fail Safe Manager
打开后出现 Add Cluster to Tree 对话框,在该对话框里输入 CLUSTER 名称,会提示输入在域里有管理权限的用户名和密码;输入后会出现 Verify Cluster 对话框,对该集群各项资源进行有效性验证;
2、  在每台节点机上检查是否有服务 OracleMSCSServices,并启动该服务,该服务为手动。
3、  在每台节点机上启动集群管理器(启动 -> 程序 -> 管理工具 -> 集群管理器),在 Cluster Group 检查是否有 Oracle Services for MSCS 这一项;并检查 Resource Types 中是否有 Oracle Database 和 Oracle TNS Listener。
以下步骤只需在主节点执行:
4、  在 Oracle Fail Safe Manager 中的Groups 菜单里选择 Create;打开 Create Group Wizard 后可以设置 failover 和 failback 策略,并自动打开 Add Resource to Group Wizard 可以向组添加virtual address(选择Resources,然后Add to Group)。
首先选择菜单:
出现界面,输入组名:
点击下一步,选择是否failback,建议不选择failback,此选项将允许回切;选择prevent将使用默认的failback模式。
点击下一步,选择优先级别:
按完成结束组的创建。
向组里添加虚拟地址
5、  在 Troubleshooting 菜单上选择 Verify Standalone Database 验证 Oracle数据库以及 Oracle Net 配置,该命令确认 Oracle Fail Safe 可以访问数据库,并且 standlone 数据库位于共享分区上;此步骤可能会提示 你 是否需要删除 备份节点上的duplicate 库,选择是 删除duplicate库。此步骤主要是用来发现验证配置,提示你修改错误。
另外:由于9i以后是以spfile启动,所以下图中的Parameter 的值可以输入共享阵列上spfile文件,或者修改阵列上init.ora文件内容为spfile=/S:\oradata\spfile{SID}.ora,当然在配置完ofs后,还可以通过ofs管理工具修改,但未测试过。
选择是,删除duplicate库。
6、  在 Resources 菜单上选择 Add to Group,然后选择 Oracle Database打开 Add Resource to Group Wizard,该向导用来将 single-instance Oracle database server 配置为基于 MSCS 的高可用性数据库服务器;
选择菜单:
出现界面,选择OracleDatabase:
出现配置集群界面:
安装成功后,出现如下图提示,则安装成功完成。
安装成功后,关于数据库在注册表中的配置,从服务器上的注册表将会自动和主服务器同步。
注:在 FailSafe 里添加组mycluster并将数据库群集添加后,在群集管理器里也增加了该组,组包含的内容有:
3.10测试
1)        手工切换主从机
从主机切换到从机,切换时间为50秒,应用程序略有停滞感,切换成功后应用恢复正常。
2)        非正常关机
非正常关掉主服务器,可以正常切换,切换时间为57秒,应用程序略有停滞,切换成功后应用恢复正常。
3)        拔掉主机应用网线
拔掉主机应用网线之后,可以正常切换,切换时间为50秒,应用程序略有停滞感,切换成功后应用恢复正常。
4)              在主机上正常shutdown immediate 数据库,但却不能关闭,数据库会自动重启动
如果出现不断在主机上重新启动数据库的情况,那需要在ofs中修改mycluster组中数据库的restart策略属性。
在安装中可能出现的问题:
1,  如何卸载ofs?
卸载ofs使用安装程序所带的oui执行卸载产品就可以。
2,  如何删除ofs在MSCS中创建的组?
先卸载ofs产品,然后将组中的所有资源删除,之后就可以删除组了。再在cmd下运行
sc delete 服务名 删除由ofs创建的oralce群集服务oraclelisnerfsmycluster。至此,ofs在计算机上基本上删除,资源类型里面的两个选项可以不用理会,在重新装好ofs后,还可以继续使用。
3,除了clusterservice 服务为自动启动,oralceservice{sid} ,oraclelisner ,oracleMSCSservice,oraclelisnerfsmycluster 服务均为手动启动,这些服务由ofs控制!
Oracle Fail Safe安装步骤
硬件环境:两台Dell 2950
磁盘阵列:DFT502 在操作系统认到共享的盘整后只需要在主服务器上格式化,备用服务器不能再次格式化共享盘阵,需要需要修改盘阵的逻辑盘符与主服务器保持一致。设置共享盘阵时服务器只能有一台开启,另外一台关闭。
软件环境:
操作系统:Microsoft Windows Server 2003 Enterprise Edition或Windows Server 2003 Datacenter Edition。 注意:如果专业版,否则在安装MSCS报操作系统版本的错误。安装专业版时,使用的是同一个序列号,使用不同的序列号安装MSCS没有测试,我认为不是这个原因,因为企业版使用的是相同的序列号。
数据库:Oracle 9.2.01
高可用软件:MSCS、Oracle Fail Safe ofs334Kit_32bit
说明:本文档是建立在 MSCS 已经正确安装和配置基础上的,详细的安装文档请“参考Windows2003服务器在IP-SAN下MSCS群集配置指南.pdf”(产品中心已经提供)。
Oracle Fail Safe 是架构在 Microsoft Cluster Server(MSCS)上的一个 Oracle 产品,为提供 Oracle 的一些产品(数据库、Oracle Application Server 等)提供高可用性,因此在安装此产品之前,必须正确安装和配置 MSCS。
安装步骤:
1、    在节点一上安装 Oracle 9.2.01;
2、    重新启动节点一;
3、    在节点二上安装Oracle 9.2.01;
4、    重新启动节点二;
注意:安装过程中不能建立数据库实例、监听,只安装oracle系统,安装路径两台服务器一致,安装路径在服务器的本地磁盘上。 两个节点打补丁:两个节点的oracle系统安装安装完毕后,在每个节点分别停止所有的ORACLE服务,安装补丁,补丁的安装路径必须与ORACEL系统的路径保持一致。 5、   在节点一上创建要添加到集群中的数据库,新数据库不要配置 Net8,即不要配置 listener.ora 和 tnsnames.ora 文件。 注意: Control 文件、redo log files 和 data files 必须创建在磁盘柜的共享分区上;其他文件可以安装在本地磁盘,也可以安装在磁盘柜的共享分区上。详细步骤参考附录1: 说明:这一步最好不做,两台服务器上安装OFS完毕后,再建立数据库,否则建立配置OFS过程中可能失败。
6、    在节点一和节点二的注册表中相应位置添加第五步所创建的数据库的 ORACLE_SID;
7、    在节点一上安装 FailSafe 3.3;
8、    重新启动节点一;
9、    在节点二上安装 FailSafe 3.3;
10、    重新启动节点二;
注意:Oracle FailSafe必需安装在独立的路径下,不能与ORACLE系统一致。
11、    在两台机器上修改文件c:\windows\system32\drivers\etc\hosts 如下:
127.0.0.1
192.168.10.1   clunode1 (节点1)
192.168.10.2   clunode2 (节点2)
192.168.10.100   mycluster (MSCS Cluster 的别名,也就是虚拟 IP的别名)
192.168.10.101   client1   (Oracle 集群使用的 IP 和网络名称)
注意节点上listener 使用的 IP 地址应该是虚拟 IP;
12、    打开 Oracle Fail Safe Manager
Start -> Programs -> OraHome91> -> Oracle Fail Safe Manager
打开后出现 Add Cluster to Tree 对话框,在该对话框里输入 CLUSTER 名称,会
提示输入在域里有管理权限的用户名和密码;输入后会出现 Verify Cluster 对话
框,对该集群各项资源进行有效性验证;
13、    在每台节点机上检查是否有服务 OracleMSCSServices,并启动该服务;
14、    在每台节点机上 启动集群管理器(启动 -> 程序 -> 管理工具 -> 集群管理器),在 Cluster Group 检查是否有 Oracle Services for MSCS 这一项;并检查 Resource Types 中是否有 Oracle Database 和 Oracle TNS Listener。
15、    在 Oracle Fail Safe Manager 中的Groups 菜单里选择 Create;打开 Create Group Wizard 后可以设置 failover 和 failback 策略,并自动打开 Add Resource to Group Wizard 可以向组添加virtual address(选择Resources,然后Add to Group)。
16、    在 Troubleshooting 菜单上选择 Verify Standalone Database 验证 Oracle数据库以及 Oracle Net 配置,该命令确认 Oracle Fail Safe 可以访问数据库,并且 standlone 数据库位于共享分区上;
这一步也可以不做,17中会自动执行16的验证。
17、    在 Resources 菜单上选择 Add to Group,然后选择 Oracle Database打开 Add Resource to Group Wizard,该向导用来将 single-instance Oracle database server 配置为基于 MSCS 的高可用性数据库服务器;
注意:在配置OFS时,指定oracle的启动参数是一定要pfile,使用spfile报错,可能是oracle的bug。在OFS和oracle的高版本中没有测试,使用spfile是否报错不能确定。
其他说明:
在安装完 fail safe 后,Windows 2003 中的群集管理器中 群集配置 –〉 资源类型 –〉 下会出现两个资源类型:Oracle Database 和 Oracle TNS Listener,两者使用的资源 DLL 都是 FsResOdbs.dll 。
在 FailSafe 里添加组 oragroup 并将数据库群集添加后,在群集管理器里也增加了该组,组包含的内容有:IP Address 192.168.101.71、Network Name oradb、Disk R:、OracleOraHome92TNSListenerFslscsi9201 和 oradb(数据库实例名)
从单台IBM x服务器升级为MSCS+OFS的HA:
升级前: 一台服务器跑Windows 2003 entERPrise server + SQL SERVER + Oracle 10g R1
先增加一台同样服务器,加一个IBM的阵列,配置HA:
配置存储和域,心跳网络由另一人完成,共享存储就划一块盘 : Quorum就一块盘,
第二个节点是将第一台系统Ghost过去,然后改名,改IP的,免了安装Oracle软件等
我来配置MSCS+OFS(第一次玩这个,),以下是简要步骤:
网络IP对应:
服务器                  网络类型:                            ip地址
serverA                Public                            192.168.3.101
serverA                HeartBeat                      192.168.6.1
serverB              Public                             192.168.3.102
serverB             HeartBeat                        192.168.6.2
MSCS配置: 群集名: HACLUSTER  ; 群集地址: 192.168.3.1
OFS配置  : OFS名称: HAOFS       ; OFS地址: 192.168.3.103
1. 配置MSCS
关闭serverB,只启动serverA,
a.
开始 -->管理工具-->群集管理器,从对话框中选择创建群集,根据向导创建群集 : HACLUSTER
b.  serverA 配置完成后,这时才可以启动serverB,同样选择开始 -->管理工具-->群集管理器,
这次是添加节点到群集
出现群集添加节点向导,并输入群集或服务器名,将serverB加入到群集.
--需要输入管理员的域用户名 / 密码
--MSCS就配置完成啦.
2. 配置OFS
a. 关闭serverB,只启动serverA ,
安装ofs, 这个OFS必须安装在自己的目录,并且不能在共享磁盘,而且每个节点安装目录要相同.
安装过程会创建OracleMSCSServices,
安装完成后重新启动系统,第一个节点就安装完成了(记住这个过程其它节点是关闭的哦).
b. 第一个节点启动完毕后,这时可以启动第二个节点serverB, 然后在serverB上安装OFS,记住安装目录和第一个节点相同.
安装完后重启,记得要等到完全启动完毕.
c. 将以前在ServerA上运行的数据库文件(datafile ,control file , online logfile)迁移到共享盘:Q
这个过程简单,先关闭并Mount数据库,然后rename来修改.然后启动数据库,确保正常启动.
d. 创建init 文件,密码文件,传到第二节点,确保一致.
e. 登入Oracle fail safe Manager, 这里需要登入群集,输入管理员用户和密码即可,根据向导验证群集
f.进入Fail Safe Manager后,可以看到ServerA节点下的Standalone Resource下有自己配置的TNSNAMES的名字,
选择本机数据库的那个,点右键,并选择:Verify Standalone Database.
这时,需要输入数据库名字
g. 创建OFS的资源组,可以从MSCS那里创建,但推荐就在Fail Safe Manager中创建:
在OFS中,点击GROUPS,选择创建资源组,输入资源组的名称如:dbresource,选择Fail back策略.
后续要给IP地址:192.168.3.103
h. 将数据库添加到资源组:从当前的节点的Standalone resource中,右键点击数据库,选择Add Resource to Group,
然后选择资源类型为: Oracle Database,
资源组为上步创建的资源组,
然后是instance name ,database name
参数文件: 这里是init文件,不能是SPFILE.
这个过程比较长,要创建新的LISTENER.ORA,TNSNAMES.ORA文件,并在第一,第二节点分别启动(自动完成啦)
这时的监听就变了IP地址了,使用了HAOFS的地址(192.168.3.103),以前配置的连接数据库的地址需要改变  .
到这里就配置完成了OFS了.可以试着关闭第一节点,应该会顺利的切换到第二节点.