1、系统配置目标
2、基本的硬件环境
3、硬件连接及配置要求
4、安装操作系统及补丁的安装过程
5、开始安装Raid Manager 6.22.1
6、开始安装vxvm 3.5
7、安装oracle数据库
8、安装VCS软件
9、安装Veritas Cluster Oracle agent
10、修改相关的配置文件

11、附录 

 *********************** 
 1、系统配置目标 
 *********************** 
 两个系统跑一个服务(分oracle),能够自动切换或者手动 

 *********************** 
 2、硬件环境和软件介质 
 *********************** 
 硬件: 
 Ultra 10主机两台,配置相同,其每台的详细配置如下: 
 1、CPU(US-IIi 333MHz),内存(512MB),本地硬盘20GB 各1块, 
 2、双通道差分卡各1块;非集成网卡各2块 
 3、网线,光纤线,电源线若干 
 A1000磁盘阵列(内置若干硬盘)1个 
 软件准备: 
 Solaris 8 for SPARC(4 disks)(安装介质) 
 8_Recommended.zip(patch)(sunsolve.sun.com上下载) 
 Veritas Cluster Server 3.5安装介质 
 Veritas Volume Manager 3.5安装介质 
 Oracle 8.1.7.0.0安装光盘2张 
 SUN Raid Manager 6.22.1 

 *********************** 
 3、硬件连接及配置要求 
 *********************** 
 连接A1000、Ultra 10主机的基本电源线、鼠标、键盘等基本外设 
 网线的链接要求:两台主机的心跳线直接用交叉线直连;服务网卡用cross-over网线连接到switch 
 从A1000上的两个SCSI接口分别连接到2个主机的差分SCSI卡上 
 修改1#机的差分卡的scsi id。 
 其方法是: 
 开1#机进入OBP,按键盘的(stop+a)或者用串口线连上的(ctrl + pause) 
 OK show-devs 
 找到差分卡所对于的物理路径以备后用 
 OK nvedit输入如下内容 
 probe-all 
 cd /pci@1f,0/pci@1/scsi@3,1 
 6 " scsi-initiator-id" integer-property 
 device-end 
 cd /pci@1f,0/pci@1/scsi@3 
 6 " scsi-initiator-id" integer-property 
 device-end 
 install-console 
 banner 
 输入结束后按ctrl+c 
 OK nvstore 
 ok setenv use-nvramrc? True 
 ok setenv auto-boot? True 
 ok reset-all 

 重启之后再次进入OK状态下进行验证 
 OK select /pci@1f,0/pci@1/scsi@3,1 
 OK .property 
 OK show-children 

 OK reset -all 

 *********************** 
 4、操作系统的配置过程 
 *********************** 
 安装步骤: 
 1、分别安装系统,基本配置如下: 
 1#机 
 语言:English 
 主机名 ha1 
 网络设备:hme0 
 IP地址 192.168.0.41 
 子网掩码255.255.255.0 
 安装模式:Entire Distribution plus OEM 64-support 

 2#机 
 语言:English 
 主机名 ha2 
 网络设备:hme0 
 IP地址 192.168.0.42 
 子网掩码255.255.255.0 
 安装模式:Entire Distribution plus OEM 64-support 


 在两个系统同时进行如下操作: 
 # cd /etc/;touch hostname.hme1 hostname.hme2 
 # cd /tmp 
 # unzip 8_recommended.zip 
 # cd /8_Recommended 
 # ./install_cluster 
 # reboot 
 注:每个系统盘上都留出一个小的slice(c0t0d0s7)来做rootdg 

 *********************** 
 6、开始安装Raid Manager 
 *********************** 
 进入介质所在的目录,安装如下软件包 
 # pkgadd -d . SUNWosafw SUNWosamn SUNWosanv SUNWosar SUNWoasu 
 修改/etc/profile文件修改路径 
 PATH=$PATH:/usr/lib/osa/bin 
 保存退出,重登陆 
 运行rm6图形窗口,建mirror的卷1个 
 在两台机器分别运行认盘操作: 
 # drvconfig -c disk && disks && devlinks 
 # format进行确认 

 *********************** 
 7、开始安装vxvm 3.5 
 *********************** 
 在1#机上作。 
 首先创建rootdg 
 # vxlicense –c 
 # vxconfigd –m disable 
 # vxdctl init 
 # vxdctl init rootdg 
 # vxdg init rootdg 
 # vxdctl add disk c0t0d0s7 type=simple 
 # vxdisk –f init c0t0d0s7 type=simple 
 # vxdg adddisk c0t0d0s7 
 # vxdctl enable 
 # rm /etc/vx/reconfig.d/state.d/install-db 
 然后创建数据卷 
 # vxdiskadd c1t0d0 c2t0d0 
 安装提示创建一个oradg,然后把两个A1000互为镜像 
 # vxassist -g oradg make oravol 100g layout=mirror,log 
 # newfs /dev/vx/dsk/oradg/oravol 

 调整块设备的major、minor点。在两边分别作对比 
 # ls -lL /dev/vx/dsk/oradg/oravol 
 如果有差异请用haremajor调整,(调整之后要求两边的显示完全一样,如果不作nfs用,那么应该是无所谓的) 
 # haremajor -vx 250 6000 
 参考文件: /etc/name_to_major, 

 *********************** 
 8、开始安装oracle 
 *********************** 
 在1#机上创建oracle用户和用户组 
 # groupadd -g 100 dba 
 把共享卷挂接到/oracle下面 
 # mount /dev/vx/dsk/oradg/oravol /oracle 
 # useradd -g dba -d /oracle/app -m -s /usr/bin/csh ora 
 # passwd ora 
 与此同时把1#机中的/etc/group、/etc/passwd、/etc/shadow中新增的行目添加到2#机中(主要是与新增的用户组和用户有关) 
 修改系统内核参数/etc/system,追加如下几行: 
 set shmsys:shminfo_shmmax=536870912 
 set shmsys:shminfo_shmmin=1 
 set shmsys:shminfo_shmmni=100 
 set shmsys:shminfo_shmseg=100 
 set semsys:seminfo_semmni=100 
 set semsys:seminfo_semmsl=100 
 set semsys:seminfo_semmns=200 
 set semsys:seminfo_semopm=100 
 set semsys:seminfo_semvmx=32767 

 修改用户变量文件/oracle/app/.cshrc,使其内容如下: 
 setenv ORACLE_BASE /oracle/app 
 setenv ORACLE_HOME /oracle/app/product/8.1.7 
 setenv ORACLE_TERM xsun5 
 setenv LD_LIBRARY_PATH $ORACLE_HOME/lib:/usr/openwin/lib:/usr/dt/lib 
 setenv CLASSPATH .:/oracle/app/product/8.1.7/jdbc/lib/classes111.zip:/oracle/app/product/8.1.7/jdbc/lib/nls_charset11.zip:/export/home/oracle/trade_prog 
 setenv PATH .:/export/home/oracle/trade_prog:/bin:/usr/openwin/bin:/usr/bin:/usr/ucb:/usr/local/bin:/oracle/app/8.1.7/product/bin 
 setenv NLS_LANG AMERICAN_AMERICA.ZHS16CGB231280 
 setenv NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK 
 setenv ORACLE_SID orcl 
 setenv DISPLAY 192.168.0.190:0.0 
 保存退出,以ora用户登陆系统开始安装 
 插入安装光盘 
 # cd /cdrom/cdrom0;./runInstaller 
 安装提示安装即可;注意建库一点要放在共享卷组上! 
 安装结束后修改监听文件listener.ora、tnsname.ora 
 # cd /oracle/app/product/8.1.7/network/admin 
 把这两个文件的ip改为服务ip:192.168.0.43(该IP作为服务IP) 

 *********************** 
 9、开始安装vcs 
 *********************** 
 在1#机上创建一个/.rhosts文件,其中包括ha2关键字 
 在2#机上创建一个/.rhosts文件,其中包括ha1关键字 
 修改/etc/inet/hosts文件,在1#、2#机上分别添加如下两行: 
 192.168.0.42 ha2 
 192.168.0.41 ha1 
 装入vcs介质,开始激动人心的安装过程 
 # cd /cdrom/cdrom0/cluster_server 
 # ./installvcs 
 安装提示安装即可,不过有如下要求: 
 vcs server name: newvcs 
 systems: ha1 ha2 
 心跳网卡: hme1 hme2 
 不安装cluster_manager、不安装Web Cluster Manager、不安装SNMP 
 安装结束之后,确认系统正常: 
 # /opt/VRTSvcs/bin/lltstat -n 
 # /opt/VRTSvcs/bin/gabconfig -a 
 # hastatus -summary 

 *********************** 
 10、安装Veritas Cluster Oracle agent 
 *********************** 
 插入VERITAS SOLUTION cd6 
 # cd /cdrom/cdrom0/oracle_agent 
 # pkgadd -d . VRTSvcsor 
 该操作在两台机器上分别进行 

 *********************** 
 11、配置双机相应的文件 
 *********************** 
 为了节省时间,简化操作,下面我采用的是直接修改配置文件进行配置。 
 在1#机进行如下操作 
 # hastop -all -force 
 # cd /etc/VRTSvcs/conf/config 
 # cp ../sample_oracle/* . 
 # 修改main.cf文件为: 
 include "types.cf" 
 include "OracleTypes.cf" 

 cluster shared ( 
 UserNames = { adm = "rLlzxjF.KVQnI" } 
 CounterInterval = 5 
 ) 

 system ha1 ( 
 ) 

 system ha2 ( 
 ) 

 group groupy ( 
 SystemList = { ha1 = 0, ha2 = 1 } 
 AutoStartList = { ha1 } 
 Administrators = { adm } 
 ) 

 DiskGroup groupydg ( 
 DiskGroup = sharedg 
 ) 

 IP nfssrvy ( 
 Device = hme0 
 Address = "192.168.0.43" 
 ) 

 Mount export3 ( 
 MountPoint = "/oracle" 
 BlockDevice = "/dev/vx/dsk/sharedg/oravol" 
 FSType = ufs 
 MountOpt = rw 
 FsckOpt = "-y" 
 ) 

 NIC groupy_hme0 ( 
 Device = hme0 
 NetworkType = ether 
 ) 

 Oracle oragrp_VRT ( 
 Sid = cnc1 
 Owner = ora 
 Home = "/oracle/app/product/8.1.7" 
 Pfile = "/oracle/app/product/8.1.7/dbs/initcnc1.ora" 
 User = "system" 
 Pword = manager 
 MonScript = "./bin/Oracle/SqlTest.pl" 
 EnvFile = "/opt/VRTSvcs/bin/oracle/envfile" 
 ) 

 Sqlnet oragrp_LISTENER ( 
 Owner = ora 
 Home = "/oracle/app/product/8.1.7" 
 TnsAdmin = "/oracle/app/product/8.1.7/network/admin" 
 Listener = LISTENER 
 MonScript = "./bin/Sqlnet/LsnrTest.pl" 
 EnvFile = "/opt/VRTSvcs/bin/oracle/envfile" 
 ) 

 Volume groupydg_vol3 ( 
 Volume = oravol 
 DiskGroup = sharedg 
 ) 

 export3 requires groupydg_vol3 
 groupydg_vol3 requires groupydg 
 nfssrvy requires groupy_hme0 
 oragrp_LISTENER requires nfssrvy 
 oragrp_LISTENER requires oragrp_VRT 
 oragrp_VRT requires export3 
 oragrp_VRT requires groupydg_vol3 

 # hacf -verify /etc/VRTSvcs/conf/config/ 
 如果没有返回错误可以继续进行 
 # rlogin ha2 
 # cd /etc/VRTSvcs/conf/config/; rm * ; rcp ha1:/etc/VRTSvcs/conf/config/* . ;reboot 
 退到ha1上面,也同时进行重启操作 

 重启结束后再次进入1#机 
 # haconf -makerw 
 # haconf -dump -makero 
 # hastatus -summary 

 *********************** 
 12、附录 
 *********************** 
 参考文献为: 
 <Oracle 8.1.7 Install Guide> 
 <Raid Manager install guide> 
 <raid manager user guide> 
 <Veritas volume manager install guide> 
 <Veritas volume manager user guide> 
 <Veritas Cluster server install guide> 
 <Veritas Cluster server user guide> 
 <Veritas bunlded agent reference guide>



比较容易犯的错误
1、scsi id没有修改
如果不修改,那么其中一台机器重启,将会使阵列上的卷在另一台机器上的lun被reset,因为两块卡的scsi冲突。
2、 数据库的监听没有修改为浮动IP,导致监听启动不起来