Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作,具体如下:
环境:OEL 5.7 + Oracle 10.2.0.5 RAC
1.实施前准备工作
1.1 服务器安装操作系统
1.2 Oracle安装介质
1.3 共享存储规划
1.4 网络规划分配
2.主机配置
2.1 使用yum安装oracle-validated包来简化主机配置的部分工作
2.2 共享存储配置
2.3 配置/etc/hosts
2.4 配置Oracle用户等价性
2.5 创建软件目录
2.6 配置用户环境变量
2.7 关闭各节点主机防火墙和SELinux
2.8 各节点系统时间校对
1.实施前准备工作
1.1 服务器安装操作系统
配置完全相同的两台服务器,安装相同版本的Linux操作系统。留存系统光盘或者镜像文件。
我这里是OEL5.7,系统目录大小均一致。对应OEL5.7的系统镜像文件放在服务器上,供后面配置本地yum使用。
1.2 Oracle安装介质
Oracle 10.2.0.1版本的clusterware和db,以及10.2.0.5的升级包。
-rwxr-xr-x 1 root root 302M 12月 24 13:07 10201_clusterware_linux_x86_64.cpio.gz -rwxr-xr-x 1 root root 724M 12月 24 13:08 10201_database_linux_x86_64.cpio.gz -rwxr-xr-x 1 root root 1.2G 12月 24 13:10 p8202632_10205_Linux-x86-64.zip</div>
这个用MOS账号自己去support.oracle.com下载,然后只需要上传到节点1即可。
1.3 共享存储规划
从存储中划分出两台主机可以同时看到的共享LUN。
我这里自己的实验环境是使用openfiler模拟出共享LUN:
5个100M大小LUN;用于OCR,votedisk;
3个10G大小LUN;用于DATA;
2个5G大小LUN;用于FRA。
openfiler使用可参考:Openfiler配置RAC共享存储
1.4 网络规划分配
公有网络 以及 私有网络。
公有网络:物理网卡eth0(public IP,VIP),需要4个IP地址。
私有网络:物理网卡eth1(private IP),需要2个内部IP地址。
实际生产环境一般服务器都至少有4块网卡。建议是两两bonding后分别作为公有网络和私有网络。
2.主机配置
2.1 使用yum安装oracle-validated包来简化主机配置的部分工作
由于系统环境是OEL5.7,可以简化依赖包安装、内核参数调整,用户和组创建等工作,可参考:OEL上使用yum install oracle-validated 简化主机配置工作
2.2 共享存储配置:
我这里openfiler所在主机的IP地址为192.168.1.12。归划的10块LUN全部映射到iqn.2006-01.com.openfiler:rac10g上。
[root@oradb28 ~]# iscsiadm -m discovery -t sendtargets -p 192.168.1.12 192.168.1.12:3260,1 iqn.2006-01.com.openfiler:rac10g #手工登录iscsi目标 iscsiadm -m node -T iqn.2006-01.com.openfiler:rac10g -p 192.168.1.12 -l #配置自动登录 iscsiadm -m node -T iqn.2006-01.com.openfiler:rac10g -p 192.168.1.12 --op update -n node.startup -v automatic #重启iscsi服务 service iscsi stop service iscsi start</div>
注意:安装10g RAC,要确保共享设备上划分的LUN要在所有节点上被识别为相同设备名称。
[root@oradb27 ~]# ls -lh /dev/sd* brw-r----- 1 root disk 8, 0 Jan 2 22:40 /dev/sda brw-r----- 1 root disk 8, 16 Jan 2 22:40 /dev/sdb brw-r----- 1 root disk 8, 32 Jan 2 22:40 /dev/sdc brw-r----- 1 root disk 8, 48 Jan 2 22:40 /dev/sdd brw-r----- 1 root disk 8, 64 Jan 2 22:40 /dev/sde brw-r----- 1 root disk 8, 80 Jan 2 22:40 /dev/sdf brw-r----- 1 root disk 8, 96 Jan 2 22:40 /dev/sdg brw-r----- 1 root disk 8, 112 Jan 2 22:40 /dev/sdh brw-r----- 1 root disk 8, 128 Jan 2 22:40 /dev/sdi brw-r----- 1 root disk 8, 144 Jan 2 22:40 /dev/sdj [root@oradb28 ~]# ls -lh /dev/sd* brw-r----- 1 root disk 8, 0 Jan 2 22:41 /dev/sda brw-r----- 1 root disk 8, 16 Jan 2 22:41 /dev/sdb brw-r----- 1 root disk 8, 32 Jan 2 22:41 /dev/sdc brw-r----- 1 root disk 8, 48 Jan 2 22:41 /dev/sdd brw-r----- 1 root disk 8, 64 Jan 2 22:41 /dev/sde brw-r----- 1 root disk 8, 80 Jan 2 22:41 /dev/sdf brw-r----- 1 root disk 8, 96 Jan 2 22:41 /dev/sdg brw-r----- 1 root disk 8, 112 Jan 2 22:41 /dev/sdh brw-r----- 1 root disk 8, 128 Jan 2 22:41 /dev/sdi brw-r----- 1 root disk 8, 144 Jan 2 22:41 /dev/sdj</div>
其中sda,sdb,sdc,sdd,sde是100M大小的LUN,我们分别将这5个LUN各分成一个区(我实验中发现如果不分区直接绑成裸设备,在安装clusterware后执行root.sh时会报错:“Failed to upgrade Oracle Cluster Registry configuration”,分区后绑定分区成裸设备,发现可以正常执行通过)
[root@oradb27 ~]# ls -lh /dev/sd* brw-r----- 1 root disk 8, 0 Jan 3 09:36 /dev/sda brw-r----- 1 root disk 8, 1 Jan 3 09:36 /dev/sda1 brw-r----- 1 root disk 8, 16 Jan 3 09:36 /dev/sdb brw-r----- 1 root disk 8, 17 Jan 3 09:36 /dev/sdb1 brw-r----- 1 root disk 8, 32 Jan 3 09:36 /dev/sdc brw-r----- 1 root disk 8, 33 Jan 3 09:36 /dev/sdc1 brw-r----- 1 root disk 8, 48 Jan 3 09:36 /dev/sdd brw-r----- 1 root disk 8, 49 Jan 3 09:36 /dev/sdd1 brw-r----- 1 root disk 8, 64 Jan 3 09:36 /dev/sde brw-r----- 1 root disk 8, 65 Jan 3 09:36 /dev/sde1 [root@oradb28 crshome_1]# ls -lh /dev/sd* brw-r----- 1 root disk 8, 0 Jan 3 09:36 /dev/sda brw-r----- 1 root disk 8, 1 Jan 3 09:36 /dev/sda1 brw-r----- 1 root disk 8, 16 Jan 3 09:36 /dev/sdb brw-r----- 1 root disk 8, 17 Jan 3 09:36 /dev/sdb1 brw-r----- 1 root disk 8, 32 Jan 3 09:36 /dev/sdc brw-r----- 1 root disk 8, 33 Jan 3 09:36 /dev/sdc1 brw-r----- 1 root disk 8, 48 Jan 3 09:36 /dev/sdd brw-r----- 1 root disk 8, 49 Jan 3 09:36 /dev/sdd1 brw-r----- 1 root disk 8, 64 Jan 3 09:36 /dev/sde brw-r----- 1 root disk 8, 65 Jan 3 09:36 /dev/sde1</div>
1)使用udev 绑定raw devices ,供ocr和voting disk使用
编辑配置文件并追加以下内容:
# vi /etc/udev/rules.d/60-raw.rules ACTION=="add", KERNEL=="sda1", RUN+="/bin/raw /dev/raw/raw1 %N" ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw2 %N" ACTION=="add", KERNEL=="sdc1", RUN+="/bin/raw /dev/raw/raw3 %N" ACTION=="add", KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/raw4 %N" ACTION=="add", KERNEL=="sde1", RUN+="/bin/raw /dev/raw/raw5 %N" ACTION=="add", KERNEL=="raw*", OWNER=="oracle", GROUP=="oinstall", MODE=="0660"</div>
启动start_udev:
[root@oradb27 rules.d]# start_udev Starting udev: [ OK ] [root@oradb27 rules.d]# ls -l /dev/raw* crw-rw---- 1 oracle oinstall 162, 0 Jan 2 22:37 /dev/rawctl /dev/raw: total 0 crw-rw---- 1 oracle oinstall 162, 1 Jan 2 23:11 raw1 crw-rw---- 1 oracle oinstall 162, 2 Jan 2 23:11 raw2 crw-rw---- 1 oracle oinstall 162, 3 Jan 2 23:11 raw3 crw-rw---- 1 oracle oinstall 162, 4 Jan 2 23:11 raw4 crw-rw---- 1 oracle oinstall 162, 5 Jan 2 23:11 raw5 [root@oradb27 rules.d]#</div>
配置文件60-raw.rules传到节点2:
[root@oradb27 rules.d]# scp /etc/udev/rules.d/60-raw.rules oradb28:/etc/udev/rules.d/</div>
在节点2启动start_udev。
注意:如果安装中发现raw曾被使用过,可能需要dd清除头部信息;
dd if=/dev/zero of=/dev/raw/raw1 bs=1048576 count=10 dd if=/dev/zero of=/dev/raw/raw2 bs=1048576 count=10 dd if=/dev/zero of=/dev/raw/raw3 bs=1048576 count=10 dd if=/dev/zero of=/dev/raw/raw4 bs=1048576 count=10 dd if=/dev/zero of=/dev/raw/raw5 bs=1048576 count=10</div>
2)使用udev 绑定asm devices,供data磁盘组和fra磁盘组使用