原来在虚拟机上做过使用裸设备建oracle9204的RAC,这几天又使用OCFS在虚拟机上做了一次oracle9204 RAC的安装,做个记录。 其中的麻烦在于由于笔记本内存较低,所以开两个虚拟机之后,安装速度相当慢。其实原来是想安装红旗LINUX集群,但手中只有64位的Redflag DC4.0 安装盘,没法在笔记本上安装,所以只能换成Redhat as3w使用。不管是在AIX下,还是在LINUX下,其实步骤都差不多,不过有些命令稍有不同,如磁盘管理、内存管理,操作系统补丁安装等等。这些基础的东西掌握了,安装就容易了。所以有的AIX系统管理员,对ORACLE了解并不多,却能很顺利地安装数据库,就是这个原因。
参考资料:
Werner Puschitz写的文章
yangtk的blog
[@more@]一 操作环境
笔记本配置:windows xp pro + 2G内存 + VMware Server + 30G硬盘空间
as3-up5的安装盘: ISO文件共4张
ship_9204_linux_disk安装盘: 共3张
redhat3 补丁: p3006854_9204_LINUX.zip
OCFS rpm 包: ocfs-tools-1.0.10-1.i386.rpm 等三个文件
系统规划图示
| eth0(host only) | eth1(NAT) | 硬件配置 | 主机名 |
节点1 | 192.168.88.162 rac1 | 192.168.31.130 rac1-prv | 512M 10G硬盘 | rac1 |
节点2 | 192.168.88.163 rac2 | 192.168.31.131 rac2-prv | 512M内存 10G硬盘 | rac2 |
共享存储 两块OCFS盘 | 2G SCSI1:0 自动识别为/dev/sdb 对应/oracle 存入数据文件 6G SCSI1:1 自动识别为/dev/sdc 对应/oracle2存入安装盘等工具 |
数据文件目录规划/oracle/oradata/orcl/
共享文件
/oracle/quorum.ora
/oracle/srvConfig.ora
安装文件存放地 /oracle2
本地ORACLE软件存放地 /u01/oracle
数据库名 ORCL
二 安装第一套主机
安装操作系统
网卡选两块: 一块Host only,将被识别为eth0; 另外一块NAT,将被识别为eth1
为了加快安装速度,内存给1G,硬盘给10G,不预先分配空间
安装时定制安装内容,保留GNOME,除了FTP外,去掉其它SERVER,增加开发工具和内核开发环境,增加老的开发环境。
安装结束前,要求注册时不要注册,而要TELL ME,然后选择稍后注册。
网卡配置的检查
/etc/hosts
/etc/resolv.conf
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
安装vmwaretool
vm/install vm tool
在linux桌面上添加一光盘
# rpm -ivh /mnt/cdrom/VM*.rpm
# ls /usr/bin/vm*
/usr/bin/vmware-config-tools.pl
不要选1024*768了,屏幕太大; 800*600就可以了
重启
在service config中启动vsftpd,并简单配置一下vsftpd,使root用户可以登录
没名用户的主目录: /var/ftp/pub
ftp localhost
用户名输入: anonymous
口令不输:
vi /etc/vsftpd.ftpusers
注释掉root一行,才能允许root用户登录
vi /etc/vsftpd.user_list
注释掉root一行,才能允许root用户登录
改完以后,关机。
三 复制出第二台主机 RAC2
同步两台主机的时钟
[root@rac2 root]# date -s 11/20/08
Thu Nov 20 00:00:00 CST 2008
[root@rac2 root]#
[root@rac2 root]# date -s 11:59:10
Thu Nov 20 11:59:10 CST 2008
[root@rac2 root]# clock -w
附:修必时区的方法
[root@rac2 root]# date -s 11/20/08
Thu Nov 20 00:00:00 CST 2008
[root@rac2 root]#
[root@rac2 root]# date -s 11:59:10
Thu Nov 20 11:59:10 CST 2008
[root@rac2 root]# clock -w
四 添加共享磁盘
1 创建
C:win2kvmwareVMware Server
vmware-vdiskmanager.exe -c -q -a lsilogic -s 6Gb -t 0 c:vmsharedisk02.vmdk
Creating a monolithic growable disk 'c:vmsharedisk01.vmdk'
Virtual disk creation successful.
2 添加
添加时选择SCSI 1:0
3 配置共享磁盘
修改两个虚拟机的配置文件 *.vmx
disk.locking = FALSE
scsi1.sharedBus = "virtual"
scsi1:0.mode = "persistent"
五 设置两个节点的信任机制
(两个节点都做)
设置/etc/hosts 两个节点上的内容一样
127.0.0.1 localhost.localdomain localhost
192.168.88.162 rac1
192.168.88.163 rac2
192.168.31.130 rac1-prv
192.168.31.131 rac2-prv
设置telnet服务
挂上2号盘安装客户端(缺省已安装)
rpm -ivh /mnt/cdrom/RedHat/RPMS/telnet-0.17-26.EL3.2.i386.rpm
挂上3号盘安装服务端(缺省未安装)
rpm -ivh /mnt/cdrom/RedHat/RPMS/telnet-server-0.17-26.EL3.2.i386.rpm
激活telnet服务
# ntsysv
# service xinetd restart
设置允许root进行telnet登录
# vi /etc/pam.d/login
将auth required pam_securetty.so这一行开头添加#,从而注释该行。
设置rsh、rlogin、rexec
挂上3号盘,安装rsh服务端
rpm -ivh /mnt/cdrom/RedHat/RPMS/rsh-server-0.17-17.6.i386.rpm
安装完包后重启服务
# ntsysv
或者使用 chkconfig替代ntsysv
# chkconfig rsh on
# chkconfig rlogin on
# chkconfig rexec on
# service xinetd restart
修改/etc/securetty
# echo "rexec" >> /etc/securetty;echo "rlogin" >> /etc/securetty;echo "rsh" >> /etc/securetty
设置允许root进行rsh、rlogin
# vi /etc/pam.d/rlogin
将auth required pam_securetty.so这一行开头添加#,从而注释该行。
在/etc目录下建立hosts.equiv文件,表示两台linux节点互相信任。
vi /etc/hosts.equiv
在该文件里添加如下内容:
linux1
linux2
linux1-prv
linux2-prv
在root的$HOME目录下,建立.rhosts文件。
# vi .rhosts
在该文件里添加如下内容。这样,root用户就可以直接rlogin、rsh而不用输入密码。
linux1 root
linux2 root
linux1-prv root
linux2-prv root
配置完以后的检查
[root@rac1 root]# rcp ww.test rac2:/root/ww.test
Trying krb4 rcp...
trying normal rcp (/usr/bin/rcp)
六 修改linux内核参数以及其他相应配置
修改linux的信号量
# vi /etc/sysctl.conf
在该文件末尾添加如下内容:
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
# /sbin/sysctl -p
# rcp /etc/sysctl.conf rac2:/etc/sysctl.conf
配置 hangcheck-timer 内核模块(双节点都要做)
查询模块是否已拷贝,缺省已安装
# find /lib/modules -name "hangcheck-timer.o"
加载模块
# /sbin/insmod hangcheck-timer hangcheck_tick=30 hangcheck_margin=180
检查该模块是否被成功加载:
# grep Hangcheck /var/log/messages
修改以自动加载
echo "options hangcheck-timer hangcheck_tick=30 hangcheck_margin=180" >> /etc/modules.conf
创建oracle用户和dba组
# chmod a+w /etc 用于启动oracm时,touch /etc/rac_on
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/271063/viewspace-1013663/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/271063/viewspace-1013663/