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

1、安装环境node

一、实验环境linux

虚拟机:VMware Workstation 8.0.3_64bitc++

ORACLEOracle Database11g11.2.0.3.0-64bit数据库

操做系统:Red HatEnterprise Linux  6.5vim


2、节点配置bash

描述
节点一 节点二 节点三 ISCSI存储
主机名称 note1 note2 note3 iscsi-asm
Public IP 172.16.1.7(vlan3) 172.16.1.8(vlan3) 172.16.1.9(vlan3) 172.16.1.20(vlan3)
Private IP 192.168.1.11(vlan5) 192.168.1.12(vlan5) 192.168.1.13(vlan5)
Virtual IP 172.16.1.17 172.16.1.18 172.16.1.19
Scan IP 172.16.1.十、172.16.1.十一、172.16.1.12
实例名 racdb1 racdb2 racdb3
/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和主机名便可。session


2、系统基本配置oracle

一、搭建存储服务器

A、添加磁盘建立软件RAID5

wKioL1cgoHPi8UF4AADBUvH0cos009.jpg

建立软件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

> <targetiqn.2016-04.com.iscsi-asm.raid5:target1>

>   backing-store  /dev/md0

> </target>

> 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存储后的磁盘,请勿格式化

wKiom1cgoiyz9hdCAABu_4hpSYY951.jpg

二、UDEV配置ASM

AASM磁盘的规划

ASM磁盘组
磁盘组大小 ASM冗余 ASM磁盘 ISCSI磁盘路径 存储存放规则
+CRS 20G
EXTERN
/dev/asm-crs1
/dev/sdb1 OCR、表决磁盘
+DATA 60G EXTERN /dev/asm-db1 /dev/sdb2 数据文件
+ARCH 40G EXTERN /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

wKioL1cgpTWAsrwTAACx1rN4o4U538.jpg


3、配置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


一、  配置内核参数

三个节点执行以下脚本:

#!/bin/bash
prepareSystem(){
# 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<<EOF
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
EOF
}
Configure2(){
    cat >>/etc/security/limits.conf <<EOF
oracle   soft  nproc  2047
oracle   hard  nproc  16384
oracle   soft  nofile 1024
oracle   hard  nofile 65536
grid   soft  nproc  2047
grid   hard  nproc  16384
grid   soft  nofile 1024
grid   hard  nofile 65536
EOF
}
Configure3(){
    cat >> /etc/pam.d/login<<EOF
session    required     pam_limits.so
EOF
}
 
prepareSystem
Configure1 && sysctl -p
Configure2
Configure3

[root@note1 ~] # sh configure.sh

[root@note2 ~] # sh configure.sh

[root@note3 ~] # sh configure.sh


二、  建立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 hh24: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 hh24: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



4、安装RAC集群软件

一、  安装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


二、  安装Grid软件

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

[root@note1 ~]#export display=0.0

[root@note1 ~]#xhost +

[root@note1 ~]#su - grid

[grid@note1 grid]#./runInstaller

wKiom1cgpkqSdvTCAAEgvkIEX9Q465.jpg

wKiom1cgpqfBvwOIAADmyGe4Mwc612.jpg



SCAN Name/etc/hosts与里面scanname同样,不然报[INS-40718]错误

wKiom1cgp0HyMcdMAAFZX4D1i5w261.jpg


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

wKiom1cgp5nC2CniAAHROxCG7XA043.jpg

wKioL1cgqbrww3t3AAEvLFkC7Xo375.jpg


wKiom1cgqPCSMKO4AAD2kgAj688160.jpg


wKiom1cgqPGAh8UtAAF_AVlneYE417.jpg


wKiom1cgqPKimq57AACg1yiZOR0594.jpg


wKioL1cgqb3Tn359AAEgP-bMBBA013.jpg


wKioL1cgqb6zU9pZAAEYTpCWzSU444.jpg


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

wKioL1cgqb-yQkzIAAEzduB9CN4985.jpg


wKiom1cgqPWT-j3kAAHzMjhP4g0572.jpg


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

[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,在这里能够忽略


wKioL1cgq8nAWYaLAAF__1GxV-0321.jpg


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

wKiom1cgqwCy6aRrAAJ1QsV9YJw931.jpg


一、 安装oracle软件

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

wKioL1cgrNTy-jTqAADwbmzL9D8307.jpg

配置ORACLE用户的SSH信任关系

wKiom1cgrAmzZJoZAAEn1QaSJK8005.jpg

ORACLE软件的安装目录

wKiom1cgrAqxlSyTAAEaoD-9m6c914.jpg


wKiom1cgrAuzTsx_AAElVV3qPFE447.jpg


形成缘由是由于没有配置DNS,在这里能够忽略

wKiom1cgrAuTchBSAAEoDduJr1Y986.jpg


wKiom1cgrA3xhPXOAAHAUKdM7do721.jpg


执行脚本:

[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

 

5、建立ASM磁盘组

[root@note1~]#xhost +

[root@note1~]#su – grid

[grid@note1 ~]#asmca

wKiom1cgrQaxOPI9AAH5efJENyg361.jpg


wKioL1cgrdPhkQyaAAG8Z68H0Z4902.jpg


wKiom1cgrQjj1xR2AAE_VyxBsgg220.jpg


  6、建立数据库

[root@note1~]#xhost +

[root@note1~]#su – oracle

[oracle@note1~]#dbca

wKiom1cgrh_SwwQMAAE8bTSQVnY669.jpg


wKioL1cgruqAr3ZZAAD1lfDN7IE305.jpg


wKioL1cgruyCwxl_AAHKGguGDEM710.jpg


wKioL1cgru2QjPtsAAHXVYfdnOM401.jpg


wKioL1cgru7g1eHWAAFYascKRnY584.jpg


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

相关文章
相关标签/搜索