Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1987523
  • 博文数量: 176
  • 博客积分: 1857
  • 博客等级: 上尉
  • 技术积分: 2729
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-14 22:55
个人简介

吾生有涯,而知无涯,适当止学.循序渐进,步步提升 Talk is cheap, show me the code.

文章分类

全部博文(176)

文章存档

2019年(1)

2018年(14)

2017年(20)

2016年(31)

2015年(15)

2014年(5)

2013年(10)

2012年(80)

分类: Oracle

2016-03-29 11:00:47

基于VMware vCenter Server中的Linux RedHat 6.4 安装Oracle 11GR2 11.2.0.4 RAC集群

 

1.网络规划

   其中publicprivate要划分到不同的网段。保证安全传输

[root@Zracnode1 ~]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

10.2.13.80     zracnode1

10.2.13.81     zracnode2

10.2.13.82     zracnode1-vip

10.2.13.83     zracnode2-vip

10.2.12.140    zracnode1-priv

10.2.12.141    zracnode2-priv

10.2.13.142    zrac-scan

10.2.13.143    zrac-scan

10.2.13.144    zrac-scan

 

 

2.操作系统设置

  *.安装的操作系统是Linux Redhat 6.4

  *.磁盘划分配置

磁盘目录

磁盘大小

 

/

30GB

 

swap

16GB

 

/u01

100GB

 

 

3.共享磁盘设置

   共享磁盘配置有多种方式,nfs,磁盘阵列直接映射划分,我这里采用的是通过vmware vCenter server上的共享磁盘技术,操作步骤如下:

 

3.1. 需要对 SCSI 控制器,进行配置。对总线配置为[物理]模式。参数解释如下:

 

选项

描述

其他虚拟机不能共享虚拟磁盘。

虚拟

同一台服务器上的虚拟机可以共享虚拟磁盘。

物理

任何服务器上的虚拟机均可共享虚拟磁盘。

 

 

3.2    新建SCSI controller 1控制器,并设置相关参数,Vmware vCenter操作页面如下:

 

 

3.3   新建硬盘,硬盘类型为[Thick provision eager zeroed].并且设置virtual Device Node[SCSI(1:0)].在设置磁盘模式为[Independent-Persistent].操作页面如下:

 

       

3.4   添加已存在磁盘,在ZRAC02节点上面,添加磁盘。操作页面如下:

 

4. 安装RAC

4.1 先决条件

4.1.1 yum配置

 

挂载镜像配置yum

mount -o loop -t iso9660 /u01/software/rhel-server-6.4-x86_64-dvd.iso /u01/iso

 

[root@Zracnode1 u01]# cat /etc/yum.repos.d/rhel-source.repo

[Server]

name=Server

baseurl=file:///u01/iso

gpgcheck=0

gpgkey=file:///u01/iso/RPM-GPG-KEY-redhat-release

 

 

4.1.2 vnc配置

VNCLinux上的安装

#yum install tigervnc-server

# vncserver   #该命令在服务器端启动一个VNC进程。允许一个

   VNC View连接进来;如果需要多个View连接到服务器,需要多次执行上述命令;

Password:   # 为了不想任何人都可以任意遥控此计算机。因此当第1次启动VNC server时,会要求设置网络遥控的密码。

Verify:     # 验证密码;

进入root主目录下的.vnc隐含目录, 找到 xstartup文件并编辑:

# cd /root/.vnc

# vi xstartup

# twm & (注释掉该行)

startkde & (添加该行)

# killall Xvnc

# vncserver

 

 

4.2 配置/etc/hosts文件(所有节点)

[root@rac01 network-scripts]# vi /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

10.2.13.80     Zracnode1

10.2.13.81     Zracnode2

10.2.13.82     Zracnode1-vip

10.2.13.83     Zracnode2-vip

10.2.13.140    Zracnode1-priv

10.2.13.141    Zracnode2-priv

10.2.13.142 Zrac-scan

 

4.3 添加组合用户(所有节点)

groupadd -g 500 oinstall

groupadd -g 501 dba

groupadd -g 502 oper

groupadd -g 503 asmadmin

groupadd -g 504 asmoper

groupadd -g 505 asmdba

useradd -g oinstall -G dba,asmdba,oper oracle

useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid

 

检测用户oraclegrid

 

[root@rac1 ~]# id oracle

uid=500(oracle) gid=500(oinstall) groups=500(oinstall),501(dba),502(oper),505(asmdba)

[root@rac1 ~]# id grid

uid=501(grid) gid=500(oinstall) groups=500(oinstall),501(dba),502(oper), 503(asmadmin),504(asmoper),505(asmdba)

 

对用户oraclegrid设置密码

 

[root@rac1 ~]# passwd oracle

[root@rac1 ~]# passwd grid

 

4.4.建立目录(所有节点)

 

mkdir /u01/app

chown -R grid:oinstall /u01/app/

chmod -R 775 /u01/app/

mkdir -p /u01/app/oraInventory

chown -R grid:oinstall /u01/app/oraInventory/

chmod -R 775 /u01/app/oraInventory/

mkdir -p /u01/app/grid

mkdir -p /u01/app/oracle

chown -R grid:oinstall /u01/app/grid/

chown -R oracle:oinstall /u01/app/oracle/

chmod -R 775 /u01/app/grid/

chmod -R 775 /u01/app/oracle/

 

 

4.5. 修改内核参数(所有节点)

[root@rac01 ~]# vi /etc/sysctl.conf

# for oracle 11g

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2147483648

kernel.shmmax = 68719476736

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 = 1048586

使修改参数立即生效:

[root@rac01 ~]# /sbin/sysctl -p

 

[root@rac01 ~]# /etc/security/limits.conf

grid                 soft    nproc   2047

grid                 hard    nproc   16384

grid                 soft    nofile  1024

grid                 hard    nofile  65536

oracle               soft    nproc   2047

oracle               hard    nproc   16384

oracle               soft    nofile  1024

oracle               hard    nofile  65536

 

[root@rac01 ~]# /etc/pam.d/login

session    required     pam_limits.so

 

[root@rac01 ~]# /etc/profile

if [ $USER = "oracle" ] || [ $USER = "grid" ]; then

        if [ $SHELL = "/bin/ksh" ]; then

              ulimit -p 16384

              ulimit -n 65536

        else

              ulimit -u 16384 -n 65536

        fi

        umask 022

fi

 

 

4.6 .禁用防火墙和SELINUX(所有节点)

service iptables stop

chkconfig iptables off

chkconfig iptables --list

 

setenforce 0

sed -i 's/SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

 

4.7 .检查安装包

rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \

compat-libstdc++-33 \

elfutils-libelf \

elfutils-libelf-devel \

gcc \

gcc-c++ \

glibc \

glibc-common \

glibc-devel \

glibc-headers \

ksh \

libaio \

libaio-devel \

libgcc \

libstdc++ \

libstdc++-devel \

make \

sysstat \

unixODBC \

 

4.8 .配置用户环境变量(gridoracle用户_所有节点)

 

grid用户:

[grid@rac01 ~]# vi .bash_profile

export ORACLE_SID=+ASM1/+ASM2

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/grid/11.2

export PATH=$PATH:$ORACLE_HOME/bin

 

oracle用户:

[oracle@rac01 ~]# vi .bash_profile

export ORACLE_SID=racdb1/racdb2

export ORACLE_UNQNAME=$ORACLE_SID

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/11.2/db_1

export PATH=$PATH:$ORACLE_HOME/bin

 

 

4.9. ASM磁盘组规划&分区

4.9.1 使用fdisk划分磁盘,如下:

[root@rac01 ~]# fdisk /dev/sdb

划分效果如下:

---------------------------------------------------------------------------

 

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1         132     1060258+  83  Linux    //CRS1    900M

/dev/sdb2             133         264     1060290   83  Linux    //CRS2    900M

/dev/sdb3             265         396     1060290   83  Linux    //CRS3    900M

/dev/sdb4             397       13054   101675385    5  Extended

/dev/sdb5             397        3008    20980858+  83  Linux    //DATA1   30GB

/dev/sdb6            3009        5620    20980858+  83  Linux    //DATA2   30GB

/dev/sdb7            5621        8232    20980858+  83  Linux    //DATA3   30GB

/dev/sdb8            8233        9538    10490413+  83  Linux    //REC1    30GB

/dev/sdb9            9539       13054    28242238+  83  Linux    //REC2    30GB

 

4.9.2 安装asm

 [root@rac02 software]# rpm -ivh kmod-oracleasm-2.0.6.rh1-2.el6.x86_64.rpm

warning: kmod-oracleasm-2.0.6.rh1-2.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

Preparing...                ########################################### [100%]

   1:kmod-oracleasm         ########################################### [100%]

[root@rac02 software]# rpm -ivh oracleasm-support-2.1.8-1.el6.x86_64.rpm

warning: oracleasm-support-2.1.8-1.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY

Preparing...                ########################################### [100%]

   1:oracleasm-support      ########################################### [100%]

[root@rac02 software]# rpm -ivh oracleasmlib-2.0.4-1.el6.x86_64.rpm

warning: oracleasmlib-2.0.4-1.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY

Preparing...                ########################################### [100%]

   1:oracleasmlib           ########################################### [100%]

4.9.3 配置asm

RAC01执行下列操作:

[root@rac1 ~]# /etc/init.d/oracleasm configure

[root@rac1 ~]# /etc/init.d/oracleasm configure

Default user to own the driver interface []: grid

Default group to own the driver interface []: asmadmin

Start Oracle ASM library driver on boot (y/n) [n]: y

Scan for Oracle ASM disks on boot (y/n) [y]: y

Writing Oracle ASM library driver configuration: done

Initializing the Oracle ASMLib driver:                     [  OK  ]

Scanning the system for Oracle ASMLib disks:               [  OK  ]

 

 

RAC02执行下列操作:

[root@rac02 software]# /etc/init.d/oracleasm configure

Default user to own the driver interface []: grid

Default group to own the driver interface []: asmadmin

Start Oracle ASM library driver on boot (y/n) [n]: y

Scan for Oracle ASM disks on boot (y/n) [y]: y

Writing Oracle ASM library driver configuration: done

Initializing the Oracle ASMLib driver:                     [  OK  ]

Scanning the system for Oracle ASMLib disks:               [  OK  ]

 

 

以下操作在rac其中一个节点上进行,我在rac1上操作

[root@rac1 ~]# /etc/init.d/oracleasm createdisk CRS1 /dev/sdb1

[root@rac1 ~]# /etc/init.d/oracleasm createdisk CRS2 /dev/sdb2

[root@rac1 ~]# /etc/init.d/oracleasm createdisk CRS3 /dev/sdb3

[root@rac1 ~]# /etc/init.d/oracleasm createdisk DATA1 /dev/sdb5

[root@rac1 ~]# /etc/init.d/oracleasm createdisk DATA2 /dev/sdb6

[root@rac1 ~]# /etc/init.d/oracleasm createdisk DATA3 /dev/sdb7

[root@rac1 ~]# /etc/init.d/oracleasm createdisk REC1 /dev/sdb8

[root@rac1 ~]# /etc/init.d/oracleasm createdisk REC2 /dev/sdb9

 

以下操作在另一个节点上进行,RAC2上操作

[root@rac02 software]# oracleasm scandisks

Reloading disk partitions: done

Cleaning any stale ASM disks...

Scanning system for ASM disks...

[root@Zracnode2 software]# oracleasm listdisks

CRS1

CRS2

CRS3

DATA1

DATA2

DATA3

REC1

REC2

 

4.10.gridoracle用户配置SSH互信

sshscp创建连接

ls -l /usr/local/bin/ssh

ls -l /usr/local/bin/scp

不存在则创建

[root@rac01 ~]# /bin/ln -s /usr/bin/ssh /usr/local/bin/ssh

[root@rac01 ~]# /bin/ln -s /usr/bin/scp /usr/local/bin/scp

 

grid用户配置SSH

在每个节点上:

[root@rac01 ~]# su – grid

[grid@rac01 ~]# mkdir ~/.ssh

[grid@rac01 ~]#cd .ssh

[grid@rac01 ~]# ssh-keygen -t rsa

[grid@rac01 ~]# ssh-keygen -t dsa

 

在节点1上:

[grid@rac01 ~]# touch authorized_keys

[grid@rac01 ~]# ssh rac01 cat /home/grid/.ssh/id_rsa.pub >> authorized_keys

[grid@rac01 ~]# ssh rac02 cat /home/grid/.ssh/id_rsa.pub >> authorized_keys

[grid@rac01 ~]# ssh rac01 cat /home/grid/.ssh/id_dsa.pub >> authorized_keys

[grid@rac01 ~]# ssh rac02 cat /home/grid/.ssh/id_dsa.pub >> authorized_keys

[grid@rac01 ~]# scp authorized_keys rac02:/home/grid/.ssh/

 

 

分别在每个节点上:

[grid@rac01 ~]# ssh rac01 date

[grid@rac01 ~]# ssh rac02 date

 

[grid@rac01 ~]# ssh-agent $SHELL

[grid@rac01 ~]# ssh-add

 

oracle用户配置SSH

在每个节点上:

[root@rac01 ~]# su – oracle

[oracle@rac01 ~]# mkdir ~/.ssh

[oracle@rac01 ~]#cd .ssh

[oracle@rac01 ~]# ssh-keygen -t rsa

[oracle@rac01 ~]# ssh-keygen -t dsa

 

在节点1上:

[oracle@rac01 ~]# touch authorized_keys

[oracle@rac01 ~]# ssh rac01 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys

[oracle@rac01 ~]# ssh rac02 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys

[oracle@rac01 ~]# ssh rac01 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys

[oracle@rac01 ~]# ssh rac02 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys

[oracle@rac01 ~]# scp authorized_keys rac02:/home/oracle/.ssh/

 

分别在每个节点上:

[oracle@rac01 ~]# ssh rac01 date

[oracle@rac01 ~]# ssh rac02 date

 

[oracle@rac01 ~]# ssh-agent $SHELL

[oracle@rac01 ~]# ssh-add

 

4.11.配置NTP

[root@rac01 ~]#vi /etc/ntp.conf

...

#server 0.centos.pool.ntp.org

#server 1.centos.pool.ntp.org

#server 2.centos.pool.ntp.org

server xxx.xxx.xxx.xxx

#server 127.127.1.0     # local clock

#fudge  127.127.1.0 stratum 10

 

[root@rac01 ~]# vi /etc/sysconfig/ntpd

# Drop root to id 'ntp:ntp' by default.

OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"

 

# Set to 'yes' to sync hw clock after successful ntpdate

SYNC_HWCLOCK=yes

 

# Additional options for ntpdate

NTPDATE_OPTIONS=""

 

启动

[root@rac01 ~]# chkconfig ntpd on

[root@rac01 ~]# service ntpd start

[root@rac01 ~]# ntpdate -d -u xxx.xxx.xxx.xxx

 

启用name service cache daemon

[root@rac01 ~]# chkconfig --level 35 nscd on

[root@rac01 ~]# service nscd restart

 
-----------后面两个阶段,分别是GI安装和oracle安装,未完待续!~

阅读(7939) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~