admin 管理员组

文章数量: 887021


2024年3月5日发(作者:汉字ascii码是什么码)

ESXi server+Starwind+Windows Server 2008 Failover cluster+Oracle 10gR2搭建Failsafe HA环境实验过程

作者:心尘

msn: rgzwlrs@

QQ:23389016

一、实验准备

实验环境如下:

HP ML580 G6服务器一台,安装Vmware esxi server 4.0.0

笔记本一台,安装vSphere Client 4.0.0做远程管理

在esxi server上虚拟三台服务器,其中两台做server 2008 failover以及oracle failsafe集群,另外一台安装starwind作为iscsi给集群提供外接共享存储。

注:选择starwind之前,曾尝试openfiler以及freenas软件,但前者在windows下发现不了target,而后者在添加target时,服务端均会提示内存不足,只能选择了提供30天免费使用的starwind。

Windows server 2008、Windows server 2003、oracle 10gR2、oracle Failsafe 3.4.2

二、在Esxi Server上创建虚拟机

此部分中文文档很多,在此略过。

三、主机名及IP地址规划

Server 2008 集群

主机1

主机2

windows集群名

oracle Failsafe集群名

Iscsi服务器

Dc1

Dc2

oracluster

mycluster

starwind

public

Heart

public

Heart

192.168.100.51

192.168.1.1

192.168.100.52

192.168.1.2

192.168.100.60

192.168.100.1

192.168.100.100

四、创建Server 2008 Failover cluster

1、创建AD,此部分文档较多,略过。

2、在另外一台服务器上安装starwind,并创建两块共享盘,大小分别为256M和5G,此部分可以参考starwind帮助文档,注意在创建磁盘的时候需要勾选cluster功能。

3、在要组成集群的服务器上添加故障转移集群功能。

注:在Server 2008中,集群并不是直接出现在管理工具中,而是作为功能的一部分需要单独添加。具体操作为右键我的电脑-管理-功能-添加功能-故障转移集群。

4、将Iscsi磁盘连接到windows

1)使用windows 2008自带的iscsi软件连接starwind服务器

2)发现目标后,登录目标连接并使计算机启动后可以自动连接到该目标。

3)使这两块磁盘联机并格式化为NTFS系统,并指定驱动器号分别为Q和S盘。

4)关闭第一台服务器后切换到另外一台服务器并重复第一台服务器的连接步骤,不同的是连接到磁盘后发现已经格式化完成,仅需要更改驱动器号为Q和S即可。

5、创建集群

这部分多抓了些图片,目前网上能搜到的server 2008 failover cluster资料并不是很多。

注:这里如果两台服务器都添加了故障转移集群动能,只要查找并选择了其中一台服务器,系统便会自动把两台服务器都添加到选择列表中。

可以看到验证过程,2008的cluster优点在于即便测试不通过,在继续安装后可以继续在资源中把共享盘、心跳等资源添加到集群中并工作,而2003的多数情况下是需要重新装系统了。

6、设定集群共享仲裁盘

7、验证集群网络设置

其实这部分2008的集群已经自动配置好了,而03下我们一般需要指定专用网络和公共网络。比较奇怪系统是如何进行判断的,难道是因为我在heart网卡上禁用了netbios和dns后缀的缘故?不管怎么样,这是08的一大进步。

可以看到heart网络连接上自动取消了允许客户端通过该网络连接

而public网络上自动勾选了允许客户端通过该网络连接。

五、创建oracle failsafe集群

1、检查DNS。

这部分不是必须,因为在创建集群的过程中,很可能需要修改两台服务器的hosts文件,在其中添加主机名和ip地址的对应关系。可以尝试下,由于其他dns已经自动添加,这里需要添加failsafe集群的A记录:mycluster—192.168.100.1

2、安装oralce 10gR2

这里需要注意的是oracle的安装目录,是在本地磁盘而不是共享存储,并且在安装的过程中不能创建数据库,而是在安装完成后进行创建。数据库的位置是在共享磁盘。

要在两台服务器上分别进行一次安装,并且安装的目录要完全相同。

安装过程略。

3、使用 dbca创建数据库

先来看看这个报错:

ORA-12560: TNS协议适配器错误

貌似监听没有设置,但是集群配置到现在还没有到配置监听的时候,查了很多资料,最后在一个零回复的帖子里找到了解决办法:、这两个文件需要再2003兼容模式下运行!修改后果然可以安装了。这也是许多人在2008下不能安装oracle 10g的原因所在。

数据库创建完成后,需要将安装目录D:oracleproduct10.2.0db_1下的admin文件夹拷贝到共享磁盘S上,因为在集群的创建过程中,需要用到数据库实例的初始文件,在本实验中,我的文件位置及名称为S:.23

4、安装 OFS

在节点 1 上,安装 OFS。

注:在 OFS 3.4.1.4 版本中,必须重启操作系统;在 OFS 3.3.4 版本中,则未提示重启系 统。为确保可靠,可都重启操作系统。

重启操作系统后,检查群集组中是否有“Oracle Services for MSCS”资源,其状态应为“联机”。

同样,在节点2上安装ofs并重新启动

5、配置OFS

在节点 1 上,配置 OFS 管理下的 Oracle 双机,OFS 将会根据节点 1 上的已安装数据库,在 节点 2 上自动创建 OFS 管理下的 Oracle 实例服务和监听服务。

1) 启动“Oracle Fail Safe Manager”。

2) 加入 MSCS 群集组到 OFS 中,输入群集组名“mycluster”。

3) 校验群集,选择群集组“mycluster”,选择“Verify Cluster”。

4) 校验群集组,确保校验结果无严重错误。 选择群集组“mycluster”,选择菜单“Troubleshooting”,选择“Verify Cluster”。

5) 校验独立数据库,确保校验结果无严重错误。

选择“Standalone Resources”中的数据库资源,如“orcl”,选择菜单“Troubleshooting”, 选择“Verify Standalone Database…”。

6) 输入数据库网络服务名,如“ora10”;输入复制到共享磁盘上的 Oracle 参数文件路径文 件名,如“S:”;输入 Oracle

管理员用户 sys 的口令, 选择确认。

7) 在校验独立数据库(Verify Standalone database)过程,遇到所有改变配置的提示,均选 择“是”和确认。

此过程将创建或修正 Oracle 网络监听服务配置,设置 Oracle 实例为“autostart”模式, 修改“shutdown”模式等,并重启 Oracle 实例;检查并确保输出结果无严重错误。

8) 增加 OFS 用 Oracle 群集组。选择菜单“Groups”,选择“Create”,输入 Oracle

群集组名“myoracle”;选择“Prevent failback”选项,确认。

9) 增加虚拟 IP 地址,此地址用于 Oracle 双机。输入 Oracle 虚拟地址主机名,如“myoracle”

IP 地址提示框将出现对应的 IP 地址,如“192.168.100.4”,选择确认。如果此前已在 hosts

文件定义了此主机名和 IP 地址,IP 地址将自动对应。

10) 为 Oracle 群集组增加 Oracle 数据库资源,确保增加过程和结果中没有严重错误。

选择 Oracle 资源组“myoracle”,鼠标右键选择菜单“Add Resource to Group…”,资源 类型选择“Oracle Database”,Group 选择“myoracle”,选择“下一步”。 输入数据库网络服务名,如“ora10”;输入复制到共享磁盘上的 Oracle 参数文件路径文 件名,如“S:”;选择“下一步”。输入 Oracle

管理 员用户 sys 的口令,选择确认。增加数据库资源,会提示当前数据库将会关闭,选择“是”。 检查资源增加结果输出,确认无严重错误。此过程将在节点 2 上创建

Oracle 实例服务 和监听服务。

注:到这里几乎不可避免的,又报错了

表面理解是dc1不能连接到dc2创建类工厂,原因是rpc服务器不可用。检查 Windows

应用日志,可获知此错误来自 DCOM。 这种错误的原因,是有时群集服务帐号的口令已经改变,但与 OracleFsWorker 中的 DCOM组件中的标识不一致。

解决方法:

1) 在群集管理器控制台中创建 MSDTC 群集资源,使之联机(需要在活动节点上启动 DTC服务)。DTC 服务在配置 DCOM 组件时需要启动,但在 Oracle OFS 缺省使用不是必需的。在 FS10755 错误解决后,可以被停止 DTC 服务,删除新创建的 MSDTC

资源。

2) 运行“开始程序管理工具组件服务”菜单,浏览“组件服务计算机我的电脑 DCOM ConfigOracleFsWorker”。 鼠标右键打开属性,打开“标识(Identities)”项,重新输入服务帐号和口令,选择“确 定”关闭所有窗口。

3) 重新运行 OFS 的 Verification(验证)过程,应该可以正常工作。

六、测试集群系统

1、手动切换测试

在完成上述步骤并不重启的情况下,集群组mycluster如下图所示是在dc2这个服务器上

在groups上右击选择移动到另外一个节点

可以看到,mycluster已经转移到dc1上了。

2、故障转移测试

可测试几种情况下的故障转移,如:

1) 断掉公网网段连接,测试双机是否可以自动切换。

2) 手工停止当前工作节点上的 Oracle 实例服务,测试双机是否可以自动切换。

注:目前 Oracle 实例服务的重启策略(restart policy)缺省设置为“900”秒中重启 3

(“Attempt to restart the resource on the current node.”)。为测试方便,可在 OFS 中修改 重启策略为不重启(“Do not restart the resource on the current node.”)。

3) 关闭(shutdown)当前节点上的操作系统,测试双机是否可以自动切换。

以上测试中均需要测试 Oracle 客户端是否可以正常登录连接数据库。

七、参考文档

/?tip=1687 在2008集群做sql 2008集群,其中提到在集群中添加TDC

/2008/03/30/exchange-2007-sp1-scc-using-server-2008-starwind-iscsi-part-2/ 2008集群做exchang 2007 scc,其中使用了starwind


本文标签: 集群 需要 创建