rac 11g节点扩容

一 实验环境

其中,rac1,rac2为rac集群中已有两个节点,现计划将rac3添加到集群里。

二 实验步骤

2.1 配置新节点

2.1.1 配置网络

2.1.1.1 配置网络

需要配置两块网卡,其中一块儿网卡用于节点间的内部连接。

我这里的ip配置为:

2.1.1.2 修改主机名

vi /etc/sysconfig/network

HOSTNAME=rac3

该配置需重启服务器生效。

临时配置方式(服务器重启后失效):

hostname rac3

2.1.1.3 修改/etc/hosts

添加其他两个节点与本节点的ip配置:

#rac1

192.168.144.213 rac1

192.168.144.215 rac1_vip

10.10.10.1 rac1_priv

 

#rac2

192.168.144.214 rac2

192.168.144.216 rac2_vip

10.10.10.2 rac2_priv

 

#rac3

192.168.144.218 rac3

192.168.144.219 rac3_vip

10.10.10.3 rac3_priv

 

#scan-ip

192.168.144.217 scan-vip

 

#在另外两个rac节点上也添加下rac3节点的ip配置

2.1.2 配置共享存储

假如没配置共享存储,则后面安装GRID时会报错:PRVG-1013 : 路径 "/u01/app/11.2.0.4/grid" 不存在或者无法在要添加的节点上创建

2.1.2.1 添加共享磁盘

这里的实验环境是virtualbox虚拟机,因此这样在rac3添加共享磁盘:

注意:两个虚拟机共享磁盘rac.vdi的虚拟磁盘的端口应该保持一致,且不要和现有SATA端口重复。这里都是SATA端口1

/*

注意单个共享盘不要超过2T,否则oracle不识别,会导致后续安装报错:ORA-15018: diskgroup cannot be created
ORA-15099: disk 'ORCL:DATA' is larger than maximum size of 2097152 MBs

*/

2.1.2.2 创建用户和用户组

groupadd -g 1000 oinstall   #该组的成员可以访问Oracle Inventory目录

groupadd -g 1001 dba     #该组的成员有SYSDBA权限

groupadd -g 1200 asmadmin

groupadd -g 1201 asmdba

groupadd -g 1202 asmoper

useradd -u 1100 -g oinstall -G asmadmin,asmdba,asmoper,dba  grid #管理Oracle Grid Infrastructure及ASM的用户

useradd -u 1101 -g oinstall -G dba,asmdba oracle

echo 密码 | passwd --stdin grid

echo 密码 | passwd --stdin oracle 

2.1.2.3 配置udev共享存储

for i in b c d e f g ;

do

echo "KERNEL==\"sd*\", BUS==\"scsi\", PROGRAM==\"/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/\$name\", RESULT==\"`/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i`\", NAME=\"asm-disk$i\", OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\""      >> /etc/udev/rules.d/99-oracle-asmdevices.rules

done

 

#启动udev服务

/sbin/start_udev

 

#查看生成的asm磁盘

[root@rac1 ~]# ll /dev | grep asm

brw-rw----. 1 grid asmadmin   8,  16 1月  22 16:12 asm-diskb

2.1.3 确保交换内存空间大于3G

扩容swap示例(这里扩容2G):

dd if=/dev/zero of=/tmp/swap bs=1MB count=2048

mkswap /tmp/swap

swapon /tmp/swap

free -m #检查确认

vi /etc/fstab

添加:

/tmp/swap swap swap defaults 0 0

2.1.4 确保磁盘空间至少30G

2.1.5 创建目录

mkdir -p /u01/app/oracle

mkdir -p /u01/app/grid

mkdir -p /u01/app/11.2.0.4/grid

mkdir -p /u01/app/oraInventory

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

chown -R grid /u01/app/grid

chown -R grid /u01/app/11.2.0.4/grid

chown -R grid /u01/app/oraInventory

chmod -R 775 /u01/app/oracle/

chmod -R 775 /u01/app/grid

2.1.6 安装依赖包

#检查哪些软件包未安装

rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl pdksh sysstat unixODBC unixODBC-devel  smartmontools | grep "not installed"

 

#安装未安装的软件包,示例:

yum install compat-libstdc++-33 elfutils-libelf-devel libaio-devel pdksh unixODBC unixODBC-devel smartmontools -y

 

--若提示No package pdksh available,则下载rpm包进行安装:

wget http://vault.centos.org/5.11/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm

rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm

 

#安装compat-libcap

rpm -ivh compat-libcap1-1.10-1.x86_64.rpm

 

#安装cvuqdisk

rpm -ivh /home/grid/cvuqdisk-1.0.9-1.rpm

2.1.7 关闭防火墙

service iptables stop

chkconfig iptables off

2.1.8 配置节点互信

配置下rac3与rac1,rac2,rac3的互信(grid与oracle用户),具体步骤略,可参考https://blog.csdn.net/yabingshi_tech/article/details/113034756中的‘2.3.4 配置节点互信。

2.1.9 配置环境变量

2.1.9.1 修改oracle用户的环境变量

su - oracle

vi .bash_profile

添加:

export EDITOR=vi

export ORACLE_SID=prod3

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X1186/bin

umask 022

 

source .bash_profile #使修改生效

2.1.9.2 修改grid用户的环境变量

su - grid

vi .bash_profile

添加:

export ORACLE_BASE=/u01/app/grid

export ORACLE_SID=+ASM3

export ORACLE_HOME=/u01/app/11.2.0.4/grid

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

 

source .bash_profile #使修改生效

2.1.10 配时钟同步

这里选择禁用NTP服务,使用oracle rac内部自带的时钟同步CTSS:

service ntpd stop

mv /etc/ntp.conf /etc/ntp.conf_bak

2.1.11 配置内核参数

vi /etc/sysctl.conf

修改以下各参数,最小设置如下(如果参数值比下面的大,则保持不变即可):

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 1036870912

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

--注意,这里kernel.shmmax 仅设置的1G,请根据实际情况调大些(初始化参数MEMORY_TARGET或MEMORY_MAX_TARGET不能大于共享内存,所以该参数值需要大于MEMORY_TARGET)。

运行sysctl -p应用以上参数:

/sbin/sysctl -p

2.1.12 配置资源限制

vi /etc/security/limits.conf

新增如下内容:

oracle soft nofile 65536

oracle hard nofile 65536

oracle soft nproc 16384

oracle hard nproc 16384

oracle stack nproc 16384

oracle stack nproc 16384

grid soft nofile 65536

grid hard nofile 65536

grid soft nproc 16384

grid hard nproc 16384

grid stack nproc 16384

grid stack nproc 16384

2.1.13 开启巨页

确保/sys/kernel/mm/transparent_hugepage/enabled值为alwarys

若不是,则这样设置:

sh -c 'echo "alwarys" >  /sys/kernel/mm/transparent_hugepage/enabled'

2.2 为rac3安装GRID

#确保各rac节点的grid用户都对/u01/app/11.2.0.4/grid有权限

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

 

#在现有rac节点中有grid软件的节点上为rac3安装Grid

/u01/app/11.2.0.4/grid/oui/bin/addNode.sh -silent "CLUSTER_NEW_NODES={rac3}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={rac3_vip}" "CLUSTER_NEW_PRIVATE_NODE_NAMES={rac3_priv}"

/*

假如报错:

PRVG-1013 : 路径 "/u01/app/11.2.0.4/grid" 不存在或者无法在要添加的节点上创建。用于添加节点的共享资源检查失败

则需要检查下共享存储是否有问题,或者共享磁盘的所有者是不是grid用户。

假如都没问题,还报这个错误,则执行export IGNORE_PREADDNODE_CHECKS=Y跳过预检查

*/

在rac3节点用root用户执行脚本:

/u01/app/oraInventory/orainstRoot.sh

/u01/app/11.2.0.4/grid/root.sh

检查日志是否报错。

修改rac3目录权限

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

#检查集群状态

#检查监听

2.3 为rac3安装数据库软件

#在现有rac节点中有database软件的节点上为rac3安装数据库软件

su - oracle

/app/oracle/product/11.2.0/db_1/oui/bin/addNode.sh -silent "CLUSTER_NEW_NODES={rac3}"

在rac3节点上使用root用户执行脚本:

/u01/app/oracle/product/11.2.0/db_1/root.sh

2.4 添加rac3的实例

dbca -silent -addInstance -nodeList rac3 -gdbName prod -instanceName prod3 -sysDBAUserName sys -sysDBAPassword "***"

--本篇文章主要参考了http://blog.itpub.net/29249734/viewspace-1760232/

 

猜你喜欢

转载自blog.csdn.net/yabignshi/article/details/113190841
今日推荐