1、硬件基础
HP 570G2服务器两台,每台两块网卡(自带HP3162/100M网卡,另各添加一块HP3132/100M网卡) 服务器本地各有块SCSI 36G硬盘。
(限于本人初次做HA的缘故,没有把握,所以没有采用OS从SAN引导的方式
)
HP SAN磁盘阵列柜 型号MSA100 F200 1台
Cisco100M交换机 1台
磁盘系统规划,服务器磁盘分3个区 各10G
盘符为C、D 、E
cd 为NTFS格式
C盘为系统
D盘为oracle程序目录
E为FAT32格式,(做GHOST备份 )阵列柜为Y盘作为oracle的数据库文件位置,数据库SID为orcl。
2:软件基础:
Windows2000 advance server
oracle8i(8.1.7.0.0)企业版
oracle failer safe (3.3.2版,oracle网站可下载,本用于oracle9i的,
在E文网站看到有人说是兼容8I的,加上老3.2.2版本的oracle install程序打不开,只能用8i的install程序安装,所以......)
oracle程序安装在每个服务器的D盘 d:\oracle\ora81 下面
3、各设备的连接方式和IP地址分配:
服务器之间用心跳线(就是双机直连的那种跳线)连接,作用2台机器集群服务的互相监控通信。
服务器分别与交换机连接(我选择HP3162网卡与交换机相连,HP3132网卡作为心跳线的连接)。
连接心跳线的2块HP3132网卡为10.10.10.10
10.10.10.11 对外提供服务的2块网卡IP为
192.168.0.10 192.168.0.11 微软集群的虚拟Ip为192.168.0.15
服务器分别与阵列柜连接(使用2G光纤跳线),特别注意,SAN阵列柜自带一个FC口的模组,另选配了一个2/3 FC HUB 模组 (就是自带带2个FC口,无其它特别之处。)
实际我们只是用2/3 FC HUB 模组连接2台服务器,由于我们SAN前面板我们只安装了一个控制模块,后面只有一个模组可用(咨询HP工程师得到的答案)
所以,请把安装在后面的2/3 FC HUB模组 的位置,对着前面控制模组的位置从后面安装进去,这样就可以了,另外一个不可用的模组上的2个灯为黄色闪烁,
4、服务器安装
(安装系统) 首先在BIOS中选择OS为 windows2000/windows2003,然后用HP服务器自带的 BOOT CD引导服务器,出现图形界面的向导,点击 Setup图标,选择OS类型,选择OS分区大小,
我分了10G空间,选择安装win2kadserver,输入CD-KEY,放入win2kADS安装光盘,剩下的安装过程就都是自动的了。
(安装FC卡驱动和SAN驱动) 安装OS完毕,放入HP SAN的support sofware CD 安装FC卡的驱动程序(不必安装 HP的array config utility 因为服务器OS安装时HP已经自动都安装好了,而且是最新版本),
reboot,然后使用hp的磁盘阵列柜软件(array config uitly)将阵列柜的磁盘做raid5或使用默认推荐raid ADG格式(advance Data Guard,谁能告诉我这是不是HP公司自己开发的专用阵列格式啊!)。
(配置SAN磁盘) 在管理工具-计算机管理-磁盘管理中,看服务器找到的SAN磁盘是否为基本磁盘,如果是动态磁盘,请降级为基本磁盘,然后创建磁盘分区-为主分区-盘符为Y 分区格式为NTFS 使用快速格式化 ,
同时也创建好本地磁盘剩下空间的分区D、E盘,调整好各个光驱和硬盘的盘符。
(配置活动目录) 第一台机器配置成为域管理器,域名xxx.com。接交换机HP3262网卡ip设置为192.168.0.10,心跳线HP3132网卡设置为10.10.10.10
第二台机器安装win2kadserver,加入到域,也成为域控制器,ip设置为192.168.0.11,及10.10.10.11,同时把在管理工具-计算机管理-磁盘管理中把SAN中的磁盘盘符改为和第一台一致 Y盘,
把本地磁盘同样按照第一台服务器的分区和盘符设置更改为一致。
5. 操作系统集群
两台服务器分别安装window网络集群服务组件 (特别注意,请把"添加删除windows组件" "网络服务"中的“简单TCP/IP服务”一同加上,主要是要使用其中的“windows Time”服务,
记得在2台服务器其中都把windows time选为自动启动,主要原因是微软 cluster service 的依赖关系中有一项是依赖windows time服务的)不加上windows time 服务 系统日志中总会有关于time服务的一些错误。)
第一台配置windows集群服务,将集群名称设为 xcluster1。其中注意选择你做心跳线的hp3132网卡作为集群内部网络的私有通信,选择hp3162网卡作为公共网络访问或者公私混合访问的通信均可。
第二台配置windows集群,加入到集群xcluster1。
对两台机器集群进行简单切换测试。
6.oracle安装
两台机器分别安装oracle,,自定义安装,不建立数据库,好像安装到14%就有个错误,忽略掉就可以,不影响使用。
在第一台机器上安装数据库,数据库文件、控制文件、日志文件放在阵列柜(也就是在创建数据库过程中把所有带有路径的都改为Y盘)(我这儿是y:\oracle\data)。
将第一台机器关闭或从集群中脱机,在第二台机器上安装数据库,然后创建数据库等放到同一目录下,此安装路径与创建数据库的参数多要与第一台机器上完全一样
(先把Y盘上第一台机器生成的数据库文件删除掉,否则,oracle无法在同一位置创建数据库的)。
7.安装ofs(oracle failer safe)
把oracle8i的所有服务都改为手动,因为这些服务将由mscs中的Group来管理
两台机器分别安装ofs,安装完毕,reboot。
修改2台服务器win2k系统中的HOSTS文件,里面都增加一行
192.168.0.14 cluster1
保存退出。
修改安装在D盘的listener.ora 和tnsnames.ora 把其中的HOST后面的参数都换成
192.168.0.14
确保2台机器的ORCL数据库中的INIT.ORA文件参数一致,
如需要修改oracle orcl中internal的账号,请同时修改2台机器的internal账号密码为一致 (好像通过拷贝pwdORCL.ora这个密码文件来同步无效,有谁知道原因?)1:需要用专用命令ORAPWD(操作系统级命令)修改internal的密码2:登陆sqlplus,alter user sys identified by <new password;
在oracle8i的菜单中找到OFS管理器,打开,启动新建组 组名oracle,下一步
增加虚拟IP地址,NETWORK HOSTNAME中输入cluster1,IP地址192.168.0.14会自动出现在下一列,下一步完成。
在OFS菜单中找到verify 先verify cluster 如果前面集群OK的话,这儿结果应该是OK的,然后在资源组中的2个单独的节点里选择第一台机器的standalone resources 中的数据库,
我这儿是orcl,然后同样选择校验,出现一堆错误添加组建,点击fix按钮修复掉,
选中另一台机器的standalone resources 中的数据库,同样校验一次,仍然一堆错误,Fix掉
(我这样来回校验2个独立数据库,好像永远都有需要Fix的错误,谁知道为什么??反正我反复几次以后,就不管了它)
然后在刚才新建的oracle组中点击右键,add resources to group 出现向导,选择增加 oracle database,然后,在下拉列表中选者一个ORCL 然后下面的所有ORCL的参数都自动出现,点击完成,
然后是一堆自动配置过程的进度提示,有什么需要copy数据库的提示之类的,点击YES 创建完成。
2台机器中standalone resources 中的数据库资源都消失掉了,出现在新建的oracle组中,然后在oracle组中添加一项通用服务oracleserviceORCL 进去,然后就一切都好了
(特别注意,一定要添加此项oracleserviceORCL服务,否则,远程客户端永远也连不上的,这可是苦熬一天一夜后才找到这个原因的,好痛苦啊
)。
8.调试
通过netstat -an 来看是192.168.0.14中否有1521的监听
用客户端连接测试
9.倒数据
在这里首先应查看原有库的表空间,而后在双机系统中建立相应的表空间,而后用exp导出原有数据,用imp导入到现有数据库.否则,如果原系统表空间装在d盘,而双机在y盘,那么exp和imp导入导出的数据不完整,imp有大量的错误日志.