查看: 1456|回复: 0

[安装] oracle grid 安装

[复制链接]
81990938 该用户已被删除
发表于 2015-11-12 13:53 | 显示全部楼层 |阅读模式
本帖最后由 81990938 于 2015-11-12 13:55 编辑

oracle grid 安装
// 该双斜杠后面的代表说明
1.虚拟机的安装
安装3台虚拟机,redhat 6,所有的机器都要关闭防火墙
其中2台为集群节点,1台为dns服务器
查看操作系统版本
[root@node2 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.4 (Santiago)
查看防火墙状态
[root@node2 ~]# service iptables status
iptables: Firewall is not running.
关闭防火墙服务
#service iptables stop //此处关闭防火墙服务
#chkconfig iptables off //使服务器重启后防火墙服务不自动启动
查看防火墙自动启动设置
[root@node2 ~]# chkconfig --list iptables
iptables        0:off   1:off   2:off   3:off   4:off   5:off   6:off
禁用selinux服务
修改/etc/selinux/config
注释掉 SELINUX=enforcing
添加 SELINUX=disabled
[root@node2 ~]# vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
#SELINUX=enforcing //此处注释
SELINUX=disabled  //此处添加
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted
保存后重启系统
注意:防火墙和selinux会影响后续ssh的配置及dns的配置,必须关闭
2.给3台虚拟机配置网络
给集群节点配置2个网卡,dns服务器仅需1个网卡。注意:集群节点的网卡名称必须完全相同
两台节点配置hosts文件
[root@node2 ~]# more /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
# node1
192.168.100.75  node1.localdomain       node1  //(eth0 网卡设置为该ip)
192.168.100.175 node1-vip.localdomain   node1-vip
172.16.0.191    node1-priv.localdomain  node1-priv //(eth1 网卡设置为该ip)
# node2
192.168.100.76  node2.localdomain       node2
192.168.100.176 node2-vip.localdomain   node2-vip
172.16.0.192    node2-priv.localdomain  node2-priv
# scan ip
192.168.100.77  scan-cluster.localdomain        scan-cluster

192.168.100.77 为集群的scan ip,scan ip最多可以设置3个,如
# scan ip
192.168.100.77  scan-cluster.localdomain        scan-cluster
192.168.100.78  scan-cluster.localdomain        scan-cluster
192.168.100.79  scan-cluster.localdomain        scan-cluster


192.168.100.77 scan-cluster(主机名).localdomain scan-cluster,应该为177(scan 服务器的实际ip 为
192.168.100.177,所有虚拟机2 个网卡的dns 都设置为192.168.100.177)此处用dns解析,scan ip最多可设置为3个

在etc/sysconfig/network中添加NOZEROCONF=yes
在网卡的设置里,设置dns为192.168.100.177

配置dns服务器的ip
[root@scan-cluster ~]# more /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.177 scan-cluster.localdomain        scan-cluster
网卡的ip为192.168.100.177,dns为192.168.100.177

3.本机的ip设置
因为是局域网,而虚拟机的ip不在局域网里,所以按下面的方法添加一个ip以便于与虚拟机进行互相通讯
win7系统,在本地连接的属性里选择ipv4的属性设置,到【高级】里ip地址设置框,单击添加,输入ip地址 192.168.100.66,输入子网掩码255.0.0.0,确定。这样可以实现本机和虚拟机网络互通。配置完成后如果网络不通,重启动虚拟机即可。
4.winscp传入pdksh补丁包,注意:grid安装需要的是ksh包,oracle是pdksh包
5.挂接redhat 6 操作系统光盘并设置成yum源,安装需要的补丁,每个节点都需要做
binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
libXext-1.1 (x86_64)
libXext-1.1 (i686)
libXtst-1.0.99.2 (x86_64)
libXtst-1.0.99.2 (i686)
libX11-1.3 (x86_64)
libX11-1.3 (i686)
libXau-1.0.5 (x86_64)
libXau-1.0.5 (i686)
libxcb-1.5 (x86_64)
libxcb-1.5 (i686)
libXi-1.3 (x86_64)
libXi-1.3 (i686)
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)
nfs-utils-1.2.3-15.0.1
yum源配置方法
挂接光盘
# mount /dev/cdrom /mnt/cdrom 把光盘挂接到/mnt/cdrom 目录下

编辑/etc/yum.repos.d/rhel-source.repo 文件
编辑前
[root@oracle yum.repos.d]# more rhel-source.repo
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/$releasever/en/os/SRPMS/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[rhel-source-beta]
name=Red Hat Enterprise Linux $releasever Beta - $basearch - So
urce
baseurl=ftp://ftp.redhat.com/pub/redhat/linux/beta/$releasever/en/os/SRPMS/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,file:///etc/pki/rpm-gpg/RPM-GPGKEY-
redhat-release
编辑后
[root@oracle yum.repos.d]# more rhel-source.repo
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=file:///mnt/cdrom/ #此处为光盘路径
enabled=1  #此处修改
gpgcheck=0 #此处修改
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[rhel-source-beta]
name=Red Hat Enterprise Linux $releasever Beta - $basearch - Source
baseurl=ftp://ftp.redhat.com/pub/redhat/linux/beta/$releasever/en/os/SRPMS/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,file:///etc/pki/rpm-gpg/RPM-GPGKEY-
redhat-release
配置完成后
yum clean all 清除缓存中的旧的rpm 头文件和包文件
安装包
yum install perl 安装perl 包
yum install perl* 安装perl 开头的包
yum list perl* 列出perl 开头的包

6.传输grid安装包到一个节点,用unzip命令解压至一个目录里
unzip ****.zip -d \grid,解压安装包至目录/grid目录里
unzip -t ****.zip 测试安装包是否完整
unzip linuxamd64_12102_grid_1of2.zip -d /soft
7.配置组和用户
2个节点都要执行
groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
groupadd -g 54328 asmadmin
groupadd -g 54329 asmoper
groupadd -g 54325 asmdba
# useradd -u 54321 -g oinstall -G dba -d /oracle oracle
# useradd -u 54322 -g oinstall -G dba -d /grid grid
# mkdir -p /grid_home
# chown -R grid:oinstall /grid_home
# chmod -R 775 /grid_home
# mkdir -p /oracle_home
# chown -R oracle:oinstall /oracle_home
# chmod -R 775 /oracle_home
# passwd grid
输入密码,注意所有节点的密码必须相同
# passwd oracle
输入密码,注意所有节点的密码必须相同
建立/oraInventory,并给予grid权限
# mkdir -p /gridsoft
# chown -R grid:oinstall /gridsoft
# chmod -R 775 /gridsoft
grid_home作为grid软件安装时的oracle_home,gridsoft作为grid软件安装时的software location,也就是说oracle base 和 software location(也就是oracle home)应该分开
注意:设置/tmp的所有者为安装用户,即grid
修改.bash_profile文件
[grid@node2 ~]$ more .bash_profile
# .bash_profile
umask 022
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs
# for grid install begin
ORACLE_BASE=/grid_home
ORACLE_HOME=/gridsoft/12.1.0.2/grid
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME PATH
# for grid install end
#PATH=$PATH:$HOME/bin

#export PATH

8.配置ssh对等,每个节点都做
确保已关闭防火墙和selinux
每个节点即每台虚拟机都执行
$ /usr/bin/ssh-keygen -t rsa
$ /usr/bin/ssh-keygen -t dsa
提示输入时,直接回车
在其中一个节点里执行
[grid@node1 .ssh]$ ssh node1 cat /grid/.ssh/id_rsa.pub >> authorized_keys //grid为grid用户的主目录
grid@node1’s password:
[grid@node1 .ssh]$ ssh node1 cat /grid/.ssh/id_dsa.pub >> authorized_keys
[grid@node1 .ssh$ ssh node2 cat /grid/.ssh/id_rsa.pub >> authorized_keys
grid@node2’s password:
[grid@node1 .ssh$ ssh node2 cat /grid/.ssh/id_dsa.pub >> authorized_keys
grid@node2’s password:
[grid@node1 .ssh]scp authorized_keys node2:/grid/.ssh/
每个节点即每台虚拟机都执行
$ ssh node1 date
$ ssh node2 date

ssh对等时总提示输入密码的问题,可以查看ssh的日志:
ssh的日志:
/var/log/secure
ssh连接过程信息:
ssh -v 目标地址
两台主机之间已经建立了ssh信任,却仍然提示输入密码的可能原因:(每个节点都可能是这个原因)
1) 目录权限
chmod 700 ~/.ssh
2)文件权限
-rw-------. authorized_keys
-rw-------. id_rsa
-rw-r--r--. id_rsa.pub
-rw-r--r--. known_hosts
3)selinux
4) /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
或者 注释掉。
9.安装cvuqdisk包,每个节点都做
# CVUQDISK_GRP=oinstall; export CVUQDISK_GRP //如果此处未设置,则安装时默认CVUQDISK_GRP为oinstall
查看环境变量
# echo $CVUQDISK_GRP
# rpm -iv cvuqdisk-1.0.9-1.rpm
10.检查/dev/shm为tmpfs类型 #此处未按官方文档修改,等待验证
$ more /etc/fstab |grep "tmpfs"
11.检查nscd是否已加载,每个节点都做
# chkconfig --list nscd
默认没有该服务,需要用yum从操作系统光盘安装
# chkconfig --level 35 nscd on
# service nscd start
12.用虚拟机创建共享存储
对于集群的安装,我认为至少需要4块共享磁盘
vitualbox软件里选中一台虚拟机,进入设置,到存储选项下来创建磁盘。点击”存储"链接,选择"SATA 控制器",然后单击"添加硬盘"图标,选择vdi 格式,固定大小,保存在两台虚拟机的父目录里,创建完成后先在该台虚拟机的设置里删除该盘片,然后使用虚拟介质管理器 (主菜单 |文件 |虚拟介质管理器) 更改其属性为可共享。这样共享存储创建完成。
创建4个共享磁盘,大小一致
13.停止ntpd服务,每个节点都做
# /sbin/service ntpd stop
# chkconfig ntpd off
# mv /etc/ntp.conf /etc/ntp.conf.bak
# mv /var/run/ntpd.pid /var/run/ntpd.pid.bak
14.修改资源限制,每个节点都做
用root用户修改/etc/security/limits.conf,oracle代表oracle用户,grid代表grid用户
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 打开的文件
15.克隆虚拟机
VirtualBox 管理器窗口中启动克隆向导: 主菜单 |控制 |复制。为新机的名称键入"grid-3"。
请确保未选中"重新初始化所有网卡的 MAC 地址"
更改主机名。通过编辑文件来更改主机名"/etc/sysconfig/network" , 主机名参数:
HOSTNAME=node2.localdomain
更改ip 地址和mac 地址,ip 地址和mac 地址在进入系统后修改(修改两个网卡的mac 地址
的后两位即可),然后关闭虚拟机,在设置里修改两个网卡的mac 地址使其与虚拟机操作系
统里的mac 地址相同
16.挂接共享磁盘
关闭虚拟机,添加共享磁盘即可
17.配置asm磁盘
在两台虚拟机里用fdisk -l 查看磁盘信息
格式化共享磁盘,仅需在一个节点执行如下命令即可
[root@node1 ~]# fdisk /dev/sdb
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-500, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-500, default 500):
Using default value 500
Command (m for help): w
说明:fdisk /dev/sdb 表示要对/dev/sdb 磁盘进行格式化,其中,输入的命令分别表示:
n 表示新建1 个分区;
p 表示分区类型选择为primary partition 主分区;
1 表示分区编号从1 开始;
起始、终止柱面选择默认值,即1 和500;
w 表示将新建的分区信息写入硬盘分区表。

在每个节点配置ASMLib
# /usr/sbin/oracleasm configure -I
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

Device order to scan for ASM disks []:
Devices to exclude from scanning []:

使用ASMLib 创建oracle asm,仅需在一个节点执行
# /usr/sbin/oracleasm createdisk disk_name device_partition_name
# /usr/sbin/oracleasm createdisk DISK1 /dev/sdb1 创建
# /usr/sbin/oracleasm listdisks 列出
DISK1
DISK2
DISK3
DISK4
在所有节点用scandisks 命令查看asm 磁盘,无需在每个节点都创建asm 磁盘
# /usr/sbin/oracleasm scandisks
Scanning system for ASM disks [ OK ]
# /usr/sbin/oracleasm listdisks
DISK1
DISK2
DISK3
DISK4
# /usr/sbin/oracleasm deletedisk disk_name 删除 //此命令为删除命令,在创建asm磁盘错误的情况才使用
18.配置DNS
在dns服务器上操作
首先利用系统光盘安装所有bind 包
yum list bind*
yum install bind*
修改/etc/named.conf,修改前先备份,注意保留空格
listen-on port 53 { 127.0.0.1; };修改为listen-on port 53 { any; };
allow-query { localhost; };修改为allow-query { any; };
zone "." IN {
type hint;
// file "named.ca";
file "/dev/null";
};
zone "localdomain(服务器主机域名)" in{
type master;
file "localdomain.zone";//localdomain.zone 为下面要创建的文件名,即正向解析文件名
allow-update { none; };//注意空格
};
zone "100.168.192(节点公有ip 和虚拟ip 一个网段).in-addr.arpa" {
type master;
file "100.168.192.ptr";100.168.192.ptr 为下面要创建的文件名,即反向解析文件名
allow-update { none; };
};
文件全部内容如下:
[root@scan-cluster ~]# more /etc/named.conf
//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { any; };
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
        type hint;
        file "/dev/null";
};
zone "localdomain" in {
type master;
file "localdomain.zone";
allow-update { none; };
};
zone "100.168.192.in-addr.arpa" {
type master;
file "100.168.192.ptr";
allow-update { none; };
};
#include "/etc/named.rfc1912.zones";
#include "/etc/named.root.key";

配置域的正向解析文件
/var/named 目录下
[root@localhost named]# cp -p named.localhost localdomain.zone
编辑/var/named/localdomain.zone 文件
[root@scan-cluster named]# more localdomain.zone
$TTL 1D
@       IN SOA  localhost root(
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN NS   localhost
localhost       IN      A       127.0.0.1
scan-cluster    IN      A       192.168.100.77 //192.168.100.77 为scan ip地址,这里最多可以配置3个,各节点的/etc/hosts有描述
node1   IN      A       192.168.100.75  //节点ip解析
node2   IN      A       192.168.100.76  //节点ip解析

配置反向解析文件
[root@localhost named]# cp -p named.loopback 100.168.192.ptr
编辑/var/named/100.168.192.ptr 文件
[root@scan-cluster named]# more 100.168.192.ptr
$TTL 1D
@       IN SOA  localhost. root.localhost. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        IN      NS      localhost.
1       IN      PTR     localhost.
77      IN      PTR     scan-cluster.localdomain. //77为节点/etc/hosts里设置的scan ip,最多可以设置3个
75      IN      PTR     node1.localdomain. //节点ip反向解析
76      IN      PTR     node2.localdomain. //节点ip反向解析

在dns 服务器上启动dns 服务
/etc/init.d/named status
/etc/init.d/named start
然后,分别在RAC 节点node1、node2 的/etc/resolv.conf 配置文件中添加下述配置信息:
[root@node1 ~]# more /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 192.168.100.177 //这个ip为dns服务器的真正ip地址
验证
在每个节点用如下命令验证
nslookup 192.168.100.77
nslookup scan-cluster
nslookup scan-cluster.localdomain

19.修改内核参数
修改etc/sysctl.conf
内核参数
semmsl 250   /proc/sys/kernel/sem
semmns 32000 /proc/sys/kernel/sem
semopm 100   /proc/sys/kernel/sem
semmni 128   /proc/sys/kernel/sem
shmall 物理内存的40%      /proc/sys/kernel/shmall
shmmax 物理内存的一半     /proc/sys/kernel/shmmax
shmmni 4096  /proc/sys/kernel/shmmni
file-max 6815744  /proc/sys/fs/file-max
aio-max-nr 1048576 /proc/sys/fs/aio-max-nr
ip_local_port_range 最小9000 最大65500 /proc/sys/net/ipv4/ip_local_port_range
rmem_default 262144 /proc/sys/net/core/rmem_default
rmem_max 4194304 /proc/sys/net/core/rmem_max
wmem_default 262144 /proc/sys/net/core/wmem_default
wmem_max 1048576 /proc/sys/net/core/wmem_max
panic_on_oops 1 /proc/sys/kernel/panic_on_oops
20.开始安装grid
首先运行命令检查节点设置是否正确
./runcluvfy.sh stage -pre -n node1,node2,该命令在grid的安装包里有
进入安装包目录运行runInstaller
选择install and configure oracle grid infrastructure for a cluster
configure a standard cluster
typical installation
添加节点
选择Oracle Automatic Storage Management
设置sysasm密码,需要记住
选择所有磁盘

完成后检查clusterware 的配置
以oracle 用户登录一个节点,检查状态,输入如下为正常
/u01/app/11.2.0/grid/bin/crsctl check cluster -all
******************************************************************
racnode1:
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
******************************************************************
racnode2:
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
**************************************************************

21.虚拟机安装增强功能不成功的错误及解决办法
/var/log/vboxadd-install.log/tmp/vbox.0/Makefile.include.header:97: *** Error: unable to find the sources of
your current Linux kernel. Specify KERN_DIR=<directory> and run Make again. stop.Creating user for the Guest Additions.Creating udev rule for the Guest Additions kernel module.
缺少gcc.i686   kernel.i686   kernel-devel.i686  3个包,安装完这3个包以后再安装增强功能即可解决问题。

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表