好听的古风国名:vmware+linux+oracle10g rac全过程(5) - 安装clusterware

来源:百度文库 编辑:偶看新闻 时间:2024/05/06 05:54:39
接下来是clusterware的安装clusterware的安装在主节点上运行,所以我们接下来要做的是启动主节点RAC1,打开FTP功能,把clusterware软件传上去,然后以oracle用户的身份来执行整个安装过程,请看截图:RAC1重启之后,第三块网卡意外的丢失了动态IP地址,这里临时赋予他一个静态IP地址,和之前的地址保持一样。上传clusterware_linux32.zip安装介质后,以unzip命令对这个文件进行解压缩,解压完成之后得到clusterware这个文件夹。将clusterware整个文件夹的属主和权限按照oracle用户的要求进行修改。注销当前窗口,以oracle用户登陆,这样整个环境变量就挂靠在oracle户头下了。在安装之前,通常要检查当前的环境,命令如下:[oracle@rac1 cluvfy]$ /data/rhel5/clusterware/cluvfy/runcluvfy.sh stage -pre crsinst -n rac1,rac2 -verbose在这个过程中,系统可能会报错,比如说什么包需要安装啊,swap区过小啊,这些东西统统不用管他们,跳过即可。这里说明一下,ORACLE有时候报的错莫名其妙,牛头不对马嘴,比如说前段时间我在HP环境下配置ORACLE RAC,在加载裸设备ocr的时候,系统报错说赋予ocr的权限和属主有问题,建议查清后再说。仔细检查之后,权限跟属主一点问题没有,结果是因为共享卷组没有激活导致,这想起来就很气人了,有这样忽悠群众的吗?所以ORACLE下的报错不必较真,就像这里一样,经过一番检查,他认为你试验环境没有达标,但你硬要往下做他也拿你没招,典型的吃硬不吃软。下面开始安装clusterware:1,以oracle用户进入到clusterware目录,以不进行系统环境检查的机制运行runInstaller:切记runInstaller后的-ignoreSysPreReqs关键字是必不可少的,因为默认redhat-5是不支持clusterware的安装的,我们必须过了这个山头才能安营扎寨。2,稍微等上三、五秒钟,就能看到clusterware的安装界面,点击“next”:3,根据我在oracle环境变量中的定义,系统默认将oraInventory目录安装到/opt/ora10g下,点击“next”:4,定义clusterware的安装路径,点击“next”:5,又到了安装前期的环境检查,这里需要把握的就是,凡是系统检查没有报告“failed”,那么就不用管,“warning”或者“not executed”都没有关系,只要我们在对应的小方框里面打勾就可以了:6,这个地方系统默认只显示一个节点,另一个节点需要我们手工添加进来:7,指定网卡类型,这里系统把所有可用的网卡都扫描进来,而我们实际需要用到的只有eth0跟eth1而已,除了手工屏蔽掉eth2跟virbr0之外(设置为not use),还需要把eth0设置为public方式:

先告一段落,后续再接上。

接着上回说,下面要导入裸设备文件ocr跟vote。1,导入ocr所对应裸设备路径,点击“next”:2,导入“vote”所对应裸设备路径,点击“next”:3,磁盘、网络、安装路径设置完之后,下面开始正式的安装过程:主节点安装完成后,系统会自动往RAC2对应目录下拷贝clusterware的所有文件。4,献上一幅美图:从这个图上可以看出系统的繁忙程度,在进行远程拷贝操作的时候,网卡繁忙得不行,同时本地磁盘也没有闲着。5,安装过程完成之后,需要两个节点各自以root身份运行一些小脚本:到这块就没这么轻松了,其实在/opt/ora10g/oraInventory下执行orainstRoot.sh都没有问题,在RAC1下执行/opt/ora10g/product/10.2.0/crs_1下执行root.sh也没有问题,难就难在rac2下执行root.sh脚本,不知道是系统bug的问题还是什么,反正就不让你好好做完,怎样都会报错,最后还需要手工运行vipca来启动一些进程,根据君三思提供的解决方案,下面列出一个专题来进行说明。这里附上各节点执行sh脚本的一些情况:1,RAC1节点执行orainstRoot.sh:2,RAC2节点执行orainstRoot.sh:3,RAC1节点执行root.sh:到这里前期的执行都是没有问题的。从RAC2开始执行root.sh这一刻起,问题来了,下面就着问题给出正确的解决方案:4,RAC2节点上执行root.sh之前需要编辑两个文件,这两个文件都位于/opt/ora10g/product/10.2.0/crs_1/bin下,文件名分别为vipca和srvctl。首先编辑vipca文件,找到如下内容:Remove this workaround when the bug 3937317 is fixed
arch=`uname -m`if [ "$arch" = "i686" -o "$arch" = "ia64" ]
then
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
fi
#End workaround
在fi 后新添加一行:
unset LD_ASSUME_KERNEL然后编辑srvctl文件,找到如下内容:
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
同样在其后新增加一行:
unset LD_ASSUME_KERNEL对应的报错信息是:/opt/ora10g/product/10.2.0/crs_1/jdk/jre//bin/java: error while loading shared libraries: libpthread.so.0:
cannot open shared object file: No such file or directory5,然后到RAC2节点下用root用户身份执行/opt/ora10g/product/10.2.0/crs_1下的root.sh:看到了吗?又报错了,对应这个错误的解决方案如下图所示:这时候没有必要再返回重新执行root.sh了,需要我们手工执行vipca命令来为两个节点添加一些必要的进程,至于在哪个节点上运行,这个就无所谓了,这里我是在RAC2上执行vipca命令:点击“next”:系统自动找到public的eth0,点击“next”:在空白处填写各节点对应的vip名称以及IP地址(其实只要填写RAC1的vip名称,再点其他空白处,就自动获取出来了),点击“next”:下面开始安装:

这个地方安装完之后就可以点击“ok”退出了。这个步骤执行完了之后我们还需要执行一个收尾的步骤,还记得clusterware的安装是在RAC1上进行的吗?上一篇文章给出最后一幅图片是到各个节点上运行脚本,这里我们手工运行完vipca之后,如果成功,那么相当于RAC2的root.sh也顺利完成使命,下一步需要做的就是返回到RAC1节点,执行剩下的步骤,如下图所示:

执行完毕之后退出整个clusterware的安装过程。

辛辛苦苦安装完clusterware之后,为的就是能在各自节点上看到CRS进程,如果这个也没问题,那才表示clusterware软件彻底安装成功:

到这里,可以看到RAC1和RAC2上各自对应的CRS进程都已经起来,可以放心了,clusterware安装过程结束。