Oracle 11g R2 RAC集群系统在Solaris10_x86_64上的安装 (第1部分)


Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 Oracle 11g Release 2 RAC 集群系统在 Solaris10_x86_64 Openfiler 网络共享存储上的安装 (第1部分)

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 Oracle 11g Release 2 推出已经有一段时间了,在 Oracle Sun 公司并购后又重新推出了 for Solaris10_x86_64 的版本,是针对普通 x86 平台的 64 Solaris10 的版本。在 11g 的第一版中取消了 Solaris_x86 的版本,所以之前主要是在 Solaris 中安装 10g RAC 系统或在 RedHat Enterprise Linux5 中安装 11g R1 RAC 系统,现在可以在普通的 PC 机上研究一下 11g R2 RAC(Real Application Cluster) 集群数据库系统在 Solaris 上的安装部署。         本文写于 02/22/2010 ,我在之前的一段时间陆续对 11g R2 的新功能作了一些测试,写这个文章就是对 Oracle RAC 数据库集群的学习作个总结。先粗略的说一下我对数据库集群的理解:集群数据库其实还是一个数据库 ( 并不是 2 个或更多的库合在一起 ) 只是多个数据库实例与之相连,集群数据库是多个实例对应一个共享的数据库,而普通的数据库安装实例与库是一一对应的关系; Oracle RAC 集群数据库的好处是同时支持负载均衡和自动故障时切换,比 IBM DB2 SQL Server 2008 只提供故障接管的功能要强悍。集群数据库一般建立在网络共享存储设备 (NAS/SAN) 上,该设备对数据提供硬件级别的保护一般情况不会出现问题;该共享设备通过光纤与安装数据库实例的 个或多个主机相连,这样集群内的每个实例节点都拥有了同一个库, Oracle RAC 通过全局锁控制数据的一致性。
bb

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 1 :这是一个简易的 RAC 示意图

我在写这个文章以前也参考了很多网友写的关于Oracle RAC集群系统的安装文章,其中最重要的是Oracle官网上Jeffery M. HunterBuild Your Own Oracle RAC on Oracle Enterprise Linux and iSCSI一篇文章,其中详细介绍了RAC的概念及在Linux系统中的安装部署。其实RAC系统在Solaris系统上的安装与在Linux上的安装大同小异,在这里我把一些不同之处和一些特别需要注意的地方写出来供大家参考。还有就是参考官方的联机帮助文档更为重要,其中会提供很多重要信息。与单机安装Oracle相比,RAC集群系统的安装只是步骤繁多,但按步骤安装,要保证每一步都正确即可,总体上并不复杂,在3台普通的PC(要求两个RAC节点是64位的CPU)上就可以顺利完成安装。

11g第二版在新功能上与第一版有了很大的改进,这里把本次安装用到的新功能简单介绍一下,其中主要是把Clusterware 集群件集成到了Grid网格组件中,并且添加了Grid Naming Service(GNS)网格名称服务提供名称转换,这样两个RAC节点的虚拟IP地址(VIP)可以通过DHCP自动获取,不需要手工指定了,这是变化比较大的一点;还有Cluster Time Synchronization Service(CTSS)集群时间同步服务,在没有NTP服务时,该功能可以保证所有RAC节点的时间保持一致;ASM可以作为统一的存储把Oracle Cluster Registry(OCR)Voting disks统一安装在ASM磁盘上,不再需要单独安装集群文件系统了,11g第二版也不再支持裸设备了(之前可以把集群件安装到裸设备上);还有一个有趣的功能SCAN(Single Client Access Name)即单客户端访问名称而且该功能包括了Failover故障自动切换功能,在访问集群是只写一个SCAN名称就可以了,不需要象以前要把所有节点的VIP写在应用程序的配置文件里面了,这样就大大方便了客户端程序对RAC系统的访问,但该功能需要DNS服务器的支持,这个功能本文中会重点介绍因为我是一个应用程序员感觉这是一个最好的新功能,在用Spring框架连接RAC系统时也非常方便;还有一些新特性如Automatic Storage Management Cluster File System(ACFS) ASM集群文件系统和Intelligent Platform. Management Interface(IPMI)集成,等等新功能本次安装都没有用到,大家可以自己探索。

在开始安装之前,先看一下网络拓扑图,并介绍一下软硬件的安装环境:

网络拓扑图如下:

bb

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4  

软硬件的安装环境:

 

 

网络共享存储系统

RAC节点1

RAC节点2

DNS DHCP服务器/管理主机

软件

操作系统

Openfiler2.3_x86 32位版本,镜像名称openfiler-2.3-x86-disc1.iso,共享存储不必须是64位,32位也可以

Solaris10_x86_64 64位版本,镜像名称sol-10-u8-ga-x86-dvd.iso11g R2只支持64位硬件平台

(注意:这里使用的是Solaris10 Update8因为u8里面包括了所有11g R2 需要的系统更新包)

Solaris10_x86_64 64位版本,镜像名称sol-10-u8-ga-x86-dvd.iso

Windows Server 2003 企业版,并启用DNSDHCP服务

数据库软件及其他

()

Grid组件solaris.x64_11gR2_grid.zip和数据库的安装文件solaris.x64_11gR2_database_1of2.zipsolaris.x64_11gR2_database_2of2.zip在第二版中分成2个文件

(RAC节点2上不用安装数据库软件)

XManager3.0远程登陆的软件(安装Oracle的过程中需要图形界面,XManager可以显示图形界面,其它远程登陆软件不支持)

硬件

CPU

1.6G 单核32

ADM Athlon II x2 245(64位双核主频2.9GHz)CPU一定要64

ADM Athlon 64 x2 4000+ (64位双核主频2.1GHz),节点2CPU较老一些

1台笔记本电脑

RAM

1G

2 x 2G (DDR800)

2 x 2G (DDR800)

Hard Disk

1 x 80G (安装Openfiler2.3系统)

2 x 1T SATA 32M缓存 (用作数据存储)

1 x 120G SATA

1 x 120G SATA

NIC

1 x Relteck 100M Nic

1 x Relteck 1000M Nic 千兆网卡用于Private Network

2 x Intel 100M Nic,在Solaris系统中普通网卡一般不能被识别,在开发环境中为节省成本都使用了百兆网卡

2 x Intel 100M Nic

 

说明:管理主机使用1台笔记本电脑,操作系统使用Windows Server 2003,远程登陆软件XManager安装在上面,DNSDHCP服务器也跑在上面。还有2台交换机和网线等联网所必需的设备。

(注意:如果条件有限要在VMWare中安装,运行两个RAC节点的主机要好一些(主要是CPU性能)否则安装会失败,因为Solaris系统比Linux系统对硬件的要求要高很多,我用1AMD Athlon II x2 245 双核64位主频2.9GHz Cpu6G内存,1T硬盘的主机,安装也成功了,但Cpu使用较老一点的Athon 64 x2 4000+ 就不行,跑2RAC节点Cpu占用率经常到100%,安装起来非常困难。)

整个安装过程分为11个大的步骤,前7个属于前置安装任务;8910是软件安装及建立集群数据库的步骤;最后第11个是安装后任务,主要包括故障切换、SCAN的使用等等。

一、安装Solaris10操作系统,在两个做RAC节点的主机上安装,并在安装完毕后作相关的系统设置。

二、安装Openfiler2.3系统,在作为共享存储的PC机上安装,并在安装之后为集群数据库划分存储及建立iqn

三、在所有RAC节点上配置iSCSI卷。

四、为安装Oracle RAC集群系统建立用户和组,并建立安装目录。

五、给共享磁盘建立软连接并授权,并为SSH建立软连接。

六、在两个RAC节点之间建立用户等效性。

七、在 Windows系统上安装DNSDHCP服务,用于安装Grid组件时配置GNS服务和SCAN服务。

(安装Grid组件前检测)

八、安装Grid网格组件(代替了以前的Clusterware)。

九、安装Database软件,并用asmca建立共享ASM磁盘组。

十、用dbca建立RAC集群数据库。

十一、安装后任务。

我对安装RAC数据库的体会是前置安装任务更为重要,一般安装Grid(或以前的Clusterware)和建库时出现的问题都是前置任务没有安装正确导致,关键是把前面的操作每一步都设置正确,总体上安装还是比较简单的。下面把每一步中的要点和容易出错的地方列出,关键步骤有截图。

 

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 一、安装 Solaris10 操作系统,在两个 RAC 节点的主机上安装,并在安装完毕后作相关的系统设置

1.安装Solaris10操作系统,安装的具体过程从略,只把要注意的几点一一指出

  (1)主机名和IP地址的分配,在安装过程中要把2块网卡都选中,分别设置主机名和IP地址

每台主机都有2块网卡,把第一块作为公网使用的网卡,把第二块作为私网使用的网卡,公网和私网的网段分开

 

网卡1

网卡2

公网节点名称

Public IP(公网)

Public Gateway

私网节点名称

Private IP(私网)

Private Gateway

RAC节点1

racnode1

192.168.1.151/24

192.168.1.1

racnode1-priv

192.168.2.151/24

RAC节点2

racnode2

192.168.1.152/24

192.168.1.1

racnode2-priv

192.168.2.152/24

注意:如果在安装过程中没有设置正确,可以在系统安装完毕后修改,在Solaris中修改方法如下:

改主机名:#setuname -n 新名称 ( #setuname -n racnode1)

改网卡对应的主机名:找到 /etc/hostname.网卡名 文件 (如:/etc/hostname.iprb0 写为 racnode1/etc/hostname.iprb1 写为 racnode1-priv)

改默认网关:先创建文件 #touch /etc/defaultrouter,之后在其中添加 192.168.1.1

/etc/netmasks 文件:在最后一行添加 192.168.2.0      255.255.255.0

 

  (2)在选择安装类型一步,要选择“Custom Install”,如下截图

bb

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 在选择 Solaris 系统安装包时,按下面截图所示选择,这样可以安装全部系统所需要的包,在安装完系统后就不用单独安装 Oracle 11g R2 所需要的包了。
bb

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4   (3) 在给文件系统分区时,要做修改,如下截图所示,点击 “Modify” 按钮做修改 注意:系统默认分配的swap交换空间太小了,要修改为10G(最少要保证2G),否则在安装Database软件时到Link RMAN一步会报错。
bb

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4   bb

如果在安装过程中没有修改swap空间的大小为2G以上,在系统安装完毕之后可以用添加文件的方式来增加swap空间,方法如下:

增加一个磁盘分区来扩展swap的空间,如 # swap -a /dev/dsk/c1t1d0s3,这里/dev/dsk/c1t1d0s3只是一个例子,是把分区设置在了slice3上,关于Solaris_x86_64磁盘分区的知识会在后面介绍。再修改 /etc/vfstab 文件,如

swap             -      /tmp      tmpfs            -      yes  size=2048M

 

2.在安装完成后首先启用远程登陆

# vi /etc/ssh/sshd_config

在其中找到 PermitRootLogin no 一行,把no修改为yes,再执行以下命令来重启ssh服务

# svcadm restart ssh

做完此修改后,就可以在管理机上用XManager远程登录软件来操作两个RAC节点了。

 

3.改用bash SHELL

Solaris系统默认使用的是sh SHELL,使用起来不是很方便,我们可以把默认的SHELL改为bash

# vi /etc/passwd

把第一行中的/sbin/sh 改为 /usr/bin/bash

重新登录系统后的操作符就会变为bash的提示符

-bash-3.00#

 

4.切换图形界面和字符界面,在服务器上关闭图形界面可以节省资源,下面介绍几个相关的命令

在图形界面下

-bash-3.00# /usr/dt/bin/dtconfig -d  (禁用)

-bash-3.00# /usr/dt/bin/dtconfig -e  (启用)

在字符界面下启动图形界面

-bash-3.00# /usr/dt/bin/dtsession

-bash-3.00# /usr/dt/bin/dtlogin

 

5.禁用 ntp sendmail 服务

Oracle 11g R2 中新添加了时间同步服务Cluster Time Synchronization Service(CTSS),要想使用该功能,就必须先关闭ntp服务

-bash-3.00# svcadm disable ntp

-bash-3.00# svcadm disable sendmail

 

6.添加安装Oracle所必须的包

查看必须安装的包,使用命令

-bash-3.00# pkginfo -i 包名

-bash-3.00# pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibm SUNWlibms SUNWsprot SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt SUNWcsl

添加一个包,使用命令

-bash-3.00# pkgadd -d 路径 包名  (如:#pkgadd -d /cdrom/Product SUNWgcc)

执行以下命令添加包

-bash-3.00# pkgadd -d /cdrom/SOL_10_1009_X86/SOLARIS_10/PRODUCT SUNWarc

 

7.设置udp参数

Oracle的官方文档中的方法是把udp参数写在/etc/system中,该方法不对,要按以下方法操作

/etc/init.d/ 目录下创建upd_rac文件

-bash-3.00# touch /etc/init.d/udp_rac

在其中添加以下内容

#!/sbin/sh

case "$1" in

'start')

       ndd -set /dev/udp udp_xmit_hiwat 65536

       ndd -set /dev/udp udp_recv_hiwat 65536

       ;;

'state')

       ndd /dev/udp udp_xmit_hiwat

       ndd /dev/udp udp_recv_hiwat

       ;;

*)

       echo "Usage: $0 { start | state }"

       exit 1

       ;;

Esac

最后建立一个软连接

-bash-3.00# ln -s /etc/init.d/udp_rac /etc/rc3.d/S86udp_rac

 

8.改系统参数(重启系统修改后的参数才能生效)

-bash-3.00# vi /etc/system 在其中添加以下内容

set noexec_user_stack=1

set semsys:seminfo_semmni=100

set semsys:seminfo_semmns=1024

set semsys:seminfo_semmsl=256

set semsys:seminfo_semvmx=23767

set shmsys:shminfo_shmmax=4294967295

set shmsys:shminfo_shmmin=1

set shmsys:shminfo_shmmni=100

set shmsys:shminfo_shmset=10

 

9.改/etc/hosts 文件,来配置Public Network Private Network

我们在这里只写上两个RAC节点的公网和私网地址就可以了,VIP和共享存储的IP地址不用写,本次安装要使用11g R2 的最新功能,在安装Grid组件是选择配置Grid Naming Service(GNS)服务,RAC节点的VIPDHCP服务自动获取。

两个RAC节点的hosts文件内容如下

RAC节点1

RAC节点2

#

# Internet host table

#    

127.0.0.1 localhost

 

#Public network

192.168.1.151 racnode1 loghost

192.168.1.152 racnode2

 

#Private network

192.168.2.151 racnode1-priv

192.168.2.152 racnode2-priv

#

# Internet host table

#    

127.0.0.1 localhost

 

#Public network

192.168.1.151 racnode1

192.168.1.152 racnode2  loghost

 

#Private network

192.168.2.151 racnode1-priv

192.168.2.152 racnode2-priv

注意:如果要使用GNS服务,这里一定不要写SCAN VIP地址(如:192.168.1.110      racnode-cluster-scan),否则在安装完Grid做集群配置时,配置Listener时会报错(/etc/hosts文件中写SCAN VIP和配置GNS服务,连个操作不能同时作)。如果把SCAN地址写在hosts文件中只能有一个地址,通过DNS服务可以设置3SCAN VIP地址。

 

10.在Solaris10系统上启用DNS客户端功能,使RAC节点支持Grid Naming Service(GNS)功能

  (1) 创建并修改 /etc/resolv.conf 文件

-bash-3.00# touch /etc/resolv.conf

-bash-3.00# vi /etc/resolv.conf

在其中添加以下内容

domain racnode.com

nameserver 192.168.1.130

(其中第一行“domain racnode.com”Solaris系统中必须写,在Linux系统中是不必写的)

 

  (2) 修改 /etc/nsswitch.conf 文件

找到hostsnetworks两行,在后面加dns,改之后为

hosts:     files dns

networks:      files dns

说明:作以上两点修改,就是在Solaris系统上启用DNS客户端功能,为支持11g R2中提供的新功能(GNS, SCAN),在RAC节点上必须启用DNS客户端功能,我把DNS服务器配置在一台Windows2003的主机上(IP: 192.168.1.130),即作管理的那台笔记本电脑,这部分只介绍Solaris系统的设置,DNS服务器的设置在后面单独说明。

 

11.双机时间同步

把节点2的时间与节点1同步,下面两个操作在两个RAC节点都执行

-bash-3.00# svcs -a|grep time

显示以下内容 (都处于不可用状态)

disabled        8:54:40 svc:/network/daytime:dgram

disabled        8:54:40 svc:/network/daytime:stream

disabled        8:54:40 svc:/network/time:dgram

disabled        8:54:40 svc:/network/time:stream

把后面2个改为可用

-bash-3.00# svcadm enable time:stream

-bash-3.00# svcadm enable time:dgram

(以上内容两个RAC节点都执行)

在节点2上执行以下命令,与节点1的时间同步

-bash-3.00# rdate racnode1

 

12Solaris系统关机及重启

使用命令关闭Solaris系统的方法是 (root用户)

-bash-3.00# shutdown -i 5

-bash-3.00# poweroff

重启动

-bash-3.00# shutdown -i 6

 


Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<



fj.png02_RAC部署的网络拓扑图.gif

fj.png01_RAC简易示意图.gif

fj.png01.jpg

fj.png02.jpg

fj.png03.jpg

fj.png04.jpg

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26712/viewspace-629276/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26712/viewspace-629276/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值