oracle ha nfs

一、实验环境部署准备:

1、硬件环境:

      普通PC服务器3台

       交换机1或2台

2、软件环境:

      RedHat Enterprise Linux Server release 5.4

      libnet-1.1.2.1.tar

       heartbeat-2.0.8.tar.gz

      oracle11g

3、部署说明:

     用2台做oracle服务器,一台做nfs服务器存放oracle数据库实例,用heartbeat实现热备模式的切换。下一步准备用Oracle RAC实现nfs做存储的集群模式。方案部署结构如下图


二、安装步骤

1、配置NFS存储服务器

      Linux安装成功后,RHEL5默认已经安装了nfs和portmap这两个软件包

       rpm –q nfs-utils portmap   # 查看安装包命令

       service portmap restart    # 启动服务

       service nfs restart             #  启动服务          

       在10.1.1.100 上编辑 vi /etc/exports  加入下列内容

        /oranfs01  10.1.1.0/24(rw,sync)

        /oranfs02  10.1.1.0/24(rw,sync)

        /oranfs03  10.1.1.0/24(rw,sync)           

        wq!                         # 保存退出

        exportfs –rv             #可以让新设置的“exports”文件内容生效  

        man showmount      #以上参数和命令可参考其他文档

2、oracle 安装

     在192.168.1.10 和192.169.1.11分别安装oracle系统,注意不要生成数据库实例。

    分别在2台上编辑/etc/fstab文件最后一行插入如下内容

    vi /etc/fstab  

    10.1.1.100:/oranfs01   /u01  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0  0 0
    10.1.1.100:/oranfs02   /u02  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0  0 0     10.1.1.100:/oranfs03   /u03  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0  0 0

     wq    #存盘退出

     mount -a  # 挂载3个nfs分区成为本地的分区

     在其中任意一台上用oracle的dbca在3个分区上生成数据库

    数据库安装参见 在linux下安装oracle

3、heartbeat 安装 

    在192.168.1.10 和192.169.1.11分别编辑/etc/hosts 最后一行插入如下内容

      oraha1 192.168.1.10
    oraha2 192.168.1.11

    
创建用户和用户组
     heartbeat需要haclient用户组和hacluster用户,两个节点做同样的操作,并保证haclient和hacluster的ID一样。
     groupadd -g 66 haclient
     useradd -g haclient  -u 66 hacluster

    编译安装   

        # tar-zxvflibnet-1.1.2.1.tar
      #cd libnet-1.1.2.1
      #./configure
       #make
     # mak install

  #  tar zxvf heartbeat-2.1.3.tar.gz
    # cd heartbeat-2.1.3
   # ./ConfigureMeconfigure --disable-swig –disable-snmp-subagent 
  #  make
    #make install
 
#cp doc/ha.cf  doc/haresources  doc/authkeys  /etc/ha.d/

   #cp ldirectord/ldirectord.cf  /etc/ha.d/

   在另一个主机上也是同样这么安装。

四、配置HA

的主要配置文件有ha.cf、haresources、authkeys,在Heartbeat安装后,默认并没有这三个文件,可以从官方网站下载得到,也可以直接从解压的源码目录中找到,在上面的安装过程中,我们已经将这三个文件放到了/etc/ha.d目录下,下面分别详细介绍。


1
.主配置文件(/etc/ha.d/ha.cf)
下面对ha.cf文件的每个选项进行详细介绍,其中“#”号后面的内容是对选项的注释说明。
#debugfile /var/log/ha-debug
logfile /var/log/ha-log    #指名heartbeat的日志存放位置。
#crm yes      #是否开启ClusterResource Manager(集群资源管理)功能。
bcast eth1    #指明心跳使用以太网广播方式,并且是在eth1接口上进行广播。
keepalive 2    #指定心跳间隔时间为2秒(即每两秒钟在eth1上发送一次广播)。
deadtime 30 #指定备用节点在30秒内没有收到主节点的心跳信号后,则立即接管主节点的服务资源。
warntime 10 #指定心跳延迟的时间为十秒。当10秒钟内备份节点不能接收到主节点的心跳信号时,就会往日志中写入一个警告日志,但此时不会切换服务。
initdead 120 #在某些系统上,系统启动或重启之后需要经过一段时间网络才能正常工作,该选项用于解决这种情况产生的时间间隔。取值至少为deadtime的两倍。 
udpport 694    #
设置广播通信使用的端口,694为默认使用的端口号。
#baud 19200    #设置串行通信的波特率。
#serial /dev/ttyS0   #选择串行通信设备,用于双机使用串口线连接的情况。如果双机使用以太网连接,则应该关闭该选项。
ucast eth1 10.1.1.11 #采用网卡eth0的udp单播来组织心跳,后面跟的IP地址应为双机对方的IP地址。
#mcast eth0 225.0.0.1 694 1 0 #采用网卡eth0的Udp多播来组织心跳,一般在备用节点不止一台时使用。Bcast、ucast和mcast分别代表广播、单播和多播,是组织心跳的三种方式,任选其一即可。
auto_failback on #用来定义当主节点恢复后,是否将服务自动切回,heartbeat的两台主机分别为主节点和备份节点。主节点在正常情况下占用资源并运行所有的服务,遇到故障时把资源交给备份节点并由备份节点运行服务。在该选项设为on的情况下,一旦主节点恢复运行,则自动获取资源并取代备份节点,如果该选项设置为off,那么当主节点恢复后,将变为备份节点,而原来的备份节点成为主节点。
#stonith baytech /etc/ha.d/conf/stonith.baytech   # stonith的主要作用是使出现问题的节点从集群环境中脱离,进而释放集群资源,避免两个节点争用一个资源的情形发生。保证共享数据的安全性和完整性。
#watchdog /dev/watchdog #该选项是可选配置,是通过Heartbeat来监控系统的运行状态。使用该特性,需要在内核中载入"softdog"内核模块,用来生成实际的设备文件,如果系统中没有这个内核模块,就需要指定此模块,重新编译内核。编译完成输入"insmod softdog"加载该模块。然后输入"grepmisc /proc/devices"(应为10),输入"cat /proc/misc |grep watchdog"(应为130)。最后,生成设备文件:"mknod /dev/watchdog c 10 130" 。即可使用此功能。
node oraha1    #主节点主机名,可以通过命令“uanme –n”查看。
node oraha2   #备用节点主机名。
ping 10.1.1.254 #选择ping的节点,ping 节点选择的越好,HA集群就越强壮,可以选择固定的路由器作为ping节点,但是最好不要选择集群中的成员作为ping节点,ping节点仅仅用来测试网络连接。

respawn hacluster/usr/lib/heartbeat/ipfail #该选项是可选配置,列出与heartbeat一起启动和关闭的进程,该进程一般是和heartbeat集成的插件,这些进程遇到故障可以自动重新启动。最常用的进程是ipfail,此进程用于检测和处理网络故障,需要配合ping语句指定的ping node来检测网络的连通性。其中hacluster表示启动ipfail进程的身份。

2.资源文件(/etc/ha.d/haresources)
Haresources
文件用于指定双机系统的主节点、集群IP、子网掩码、广播地址以及启动的服务等集群资源,文件每一行可以包含一个或多个资源脚本名,资源之间使用空格隔开,参数之间使用两个冒号隔开,在两个HA节点上该文件必须完全一致,此文件的一般格式为:
node-name network  <resource-group>
node-name表示主节点的主机名,必须和ha.cf文件中指定的节点名一致,network用于设定集群的IP地址、子网掩码、网络设备标识等,需要注意的是,这里指定的IP地址就是集群对外服务的IP地址,resource-group用来指定需要heartbeat托管的服务,也就是这些服务可以由heartbeat来启动和关闭,如果要托管这些服务,必须将服务写成可以通过start/stop来启动和关闭的脚步,然后放到/etc/init.d/或者/etc/ha.d/resource.d/目录下,heartbeat会根据脚本的名称自动去/etc/init.d或者/etc/ha.d/resource.d/目录下找到相应脚步进行启动或关闭操作。
下面对配置方法进行具体说明:
oraha1  IPaddr::192.168.1.100/24/eth0   httpd tomcat oracle
其中,node1是HA集群的主节点,IPaddr为heartbeat自带的一个执行脚步,heartbeat首先将执行/etc/ha.d/resource.d/IPaddr192.168.1.100/24 start的操作,也就是虚拟出一个子网掩码为255.255.255.0,IP为192.168.1.100的地址,此IP为heartbeat对外提供服务的网络地址,同时指定此IP使用的网络接口为eth0,接着,heartbeat将执行共享磁盘分区的挂载操作,“Filesystem::/dev/sdb5::/webdata::ext3”相当于在命令行下执行mount操作,即“mount –text3 /dev/sdb5 /webdata”,最后依次启动httpd和tomcat服务。
注意:主节点和备份节点中资源文件haresources要完全一样。

3.认证文件(/etc/ha.d/authkeys)
authkeys
文件用于设定heartbeat的认证方式,共有三种可用的认证方式:crc、md5和sha1,三种认证方式的安全性依次提高,但是占用的系统资源也依次增加。如果heartbeat集群运行在安全的网络上,可以使用crc方式,如果HA每个节点的硬件配置很高,建议使用sha1,这种认证方式安全级别最高,如果是处于网络安全和系统资源之间,可以使用md5认证方式。这里我们使用crc认证方式,设置如下:
auth 1
1 crc
#2 sha1 sha1_any_password
#3 md5 md5_any_password
需要说明的一点是:无论auth后面指定的是什么数字,在下一行必须作为关键字再次出现,例如指定了“auth 6”,下面一定要有一行“6 认证类型”。
最后确保这个文件的权限是600(即-rw-------)。

4. 配置备份节点的heartbeat
 在备份节点上也需要安装heartbeat,安装方式与在主节点安装过程一样,这里不再重述,依次安装libnet和heartbeat源码包,安装完毕,在备份节点上使用scp命令把主节点配置文件传输到备份节点。 
    [root@oraha2 ~]#scp
–r orahd1:/etc/ha.d/* /etc/ha.d/
其中,oraha1是主节点的主机名。

5. 启动和测试Heartbeat
service heartbeat start 

service heartbeat stop 

/usr/local/share/heartbeat/hb_standby    # 手动切换 或拔网线关机等手段来观察切换情况

tail -f /var/log/message




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值