通过openfiler软件模拟共享存储,然后在本地安装Oracle12C RAC方便自己学习!真实还原在生产环境上安装的过程.
本次实验使用VM+Openfiler+Oracle linux6.8 + Oracle 12C R2 + ASM
除了最后的验证只需要在1台服务器上执行,其他的操作都需要在2台服务器上执行一遍!ASM磁盘只需要在一台服务器上创建,另一台服务器只要执行扫描操作!
软件包:
openfileresa-2.99.1-x86_64-disc1.iso
OracleLinux-R6-U8-Server-x86_64-dvd.iso
linuxx64_12201_grid_home.zip
linuxx64_12201_database.zip
openfiler:172.30.30.94
rac1:172.30.30.95(需要配置2块网卡)
rac2:172.30.30.96(需要配置2块网卡)
单个数据库服务器为2块网卡,内存最好是大于8G(小于8G也可以用,但是可能会影响性能),swap 16G,其他的根据需求自行决定!
openfiler会准备3块30G磁盘,1块100G磁盘,1块80G磁盘(具体看个人实际情况来定)
openfiler的安装略过(默认已经安装好,磁盘映射已经做好),Oracle Linux的安装略过!在安装Oracle Linux的时候可以选择最小化或者其他,区别只是包的多少问题,后期可以通过yum按需安装!
服务器关于YUM配置简单说明:
在VM中将iso配置好并且状态为已经连接,然后在linux上挂载并配置yum源,如下:
mount /dev/cdrom /mnt/
[root@rac1 yum.repos.d]# cat dvd.repo
[dvd]
name=CentOS-$releasever – Base
baseurl=file:///mnt
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
如果是其它版本linux(CentOS,RedHat),在yum.repos.d目录下可能存在其他repo文件,可以选择将这些文件重命名(mv)
1.编辑selinux
vi /etc/selinux/config
SELINUX=disabled
2.配置防火墙
iptables -F
chkconfig iptables off
3.配置postfix
chkconfig postfix off
4.配置NTP
使用Oracle 自带的时间同步,需要将ntp的配置文件重命名,即禁用NTP服务
mv /etc/ntp.conf /etc/ntp.conf.bak
chkconfig ntpd off
为了方便,配置完成后重启服务器!!!
通过iscsi服务,扫描从openfiler映射过来的磁盘并挂载到本地。
1.需要安装的额外包:
yum install iscsi-initiator-utils
2.发现磁盘:
iscsiadm -m discovery -t sendtargets -p 172.30.30.94:3260
3.挂载磁盘:
iscsiadm -m node -T iqn.2006-01.com.openfiler:tsn.ocr01 -p 172.30.30.94:3260 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:tsn.ocr02 -p 172.30.30.94:3260 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:tsn.ocr03 -p 172.30.30.94:3260 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:tsn.data01 -p 172.30.30.94:3260 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:tsn.fra01 -p 172.30.30.94:3260 -l
查询当前会话的iscsi 连接:
iscsiadm -m node session
4.使用多路径软件(multipath)将磁盘路径做聚合
一般在生产环境中,通过存储映射过来的磁盘都会有多条路径(一般光纤线等会做冗余处理)。
多路径软件安装:
yum install device-mapper-multipath
启动multipath守护进程:
mpathconf –enable –with_multipathd y
chkconfig multipathd on
修改配置文件:
vi /etc/multipath.conf
找到最后的blacklist 中添加本地的设备(排除用来安装操作系统的盘)
blacklist{
devnode “^sda”
}
查看链路是否整合了
multipath -ll
查看操作系统上是否存在这些设备:
ls -l /dev/mapper
如果配置都正确,但是没有出现文件,请直接重启操作系统!
5.磁盘分区
使用fdisk将新的磁盘进行分区
如果自行安装系统rpm包,需要检查是否有下列rpm包:
rpm -q binutils elfutils-libelf elfutils-libelf-devel compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel glibc-common libgcc libstdc++ libstdc++-devel libaio libaio-devel make sysstat unixODBC unixODBC-devel compat-db control-center glibc-headers libcap libcap-devel compat-libcap1
如果没有使用yum安装即可!!!
CVU软件包安装:(需要grid软件包解压后,安装)
该rpm包在在grid安装介质中
./cv/rpm/cvuqdisk-1.0.10-1.rpm
rpm -ivh cvuqdisk-1.0.10-1.rpm
配置/etc/hosts
# Public Network – (eth0)
172.30.30.95 rac1.zhouheiya.cn rac1
172.30.30.96 rac2.zhouheiya.cn rac2
# Private Interconnect – (eth1)
192.168.109.95 rac1-priv.zhouheiya.cn rac1-priv
192.168.109.96 rac2-priv.zhouheiya.cn rac2-priv
# Public Virtual IP (VIP) addresses
172.30.30.105 rac1-vip.zhouheiya.cn rac1-vip
172.30.30.106 rac2-vip.zhouheiya.cn rac2-vip
# Single Client Access Name (SCAN)
172.30.30.200 rac-zhy-scan
groupadd –gid 503 oinstall
groupadd –gid 504 dba
groupadd –gid 505 asmadmin
groupadd –gid 506 asmdba
groupadd –gid 507 asmoper
groupadd –gid 508 oper
useradd -u 501 -g oinstall -G dba,asmadmin,asmdba,asmoper grid
useradd -u 502 -g oinstall -G dba,oper,asmdba oracle
mkdir -p /u01/app/grid
mkdir -p /u01/app/12.2.0/grid
mkdir -p /u01/app/oracle
chown -R grid:oinstall /u01
chown oracle:oinstall /u01/app/oracle
chmod -R 775 /u01
kernel.shmmni =4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
net.ipv4.ip_local_port_range= 9000 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr= 1048576
执行sysctl -p使得参数生效
sysctl -p
通常情况,这2个参数在文件是存在的,使用默认即可,如果比默认大,可自行修改
kernel.shmmax kernel.shmall
2.vi /etc/security/limits.conf 加入下列内容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard memlock 3145728
oracle soft memlock 3145728
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid hard stack 32768
grid soft stack 10240
3.vi /etc/pam.d/login 加入下列内容
session required pam_limits.so
4. vi /etc/profile
#new add
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
5.vi /etc/sysconfig/network
NOZEROCONF=yes
Grid用户:
vi .bash_profile
#new add
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/12.2.0/grid
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export ORACLE_SID=+ASM1
umask 022
stty erase ^h
Oracle 用户:
#new add
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/12.2.0/db_1
export ORACLE_SID=racdb1
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
umask 022
stty erase ^h
配置ssh无密码连接:可以手工创建也可以在OUI界面配置用户等效性!!
手工配置:
使用命令行配置:(oracle图形界面使用的rsa形式)
ssh-keygen -t rsa
ssh-copy-id -i id_rsa.pub rac2
ssh rac2 date
在grid和oracle用户下都需要配置!!
12C R2相比前一版本,OCR的磁盘占用需求有了明显增长,OCR+VOLTING+MGMT存储通常放到一个磁盘组,且选择Normal的冗余方式
OCR : Normal
ocr01 30G
ocr02 30G
ocr03 30G
DATA: External 100G
FRA : External 80G
使用到的rpm包(操作系统版本不同,对应的安装不同)
kernel-2.6.32-754.30.2.el6.x86_64.rpm —先装!!
oracleasm-support-2.1.8-1.el6.x86_64.rpm
oracleasmlib-2.0.4-1.el6.x86_64.rpm
kmod-oracleasm-2.0.8-16.1.el6_10.x86_64.rpm
安装有先后,如果顺序不同,会缺少依赖包,具体可以看报错信息,然后调整顺序!
2.ASM磁盘配置(2台服务器都要执行):
[root@rac1 ~]# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver. The following questions will determine whether the driver is
loaded on boot and what permissions it will have. The current values
will be shown in brackets (‘[]’). Hitting <ENTER> without typing an
answer will keep that current value. Ctrl-C will abort.
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 ]
[root@rac1 ~]# /usr/sbin/oracleasm init
Creating /dev/oracleasm mount point: /dev/oracleasm
Loading module “oracleasm”: oracleasm
Mounting ASMlib driver filesystem: /dev/oracleasm
3.ASM磁盘创建(1台服务器上执行):
/usr/sbin/oracleasm createdisk ocr01 /dev/mapper/mpathap1
/usr/sbin/oracleasm createdisk ocr02 /dev/mapper/mpathbp1
/usr/sbin/oracleasm createdisk ocr03 /dev/mapper/mpathcp1
/usr/sbin/oracleasm createdisk ZHY_DATA /dev/mapper/mpathdp1
/usr/sbin/oracleasm createdisk ZHY_FRA /dev/mapper/mpathep1
4.检查ASM磁盘
/usr/sbin/oracleasm scandisks —扫描磁盘
/usr/sbin/oracleasm listdisks —列出磁盘
至此配置完成,以上步骤需要在2台服务器上都操作一遍,使得2台配置一模一样!!
在正式图形化安装之前,可以做个检查,通过生成的日志,检查是否满足所有需求
网络检查:
runcluvfy.sh stage -pre crsinst -n rac1,rac2 -verbose -r 12.2
验证集群是否准备好安装CRS:
./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -r 12.2
./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup -verbose >>test.log
检验出来的结果如果有关于swap 或者 /etc/resolv.conf 的failed ,可以忽略!!!!
一般都会缺少下面相关包:
yum install xterm xorg-x11*
The X11 forwarding request was rejected!
rpm -qa|grep gdm
如果没有安装,则执行yum install -y gdm安装!
(也可能环境不一样,缺少的rpm包不一样,仅供参考)