Oracle RAC 添加节点

摘要:Oracle RAC 添加节点操作,跟安装类似,配置所需OS参数、IP规划等,需要在rac层和db层分别添加。

1安装准备工作

1.1Â加节点步骤

加节点不需要停机,在线操作,但需要在业务较低时段进行,若安排重启测试和业务测试,则视情况申请停机时间。

1ã��Â原生产库两台主机安装新的操作系统,连接现生产库所用的存储并进行多路径的配置

2ã��Â配置网络

3ã��Â检查系统包和配置等价性等一系列加节点操作,具体操作参考章节1.3~1.12

4ã��Â在现有生产库节点1上进行加节点操作。

5ã��Â检查各个节点的crs和instance的状态。

节点

节点名称

实例名称

数据库名称

处理器

RAM/SWAP

操作系统

Master-db-03

db3

db

Intel(R) Xeon(R) CPU E7- 4870  @ 2.40GHz

256GB/128GB

RedHatEL6.5

Master-db-04

db4

Intel(R) Xeon(R) CPU E7- 4870  @ 2.40GHz

256GB/128GB

RedHatEL6.5

网络配置

节点名称

公共IP地址

专用IP地址

虚拟IP地址

SCAN名称

SCAN IP地址

Master-db-03

10.0.3.11

10.0.5.11

10.0.3.111

scan-ip

10.0.3.223

Master-db-04

10.0.3.12

10.0.5.12

10.0.3.112

Oracle软件组件

软件组件

操作系统用户

主组

辅助组

主目录

Oracle基目录/Oracle主目录

Grid Infra

Grid

oinstall

asmadmin、asmdba、asmoper

/home/grid

/opt/oracrs/base

/opt/oracrs/product/11gr2/grid

Oracle RAC

Oracle

oinstall

dba、oper、asmdba

/home/oracle

/opt/oracle/

/opt/oracle/product/11.2.0/db

存储组件

存储组件

类型

卷大小

ASM卷组名

ASM冗余

设备名

OCR/VF

ASM

10G

DG_OCR

NORMAL

按新的标准

数据

ASM

2000G

DG_ACC

External

按新的标准

数据

ASM

2000G

DG_INDX

External

按新的标准

数据

ASM

2000G

DG_OPT

External

按新的标准

数据

ASM

200G

DG_ORA

External

按新的标准

归档日志

ASM

200G

DG_ARCH

External

按新的标准

1.1Â检查系统要求

E.补丁包

rpm -q binutils \

compat-libstdc++-33 \

elfutils-libelf \

elfutils-libelf-devel \

gcc \

gcc-c++ \

glibc \

glibc-common \

glibc-devel \

glibc-headers \

ksh \

pdksh \

libaio \

libaio-devel \

libgcc \

libstdc++ \

libstdc++-devel \

libXp \

make \

numactl-devel \

sysstat \

unixODBC \

unixODBC-devel \

compat-libcap1.x86_64 \

libcap.x86_64|grep not

F.核心参数

编辑/etc/sysctl.conf文件,添加下面的内容

# for oracle

fs.aio-max-nr=1048576

fs.file-max=6815744

kernel.sem=250 32000 100 128

kernel.shmmni=4096

kernel.shmall=8388608

kernel.shmmax=32212254720

net.ipv4.ip_local_port_range=900065000

net.core.rmem_default=1048576

net.core.rmem_max=1048576ànet.core.rmem_max = 4194304(11.2.0.3)

net.core.wmem_default=262144

net.core.wmem_max=1048586

然后执行以下命令使参数生效:

sysctl –p

1.1Â设置/etc/hosts

私有IP地址必需与公网分离,两个节点可互相访问可以ping通,必须在/etc/hosts里有;

虚拟IP地址同公网IP地址是一个网段的,如果有DNS就注册在DNS中,如果没有DNS就写在/etc/hosts文件里;

公网IP地址,是主机真正的IP地址,主机管理员预先分配,如果有DNS就注册在DNS中,如果没有DNS就写在/etc/hosts文件里),并且保证写入每个客户系统中的hosts文件。

在各个节点的网卡配置必须相同,例如:第一个节点公共IP是用eth0,那么其他节点也得用eth0

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1               localhost.localdomain localhost

::1             localhost6.localdomain6 localhost6

# that require network functionality will fail.

127.0.0.1 localhost

10.0.3.22 MASTER-DB-02

10.0.3.21 MASTER-DB-01

10.0.3.12 MASTER-DB-04

10.0.3.11 MASTER-DB-03

#heart ip

10.0.5.22  db2-heart

10.0.5.21  db1-heart

10.0.5.12  db4-heart

10.0.5.11  db3-heart

#vip

10.0.3.122  db2-vip

10.0.3.121  db1-vip

10.0.3.112  db4-vip

10.0.3.111  db3-vip

#scan ip

10.0.3.123 scan-ip

设置完/etc/hosts后,建议在各自节点通过名字PING对方,看能否PING通。

建立oracle、grid用户和dba组

#/usr/sbin/groupadd -g 501 oinstall

#/usr/sbin/groupadd -g 502 dba

#/usr/sbin/groupadd -g 503 oper

/#usr/sbin/groupadd -g 504 asmadmin

#/usr/sbin/groupadd -g 505 asmoper

#/usr/sbin/groupadd -g 506 asmdba

#/usr/sbin/useradd -g oinstall -G dba,asmdba,oper oracle

/#usr/sbin/useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid

1.1Â配置等效性

注意:需要在GRID和ORACLE用户下分别执行

# su - oracle

$ mkdir ~/.ssh

$ chmod 700 ~/.ssh

--产生rsa,dsa

$ ssh-keygen -t rsa

注意:以上操作分别在两台机器上执行

--在节点1上执行:

$ sshmaster-db-04cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

$ sshmaster-db-03cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

$ scp ~/.ssh/authorized_keysmaster-db-02:~/.ssh/.

$ scp ~/.ssh/authorized_keysmaster-db-03:~/.ssh/.

$ scp ~/.ssh/authorized_keysmaster-db-04:~/.ssh/.

--测试SSH在两边都不用输入密码,表示SSH配置完成

$ sshmaster-db-01date

$ sshmaster-db-02date

$ sshmaster-db-03date

$ sshmaster-db-04date

1.1Â设置系统限制

--在每个节点上执行相同的操作

编辑/etc/security/limits.conf,添加如下内容:

oralce    soft  nofile 131072

oracle   hard  nofile 131072

grid    soft  nofile 131072

grid    hard  nofile 131072

oracle hard memlock 153092096

oracle soft memlock 153092096

编辑/etc/pam.d/login,添加如下内容:

session required /lib/security/pam_limits.so

1.2Â建立GRID及RAC安装目录

--建立ORACLE_HOME目录

mkdir -p /opt/oracle/product/11.2.0/db

--建立ORACLE_GRID_HOME目录

mkdir -p /opt/oracrs/base

mkdir -p /opt/oracrs/product/11gr2/grid

--授权

chown  -R oracle:oinstall/opt/oracle

chown–R grid:oinstall /opt/oracrs

chmod -R 775 /opt

1.3Â关闭防火墙

chkconfig --list iptables

chkconfig iptables off

chkconfig --list iptables

service iptables stop

1.4Â设置NTP服务

配置NTP服务

1.5Â设置用户的环境变量

#gird用户

修改~/.bash_profile文件,增加以下内容:

umask 022

export ORACLE_BASE=/opt/grid

export ORACLE_HOME=/opt/crs_home/product/11.2.0/grid

export ORACLE_SID=+ASM1

export PATH=/usr/sbin:$PATH

exportPATH=$ORACLE_HOME/bin:$PATH

为了让以上内容立即生效,执行以下命令即可:

$Source .bash_profile

#oracle用户

修改~/.bash_profile文件,增加以下内容:

umask 022

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORA_GRID_HOME=/opt/crs_home/product/11.2.0/grid

export ORACLE_SID=db3

export PATH=/usr/sbin:$PATH

exportPATH=$ORACLE_HOME/bin:$PATH :$ORA_GRID_HOME/bin

为了让以上内容立即生效,执行以下命令即可:

$Source .bash_profile

1.6Â配置磁盘设备

使用UDEV绑定磁盘设备,参考现生产库磁盘设备配置。

1.7Â使用CVU检查新加节点的硬件和OS环境

$ cluvfy stage -post hwos -ndb-maser-3,master-db-04–verbose

$ cluvfy comp peer -refnodedb-maser-1 -ndb-maser-3,master-db-04-orainv oinstall -osdba oinstall-verbose

$ cluvfy stage -pre nodeadd -ndb-maser-3,master-db-04–verbose

注意:服务器上的防火墙一定要关闭,否则不能通过检查。虽然chkconfig iptables off检查都是off,但是没有执行service iptables stop操作。如:当时有如下报错。

正在检查子网"10.0.3.0"是否能够与多点传送组"230.0.1.0"进行多点传送通信...

PRVG-11134 :节点"master-db-04"上的接口"10.0.3.12"无法与节点"master-db-04"上的接口"10.0.3.12"通信

PRVG-11134 :节点"master-db-04"上的接口"10.0.3.12"无法与节点"master-db-03"上的接口"10.0.3.11"通信

PRVG-11134 :节点"master-db-03"上的接口"10.0.3.11"无法与节点"master-db-04"上的接口"10.0.3.12"通信

1.8Â备份OCR

在添加节点前,建议手动备份OCR(GRID每4个小时也会自动备份OCR),目的是如果出

现某些问题,我们可以恢复到添加节点前的状态:

$su - root

$GRID_HOME/bin/ocrdump /tmp/ocrdump_1nodes.bak

添加节点

2.1ÂGRID (GI)层面添加节点

将GRID HOME复制/扩展到节点3,4,在节点1以grid用户执行下面的命令:

注意:addNode.sh脚本首先进行安装前检查,如果检查过程有错误或者警告,需要在运行

addNode.sh前设置环境变量exportIGNORE_PREADDNODE_CHECKS=Y,否则addNode.sh会失败退出

#su–grid

$cd $GRID_HOME/oui/bin

$./addnode.sh“CLUSTER_NEW_NODES={master-db-03,master-db-04}”“CLUSTER_NEW_VIRTUAL_HOSTNAMES={db3-vip,db4-vip}”

以root用户在节点3和4运行orainstRoot.sh来注册Inventory

在2.3章节再执行root.sh

2.2ÂRAC层面添加节点

将RDBMS ORACLE HOME复制/扩展到节点3,在节点1以oracle用户执行下面的命令:

./addNode.sh“CLUSTER_NEW_NODES={ master-db-03,master-db-04}”

在节点3,4以root用户运行$RDBMS_OARCLE_HOME/root.sh

2.3Â运行GRID_HOME/root.sh

在节点3,4以root用户运行$GRID_HOME/root.sh

运行root.sh后,节点rac3的资源已经更新到集群中(OCR),并且已经启动:

$crsctl stat res–t

2.4Â添加实例

运行dbca

原文链接

你可能感兴趣的:(Oracle RAC 添加节点)