基于CentOS5.2及DELLMD3000安装OracleRAC11gskyyuan一、安装前的准备1.IP准备真实地址:192.168.100.60tvurac1192.168.100.55tvurac2虚拟地址:192.168.100.62tvuv1192.168.100.63tvuv2私有地址:172.16.7.1tvup1172.16.7.2tvup2将以上主机信息加入所有相关主机(服务端,客户端)/etc/hosts内。机器通过hostname“”得到的名称,应和真实地址对应名称相同。2.修改127.0.0.1条目系统的/etc/hosts文件中,默认127.0.0.1条目包含了安装时定义的主机名。如下:#Donotremovethefollowingline,orvariousprograms#thatrequirenetworkfunctionalitywillfail.127.0.0.1tvurac1localhost.localdomainlocalhost请将真实主机名从127.0.0.1条目中删除:#Donotremovethefollowingline,orvariousprograms#thatrequirenetworkfunctionalitywillfail.127.0.0.1localhost.localdomainlocalhost若没有删除,可能导致的问题是Oracle创建Listener时,将Listener分配到127.0.0.1上。但此IP是不对外提供服务的。正确的分配应该在真实IP上。二、安装CentOS5.2、准备RAC环境注意,在安装CentOS5.2系统时,不要连接MD3000。以避免安装程序将Grub装在MD3000磁盘上。1.软件包组安装DevelopmentLibrariesDevelopmentToolsLegacySoftwareDevelopment2.软件包安装ntpsysstatcrontabsvixie-cronunziplibaioallarchlibaio-develallarch3.网卡配置注意事项多台机器网卡逻辑编号必须一一对应,若A机eth0为publicip,eth1为privateip,则B机也必须以eth0为publicip,eth1为privateip。若混乱,如A(eth0,eht1),B(eth1,eth0);A(eth0,eth1),B(eth2,eth3);则在vipca配置虚拟ip时会出现错误。4.创建、配置用户、组此操作在所有节点都需完成。创建组dbagroupadd-g1001dba创建组oinstallgroupadd-g1002oinstall创建用户oracle,主组为dbauseradd-u1001-goinstall-Gdbaoracle给oracle设置密码passwdoracle由于root用户也需要对ocr、voting设备进行读写,所以需要将root用户加入dba组中。5.创建安装目录并赋予正确的权限mkdir-p/opt/oracle/crsmkdir-p/opt/oracle/databasechown-Roracle:dba/opt/oracle此操作在所有节点都需要。6.关闭selinuxsed-i's/SELINUX=enforcing/SELINUX=disabled/g'/etc/selinux/config7.修改内核参数kernel.sem=25032000100128kernel.shmmni=4096net.ipv4.ip_local_port_range=102465000net.core.rmem_default=4194304net.core.rmem_max=4194304net.core.wmem_default=262144net.core.wmem_max=262144fs.file-max=6553600通过命令sysctl-p,可在不重启系统的情况下令参数生效。注意:由于我们的机器内存都超过了Oracle官方的推荐值,所以kernel.shmall和kernel.shmmax保留系统默认即可。若将其设置小,会影响SGA方面的设置。任何系统默认值大于Oracle推荐值时,请保留系统默认值。8.修改/etc/security/limits.conf文件添加以下内容:oraclesoftnproc2047oraclehardnproc16384oraclesoftnofile1024oraclehardnofile655369.修改pam设置在/etc/pam.d/login文件中加入:sessionrequired/lib64/security/pam_limits.so10.添加hangcheck-timer模块(1)在/etc/modprobe.conf文件中加入:optionshangcheck-timerhangcheck_tick=30hangcheck_margin=180(2)在/etc/rc.local中加入:/sbin/modprobe-vhangcheck-timer关于hangcheck-timer模块的详细资料,可参考此处。11.ssh配置在tvurac1和tvurac2oracle用户下,分别生成无密码的ssh密钥文件。并确保两台机器authorized_keys文件中包含所有节点(包括自己)公钥信息。在各节点包含所有节点公钥信息后,通过ssh连接确认所有节点(包括本机、所有私有IP)可以直接执行命令:不输入密码即显示日期信息,就表示成功。由于ssh第一连接需要确认添加公钥信息。所以一定要手动连接一次所有节点。不然在安装时,文件传输等动作都会出错。12.NTP配置当多节点时间不统一时,心跳会出现问题。通过ntp保证各个节点时间统一。将以下内容加入rootcrontab中:*/30****/usr/sbin/ntpdatentpserverip内网环境中,通常域控默认开启ntp服务。13.分区(1)注意事项voting和ocr理论上只占用几十兆至百兆的空间。在保证空间够用的同时,需要考虑其长期备份所占用的空间,所以分配也不宜过大。此文中,我们各分配512M的空间。分区完成后,各节点必须重启才能看到正确的分区。(2)分区实验中的分区列表:sdb1512Mocrsdb2512Mvotingsdb330GASM-DATAsdc180GASM-FlashRecovery在安装crs时,需要完全干净的ocr和voting,若给ocr或voting的分区曾被使用过,必须清空:ddif=/dev/zeroof=/dev/sdb1bs=8192count=200014.raw配置raw配置方式从CentOS4至CentOS5发生了变化。在CentOS5通过udev配置。详细内容请参考RedHatRHEL5Release文档。在/etc/udev/rules.d/60-raw.rules文件中加入以下内容:ACTION==add,KERNEL==sdb1,RUN+=/bin/raw/dev/raw/raw1%NACTION==add,KERNEL==sdb2,RUN+=/bin/raw/dev/raw/raw2%NKERNEL==raw1,OWNER=oracle,GROUP=dba,MODE=0660KERNEL==raw2,OWNER=oracle,GROUP=dba,MODE=0660备注:关于voting、ocrvoting和ocr在11gR1中存放在raw设备中。至11gR2版本,将支持ocr、voting存放于ASM中。官方计划在12g中取消ocr、voting对raw设备的支持。届时仅支持ASM管理ocr、voting。11g中支持ocr、voting动态创建。详细内容可参考这里。三、安装DELLMD30001.关于驱动的一些说明MD3000设备在Linux中使用mpt系列驱动;重新编译了sg.ko模块;在/etc/modprobe.conf中添加了诸多模块参数。已知DELL官方驱动会有两个动作:修改intrd文件;添加multipath支持。但并不否定CentOS5.2自带mpt驱动的功能性。尝试过不安装DELL官方驱动,在未使用multipath功能前提下,并未发现系统原有驱动有问题。MD3000设备在各个节点上的逻辑盘符应该是一样的:sd[a-z],若不同,可能会在ASM的配置上产生问题。在多次实验中,逻辑盘符自动都是一样的。2.启动顺序在SASBIOS中,将MD3000的boot优先级调低。3.安装MD3000驱动执行驱动包中install.sh脚本后,依次选择第二、第四项即可。注意:在安装4项目时,Oracle(TM)RealApplicationCluster(RAC)node(y/n)?选项,选择y。由于驱动安装程序重新打包了initrd文件,以及添加了模块参数。所以必须系统重启后,才能生效。四、安装clusterware组件1.voting和ocr在所有节点的/opt/oracle目录中创建软链接ln-s/dev/raw/raw1/opt/oracle/ocrln-s/dev/raw/raw2/opt/oracle/voting2.设置DISPLAY环境变量若你的Client端为Linux,需要执行xhost+开放链接。DISPLAY=192.168.100.124:0.0exportDISPLAY3.关闭防火墙CRS组件在私有IP上会进行很多通讯,在安装时,将防火墙关闭。4.开始安装clusterware此操作仅需在一台node上进行。本文中在tvurac1上操作。unziplinux.x64_11gR1_clusterware.zipcdclusterware./runInstaller系统会对本地xdpyinfo命令警告,我们按y继续:Checkingmonitor:mustbeconfiguredtodisplayatleast256colorsCouldnotexecuteautocheckfordisplaycolorsusingcommand/usr/bin/xdpyinfo.CheckiftheDISPLAYvariableisset.FailedSomerequirementchecksfailed.Youmustfulfilltheserequirementsbeforecontinuingwiththeinstallation,atwhichtimetheywillberechecked.Continue?(y/n)[n]y点击Next默认即可,点击Next选择安装路径后,点击Next程序检查安装环境,如果发生报错,在解决问题后按Retry即可让程序重新检查。无误后点击Next。通过edit按钮添加节点。所添加的名称需要和/etc/hosts中加入的名称保持统一。完成后点击Next。通过edit按钮选择网卡的public和private。完成后Next。选择ocr路径,由于MD3000使用了RAID,所以选择外部冗余。Voting同样选择外部冗余。安装内容确认。无误后点击Install安装。安装过程。完成安装后,提示在各个node上以root执行两个脚本。第一个脚本用来设置一些环境。第二个脚本用来创建ocr和voting的内容以及启动crs服务。在执行脚本之前,先使用Oracle用户在两个节点分别修改$CRS_HOME/cv/admin/cvu_config文件,将#CV_ASSUME_DISTID=RHEL4替换为CV_ASSUME_DISTID=RHEL5”“。此步骤可避免后面安装验证命令:/opt/oracle/crs/bin/cluvfystage-postcrsinst-ntvurac1,tvurac2发生错误:ERROR:Cannotidentifytheoperatin