千家信息网

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)

发表于:2024-10-05 作者:千家信息网编辑
千家信息网最后更新 2024年10月05日,一、安装环境1、实验环境虚拟机:VMware Workstation 8.0.3_64bitORACLE:Oracle Database11g11.2.0.3.0-64bit操作系统:Red HatE
千家信息网最后更新 2024年10月05日RedHat 6.5+11G+RAC+ASM安装与配置(三节点)

一、安装环境

1、实验环境

虚拟机:VMware Workstation 8.0.3_64bit

ORACLEOracle Database11g11.2.0.3.0-64bit

操作系统:Red HatEnterprise Linux 6.5


2、节点配置

描述
节点一节点二节点三ISCSI存储
主机名称note1note2note3iscsi-asm
Public IP172.16.1.7(vlan3)172.16.1.8(vlan3)172.16.1.9(vlan3)172.16.1.20(vlan3)
Private IP192.168.1.11(vlan5)192.168.1.12(vlan5)192.168.1.13(vlan5)
Virtual IP172.16.1.17172.16.1.18172.16.1.19
Scan IP172.16.1.10、172.16.1.11、172.16.1.12
实例名racdb1racdb2racdb3
/etc/hosts

127.0.0.1 localhost.localdomain localhost
#Public IP
172.16.1.7 note1
172.16.1.8 note2
172.16.1.9 note3
#Virtual IP
172.16.1.17 note1-vip
172.16.1.18 note2-vip
172.16.1.19 note3-vip
#Private IP
192.168.1.11 note1-priv
192.168.1.12 note2-priv
192.168.1.13 note3-priv
#Scan IP (scan ip为奇数,推荐3个)
172.16.1.10 cluster-scan
172.16.1.11 cluster-scan

172.16.1.12 cluster-scan

172.16.1.20 iscis-asm


以上环境配置过程略,可通过VM的Clone功能克隆多台机器之后变更IP和主机名即可。


二、系统基本配置

1、搭建存储服务器

A、添加磁盘创建软件RAID5

创建软件RAID5,共3块磁盘,无热备,具体请查阅相关资料

[root@iscsi-asm ~] # mdadm -Cv /dev/md0 -l5 -n3/dev/sd[bcd]1

B、配置ISCSI磁盘

安装服务器端使用的scis-target-utils包,安装前先确认以下安装包已安装:kernel-sourcekernelgccperl

[root@iscsi-asm~] # rpm -ivh scsi-target-utils*.rpm

// RedHat 6在光盘Packages目录下

// RedHat 5在光盘ClusterStorage目录下

配置服務端/etc/tgt/targets.conf文件

[root@iscsi-asm ~] # cat >> /etc/tgt/targets.conf << EOF

>

> backing-store /dev/md0

>

> EOF

启动ISCSI服务

[root@iscsi-asm ~] # service tgtd restart //重启iscsi服务

[root@iscsi-asm ~] # chkconfig --level 2345 tgtd on //设置开机自启动

[root@iscsi-asm ~] # chkconfig --list tgtd //查看自启动项

[root@iscsi-asm ~] # tgt-admin --show target1 //查看tgtd是否配置成功

2、挂载ISCSI磁盘

A、节点一note1 上:

[root@note1 ~] # rpm -ivh iscsi-initiator-utils*.rpm

[root@note1 ~] # service iscsid restart //重启iscsi服务

[root@note1 ~] # chkconfig --level 2345 iscsid on //设置开机自启动

[root@note1 ~] # chkconfig --list iscsid //查看自启动项

[root@note1 ~] # iscsiadm -m node -p 172.16.1.20 -l //登录iscsi存储

B、节点二note2 上:

[root@note2 ~] # rpm -ivh iscsi-initiator-utils*.rpm

[root@note2 ~] # service iscsid restart //重启iscsi服务

[root@note2 ~] # chkconfig --level 2345 iscsid on //设置开机自启动

[root@note2 ~] # chkconfig --list iscsid //查看自启动项

[root@note2 ~] # iscsiadm -m node -p 172.16.1.20 -l //登录iscsi存储

C、节点三note3 上:

[root@note3 ~] # rpm -ivh iscsi-initiator-utils*.rpm

[root@note3 ~] # service iscsid restart //重启iscsi服务

[root@note3 ~] # chkconfig --level 2345 iscsid on //设置开机自启动

[root@note3 ~] # chkconfig --list iscsid //查看自启动项

[root@note3 ~] # iscsiadm -m node -p 172.16.1.20 -l //登录iscsi存储

D、划分ISCSI磁盘

[root@note1 ~] # fdisk /dev/sdb //挂载iscsi存储后的磁盘,请勿格式化

2、UDEV配置ASM

AASM磁盘的规划

ASM磁盘组
磁盘组大小ASM冗余ASM磁盘ISCSI磁盘路径存储存放规则
+CRS20G
EXTERN
/dev/asm-crs1
/dev/sdb1OCR、表决磁盘
+DATA60GEXTERN/dev/asm-db1/dev/sdb2数据文件
+ARCH40GEXTERN/dev/asm-db2/dev/sdb3归档文件

若表决磁盘所在磁盘组属性为EXTERNAL,为一块,若为NORMAL,则需要三块,若为HIGH,则需要五块,需要为奇数,这是为了发生脑裂时,用于表决。


B、配置UDEV

[root@note1 ~] # scsi_id -g -u -d /dev/sdb //获取磁盘UUID

1IET_00010001

[root@note1 ~] #vim /etc/udev/rules.d/99-oracle-asmdevices.rules

KERNEL=="sdb1", BUS=="scsi",PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent",RESULT==" 1IET_00010001",NAME="asm-crs″, OWNER="grid", GROUP="asmadmin", MODE="0660″

KERNEL=="sdb2", BUS=="scsi", PROGRAM=="/sbin/scsi_id-g -u -d /dev/$parent",RESULT==" 1IET_00010001", NAME="asm-db1", OWNER="grid",GROUP="asmadmin", MODE="0660″

KERNEL=="sd?1″, BUS=="scsi",PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent",RESULT==" 1IET_00010001",NAME="asm-db2″, OWNER="grid", GROUP="asmadmin", MODE="0660″

UDEV配置文件传到其他节点

[root@note1 ~] # rsync -r /etc/udev/rules.d/99-oracle-asmdevices.rules 172.16.1.8: /etc/udev/rules.d/

[root@note1 ~] # rsync -r /etc/udev/rules.d/99-oracle-asmdevices.rules 172.16.1.9: /etc/udev/rules.d/

C、启动UDEV

[root@note1 ~] #start_udev

[root@note2 ~] #start_udev

[root@note3 ~] #start_udev


三、配置ORACLE軟件安裝环境

1、安裝oracle RAC所需的linux軟件包

[root@note1~] # yum -y install binutils* compat-libstdc++* elfutils-libelf* elfutils-libelf-devel* compat-libcap1 * elfutils-libelf-devel-static* gcc* gcc-c++* glibc* glibc-common* glibc-devel* glibc-headers* ksh* libaio* libaio-devel* libgcc*libgomp* libstdc++* libstdc++-devel* make* sysstat* unixODBC * unixODBC-devel*

节点二和节点三上执行相同的命令,将所需的包安装上。


2、配置集群时间同步服务

这里使用集群时间同步服务(CTSS),需要卸载网络时间协议(NTP

[root@note1 ~] #service ntpd stop

[root@note1 ~] #chkconfig -level 2345 ntpd off

[root@note1 ~] #rm -rf /etc/ntp.conf

节点二和节点三上执行相同的命令,卸载NTP

在集群安装完后,要确认ctssd是否处于活动状态

[grid@note1 ~] #crsctl check ctss


1、 配置内核参数

三个节点执行如下脚本:

#!/bin/bashprepareSystem(){# Set SElinux to disabled mode regardless of its initial value  sed -i -e's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config  setenforce 0# stop iptables  /etc/init.d/iptables stop  chkconfig --level 0123456 iptables off  chkconfig --level 0123456 ip6tablesoff} Configure1(){    cat >> /etc/sysctl.conf<>/etc/security/limits.conf <> /etc/pam.d/login<

[root@note1 ~] # sh configure.sh

[root@note2 ~] # sh configure.sh

[root@note3 ~] # sh configure.sh


2、 创建RAC相关权限组,用户和目录

A、 创建相关组(三个节点上执行)

[root@note1 ~] # groupadd oinstall

[root@note1 ~] # groupadd asmadmin

[root@note1 ~] # groupadd asmdba

[root@note1 ~] # groupadd asmoper

[root@note1 ~] # groupadd dba

[root@note1 ~] # groupadd oper


B、 创建grid用户:

节点一ORACLE_SID=+ASM1

[root@note1 ~] # useradd -g oinstall -G asmadmin,asmdba,asmoper grid

[root@note1 ~] # passwd grid

节点二ORACLE_SID=+ASM2

[root@note2 ~] # useradd -g oinstall -G asmadmin,asmdba,asmoper grid

[root@note2 ~] # passwd grid

节点三ORACLE_SID=+ASM3

[root@note3 ~] # useradd -g oinstall -G asmadmin,asmdba,asmoper grid

[root@note3 ~] # passwd grid

编辑grid用户的环境配置文件(~/.bash_profile,加入如下内容

export PS1="`/bin/hostname -s`-> "

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_SID=+ASM1 #节点二为+ASM2,节点三为+ASM3

export ORACLE_BASE=/u/app/grid

export ORACLE_HOME=/u/app/11.2.0/grid

export ORACLE_TERM=xterm

export NLS_DATE_FORMAT='yyyy/mm/dd hh34:mi:ss'

export TNS_ADMIN=$ORACLE_HOME/network/admin

export PATH=/usr/sbin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

exportCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

umask 022


C、 创建ORACLE用户

节点一:ORACLE_SID=racdb1

[root@note1 ~] # usermodd -g oinstall -G dba,oper,asmdba oracle

[root@note1 ~] # passwd oracle

节点二:ORACLE_SID=racdb2

[root@note2 ~] # usermodd -g oinstall -G dba,oper,asmdba oracle

[root@note2 ~] # passwd oracle

节点三:ORACLE_SID=racdb3

[root@note3 ~] # usermodd -g oinstall -G dba,oper,asmdba oracle

[root@note3 ~] # passwd oracle

编辑oracle用户的环境配置文件(~/.bash_profile,加入如下内容

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_SID=racdb1 #节点二为racdb2,节点三为racdb3

export ORACLE_BASE=/u/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_UNQNAME=racdb

export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORACLE_TERM=xterm

export PATH=/usr/sbin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH

exportLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:$ORACLE_HOME/jdbc/lib

exportCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

export NLS_DATE_FORMAT='yyyy/mm/dd hh34:mi:ss'

umask 022

5、创建软件安装目录

在三个节点上执行以下命令:

[root@note1 ~] # mkdir -p/u/app/grid

[root@note1 ~] # mkdir -p/u/app/11.2.0/grid

[root@note1 ~] # chown -Rgrid:oinstall /u/app

[root@note1 ~] # mkdir -p/u/app/oracle

[root@note1 ~] # chown oracle:oinstall/u/app/oracle

[root@note1 ~] # chmod -R775 /u



四、安装RAC集群软件

1、 安装cvuqdisk

Cvuqdisk rpm包在gridrpm目录中

三个节点上执行:

[root@note1 ~] # CVUQDISK_GRP=oinstall;export CVUQDISK_GRP

[root@note1 ~] # rpm -ivh cvuqdisk-1.0.9-1.rpm

[root@note2 ~] # CVUQDISK_GRP=oinstall;export CVUQDISK_GRP

[root@note2 ~] # rpm -ivh cvuqdisk-1.0.9-1.rpm

[root@note3 ~] # CVUQDISK_GRP=oinstall;export CVUQDISK_GRP

[root@note3 ~] # rpm -ivh cvuqdisk-1.0.9-1.rpm


2、 安装Grid软件

许多文档都在安装之前配置了各节点之间oraclegrid用户的SSH信任关系,这里使用软件配置选项进行配置。其实就是使用了grid软件包中sshsetup目录下的sshUserSetup.sh脚本。

[root@note1 ~]#export display=0.0

[root@note1 ~]#xhost +

[root@note1 ~]#su - grid

[grid@note1 grid]#./runInstaller




SCAN Name/etc/hosts与里面scanname一样,否则报[INS-40718]错误


添加其它两个节点,设置SSH,输入密码之后点击设置









因未配置DNS,此错误可以忽略。忽略报错会弹窗,问是否忽略错误,确认就好。



第一个脚本,在三个节点上依次执行:

[root@note1~]# sh /u/app/oraInventory/orainstRoot.sh

[root@note2~]# sh /u/app/oraInventory/orainstRoot.sh

[root@note3~]# sh /u/app/oraInventory/orainstRoot.sh

第二個腳本,在三个节点上依次執行

[root@note1~]# sh /u/app/11.2.0/grid/root.sh //执行要一定的时间,

[root@note2~]# sh /u/app/11.2.0/grid/root.sh

[root@note3~]# sh /u/app/11.2.0/grid/root.sh

执行以上的脚本,一定要按照顺序来,先在各节点上执行第一脚本,之后再执行第二个,一个节点一个节点执行完之后,再到下个一个节点执行,这个很重要。

接下来还会包一个错误,如下图所示,造成原因是因为没有配置DNS,在这里可以忽略



在节点一grid用户上:执行crs_stat -t,查看集群服务的开启情况,其中以gsd结尾的为兼容9i的服务,可以不启用。


1、 安装oracle软件

为节省篇幅,我只截了部分较重要的图

配置ORACLE用户的SSH信任关系

ORACLE软件的安装目录



造成原因是因为没有配置DNS,在这里可以忽略



执行脚本:

[root@note1~]# sh/u/app/oracle/product/11.2.0/db_1/root.sh

[root@note2~]# sh /u/app/oracle/product/11.2.0/db_1/root.sh

[root@note3~]# sh /u/app/oracle/product/11.2.0/db_1/root.sh

五、创建ASM磁盘组

[root@note1~]#xhost +

[root@note1~]#su - grid

[grid@note1 ~]#asmca




六、创建数据库

[root@note1~]#xhost +

[root@note1~]#su - oracle

[oracle@note1~]#dbca






至此,基本设置已经完成,接下来就是下一步,下一步的事,相关的参数自行调整。





0