RHEL5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析-古蔺大橙子建站
RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
RHEL5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

这篇文章将为大家详细讲解有关RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、微信小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了通渭免费建站欢迎大家使用!

1、操作系统版本:Red Hat Enterprise Linux Server release 5.5 (Tikanga)

2、Drbd、Heartbeat 文件版本及文件名列表(本人已经将以下文件打包为Heartbeat3.0.3.tar.bz2 ):

Cluster-Resource-Agents-agents-1.0.3.tar.bz2

drbd-8.3.8.1.tar.gz

Heartbeat-3-0-STABLE-3.0.3.tar.bz2

Load drbd modules

Pacemaker-1-0-Pacemaker-1.0.9.tar.bz2 Pacemaker-Python-GUI-pacemaker-mgmt-2.0.0.tar.bz2

Reusable-Cluster-Components-glue-1.0.6.tar.bz2

3、网络配置(双网卡采用BOND模式)

RHEL5.5系统安装完成之后需要修改网络配置,首先将各节点中eth0、eth2分别设置为静态IP。修改节点hosts文件,内容如图

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

同时修改各节点/etc/sysconfig/network文件,将HOSTNAME一行的内容改为节点对应的主机名,如图(以node2为例)

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

4、节点名及存储分配

a、主机名及IP

====Node2====
Hostname: node2.localdomain
Ip:10.109.1.38  
====Node3====
Hostname: node3.localdomain
Ip: 10.109.1.39

b、DRBD镜像分区:

资源名称:oradata设备:/dev/drbd0

挂载点:/oradata (存放Oracle实例)

c、浮动主机名及IP

====Node1====
Hostname: node1.localdomain
Ip: 10.109.1.37

5、安装Heartbeat

进入Linux根目录

cd /

建立HA目录

mkdir Ha

上传 Heartbeat3.0.3.tar.bz2文件到HA目录

进入HA目录

cd /HA/

5.1 解压Heartbeat压缩包,得到后续安装需要的各个安装文件

tar -jxvf Heartbeat3.0.3.tar.bz2

编译的顺序是:先Cluster Glue,再Resource Agents,然后才是Heartbeat。

解压Reusable-Cluster-Components

tar -jxvf Reusable-Cluster-Components-glue-1.0.6.tar.bz2

进入Reusable-Cluster-Components-glue-1.0.6目录

cd Reusable-Cluster-Components-glue-1.0.6

打开lib/stonith/main.c文件

vi lib/stonith/main.c

编辑:

  1. 找到其64行,将其注释掉。

  2. 找到其76到81行全部注释掉。

  3. 找到其390行,将其注释

使用以下两个进行配置

./autogen.sh
./configure LIBS='/lib/libuuid.so.1'

使用如下命令创建Heartbeat管理用户:

groupadd haclient useradd -g haclient hacluster

使用如下命令编译并安装:

make
make install

5.2 解压Cluster-Resource-Agents

tar -jxvf Cluster-Resource-Agents-agents-1.0.3.tar.bz2

进入Cluster-Resource-Agents-agents-1.0.3目录

cd Cluster-Resource-Agents-agents-1.0.3

使用如下命令配置、编译并安装

./autogen.sh ./configure
make
make install

5.3 解压Heartbeat-3-0-STABLE

tar -jxvf Heartbeat-3-0-STABLE-3.0.3.tar.bz2

进入Heartbeat-3-0-STABLE-3.0.3目录

cd Heartbeat-3-0-STABLE-3.0.3

首先执行如下命令进行配置

./autogen.sh ./bootstrap ./ConfigureMe configure
make

此时系统会报一个hbaping.lo错误,我们需要使用如下一组命令对hbaping.loT文件进行改名操作:

cd lib
ls
cd plugins/
ls
cd HBcomm
mv hbaping.loT hbaping.lo

之后再次执行以下两条命令进行安装操作,应该就不会报错了。

make
make install

使用cd /usr/etc/命令进入/usr/etc/目录中

使用cp -R ha.d/ /etc/命令将/usr/etc/ha.d全部复制到/etc/目录中

使用rm -rfv ha.d删除/usr/etc/中整个ha.d目录

使用cd /etc/命令进入/etc/目录中

使用ln -s /etc/ha.d /usr/etc/ha.d命令创建/etc/ha.d到/usr/etc/ha.d的软连接文件。

5.4解压Pacemaker-1-0

tar -jxvf Pacemaker-1-0-Pacemaker-1.0.9.tar.bz2

进入Pacemaker-1-0-Pacemaker-1.0.9目录

cd Pacemaker-1-0-Pacemaker-1.0.9

执行如下命令配置、编译并安装

./autogen.sh ./ConfigureMe configure
make
make install

5.5 解压Pacemaker-Python-GUI

tar -jxvf Pacemaker-Python-GUI-pacemaker-mgmt-2.0.0.tar.bz2

进入Pacemaker-Python-GUI-pacemaker-mgmt-2.0.0目录

cd Pacemaker-Python-GUI-pacemaker-mgmt-2.0.0

首先执行如下命令

./bootstrap

使用rpm命令在RHEL5.5安装光盘中安装gettext-devel、intltool包,具体命令如下:

cd /media/RHEL_5.5\ i386\ DVD/Server/ rpm -ivh gettext-devel-0.14.6-4.el5.i386.rpm rpm -ivh intltool-0.35.0-2.i386.rpm

之后再次进入Pacemaker-Python-GUI-pacemaker-mgmt-2.0.0目录

cd Pacemaker-Python-GUI-pacemaker-mgmt-2.0.0

执行如下命令:

./ConfigureMe configure autoreconf -ifs ./bootstrap
make
make install

使用passwd命令设置 hacluster用户口令

将hbmgmtd复制到/etc/pam.d/目录

cp /usr/etc/pam.d/hbmgmtd /etc/pam.d/

6、安装DRBD

使用tar zxvf drbd-8.3.8.1.tar.gz解压该文件

使用cd /media/RHEL_5.5\ i386\ DVD/Server/进入光盘挂载目录中

使用rpm依次安装内核相关的源码包

rpm -ivh kernel-devel-2.6.18-194.el5.i686.rpm rpm -ivh kernel-headers-2.6.18-194.el5.i386.rpm rpm -ivh kernel-doc-2.6.18-194.el5.noarch.rpm

使用cd drbd-8.3.8.1命令进入drbd-8.3.8.1目录中依次执行如下命令配置、编译并安装

./autogen.sh ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc/ --with-km
make
make install

使用chkconfig --add drbd命令创建drbd服务启动脚本

使用chkconfig --add heartbeat命令创建heartbeat服务启动脚本

使用chkconfig heartbeat off命令关闭heartbeat服务

使用chkconfig drbd off命令关闭drbd服务

使用cat Load\ drbd\ modules >> /etc/rc.d/rc.sysinit命令将Load drbd modules中的内容添加到rc.sysinit系统文件的***部分,以便系统启动时能自动将drbd.ko驱动模块加载到核心中,正常使用drbd服务。(该步逐在rhel5.5中需要省略,否则drbd服务将无法正常启动)。

7、配置DRBD

7.1、修改各节点主机DEBD配置文件/etc/drbd.d/global_common.conf中usage-count 的参数为no,如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

完成后存盘退出。

7.2、在各节点主机中创建文件/etc/drbd.d/oradata.res,并在oradata.res文件中添加如下内容:

resource oradata { # 资源组的名称
  protocol C;
        startup {
    degr-wfc-timeout 120;    # 2 minutes. 启动时连接其他节点的超时时间
  }
        disk {
    on-io-error   detach; # 当磁盘有错误时,不连接
  }
        net {
  }
syncer {
        rate 10M; # 设置主备节点同步时的网络速率***值
        al-extents 257;
  }
  on node2.localdomain{ # 节点主机名
    device    /dev/drbd0; # 今后使用的设备
    disk      /dev/vda5; # 该节点上的用于存放数据的分区号
    address   10.109.1.38:7788; # 该节点的IP地址
    meta-disk internal; # meta data信息存放的方式
  }
  on node3.localdomain{
    device    /dev/drbd0;
    disk      /dev/vda5;
    address   10.109.1.39:7788;
    meta-disk internal;
  }
}

如图例:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

7.3、初始化分区

在各节点上执行drbdadm create-md oradata命令,初始 化分区(创建meta data信息),这里的oradata即为配置文件中的资源组名称。

7.4、启动服务在两台节点服务器上启动drbd服务。如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

之后用cat /proc/drbd 或 service drbd status 查看当前状态,出现下图信息说明DRBD服务已经正常启动了,如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

※ 注意,现在两机器都是处于Secondary,即备机状态,还进行数据同步。

7.5、设置primary主机

在确认作为主数据服务器的机器上执行:

[root@node1 ~]# drbdadm adjust oradata
[root@node1 ~]# drbdsetup /dev/drbd0 primary -o

这样,将把node1作为主机,把vda5中的数据以块的方式同步到node2中。可再次查看状态:

[root@node1 ~]# cat /proc/drbd
version: 8.3.8 (api:88/proto:86-94)
GIT-hash: d78846e52224fd00562f7c225bcc25b2d422321d build by root@hatest1, 2010-07-07 08:59:44
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r----
    ns:719756 nr:0 dw:0 dr:720896 al:0 bm:43 lo:0 pe:62 ua:36 ap:0 ep:1 wo:b oos:1378556
        [=====>..............] sync'ed: 34.4% (1378556/2096348)K delay_probe: 149
        finish: 0:04:59 speed: 4,580 (7,248) K/sec
[root@node2 ~]# cat /proc/drbd
version: 8.3.8 (api:88/proto:86-94)
GIT-hash: d78846e52224fd00562f7c225bcc25b2d422321d build by root@hatest1, 2010-07-07 08:59:44
0: cs:SyncTarget ro:Secondary/Primary ds:Inconsistent/UpToDate C r----
    ns:0 nr:752096 dw:751584 dr:0 al:0 bm:45 lo:17 pe:49 ua:16 ap:0 ep:1 wo:b oos:1344764
        [======>.............] sync'ed: 36.0% (1344764/2096348)K queue_delay: 2.9 ms
        finish: 0:02:11 speed: 10,224 (10,020) want: 10,240 K/sec

从蓝色比较的 地方,可区分主机在DRBD集群中的位置。使用下面的命令也可确认:

[root@node1 ~]# drbdadm role oradata
Primary/Secondary
[root@node2 ~]# drbdadm role oradata
Secondary/Primary

把 drbd服务设置为自启动方式:

[root@node1 ~]# chkconfig --level 235 drbd on
[root@node2 ~]# chkconfig --level 235 drbd on

至此,镜像分区已创建完成。

最终同步完 成后,两机器drbd的状态会变为:

[root@hatest1 ~]# cat /proc/drbd
version: 8.3.8 (api:88/proto:86-94)
GIT-hash: d78846e52224fd00562f7c225bcc25b2d422321d build by root@hatest1, 2010-07-07 08:59:44
0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r----
    ns:2096348 nr:0 dw:0 dr:2096348 al:0 bm:128 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
[root@hatest2 ~]# cat /proc/drbd
version: 8.3.8 (api:88/proto:86-94)
GIT-hash: d78846e52224fd00562f7c225bcc25b2d422321d build by root@hatest1, 2010-07-07 08:59:44
0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r----
    ns:0 nr:2096348 dw:2096348 dr:0 al:0 bm:128 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0

7.6、DRBD中的split brain的处理

split brain实际上是指在某种情况下,造成drbd的两个节点断开了连接,都已Primary状态来运行。这通常发生在主节点断开,而备节点手动修改数据 后,因meta data数据不一致的情况。当drbd某primary节点连接对方节点准 备发送信息的时候如果发现对方也是primary状态,那么会会立刻自行断开连接,并认定当前已经发生split brain了,这时候他会在系统日志中记录以下信息:“Split-Brain detected,dropping connection!”当发生split brain之后,如果查看连接状态,其中至少会有一个是StandAlone状态,另外一个可能也是StandAlone(如果是同时发现split brain状态),也有可能是WFConnection的状态。

DRBD可在配置文件中设定发生split brain时的处理机制,但这可能与实际情况不一致,不建议使用。若没有配置split brain自动解决方案,我们可以手动来处理。

首先我们必须要确定哪一边应该作为解决问题后的primary(也就是拥有***数据的一边).一旦确定好这一点,那么我们同时也就确定接受 丢失在split brain之后另外一个节点上面所做的所有数据变更了。当这些确定下来后,我们就可以通过以下操作来恢复了:

(1)首先在确定要作为 secondary的节点上面切换成secondary并放弃该资源的数据:

drbdadm disconnect resource_name
drbdadm secondary resource_name
drbdadm -- --discard-my-data connect resource_name

(2)在要作为primary的节点重新连 接secondary(如果这个节点当前的连接状态为WFConnection的话,可以省略)

drbdadm connect resource_name

当作完这些动作之后,从新的primary到secondary的re- synchnorisation会自动开始(重新同步)。

7.7、格式化分区

7.7.1、与软RAID、LVM等类似,要使用DRBD 创建的镜像分区,不是直接使用/dev/vda5设备,而是在配置文件中指定的/dev/drbd0。同样的,不必等待初始化完成后才使用drbd0设 备。

[root@node1 ~]# drbdadm role oradata
Primary/Secondary
[root@node1 ~]# mkfs.ext3 /dev/drbd0
[root@node1 ~]# tune2fs -c 0 -i 0 /dev/drbd0

7.7.2注意事项

需要注意,drbd0设备只能在Primary一端使用,下面的操作都是会报错的:

[root@node2 ~]# mount /dev/vda5 /oradata
mount: /dev/vda5 already mounted or /oradata busy
[root@node2 ~]# drbdadm role oradata
Secondary/Primary
[root@node2 ~]# mount /dev/drbd0 /oradata/
mount: block device /dev/drbd0 is write-protected, mounting read-only
mount: 错误的介质类型

另外,为避免误操作,当机器重启后,默认都处于Secondary状态,如要使用 drbd设备,需手动把其设置为Primary。

7.7.3、挂载

先把drbd0设备挂载到/oradata目录中:

[root@hatest1 ~]# mount /dev/drbd0 /oradata
[root@hatest1 ~]# df -h /oradata
文件系 统               容量  已用 可用 已用% 挂载点
/dev/drbd0            2.0G   36M  1.9G   2% /oradata

8、安装ORACLE10.2

8.1、分别在各节点配置Linux内核参数。

以root身份登录后,进入etc目录,打开sysctl.conf文件,然后将以下内容写入图中位置:

kernel.shmall = 2097152kernel.shmmax = 1717986918kernel.shmmni= 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144

这些参数都可按照该列表填写,在这些参数中的shmmax(红色标注)则有自己的计算方法:内存以G为单位,将其换算成Byte单位在乘以80%,例如;2G内存,换算公式为

2*1024*1024*1024*80%=1717986918

8.2、创建oracle安装要求的用户名和用户组,并修改oracle用户环境变量(即修改oracle用户目录下的.bash_profile文件)

8.2.1、在两个节点中分别执行如下groupadd oinstall、groupadd dba、useradd -m -g oinstall -G dba oracle命令,创建oracle用户,如图

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

8.2.2、在各节点修改oracle环境变量, 以oracle用户身份,打开.bash_profile文件将如下内容添加到环境变量中,如图

export ORACLE_BASE=/oradata
export ORACLE_HOSTNAME=node1.localdomain
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export NLS_LANG=american_america.ZHS16GBK;
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

8.3、创建ORACLE安装挂载点

在各oracle 安装节点使用如下命令创建DRBD资源挂载点,并修改挂载点属组

[root@node1 ~]# cd /
[root@node1 /]# mkdir oradata
[root@node1 /]# chown -R oracle:oinstall oradata

8.4修改IP地址为浮动IP并设置DEBD资源为primary

在安装oracle10G2的机器上首先需要将IP地址及主机名修改为未来浮动IP及主机名(这样主要是为了未来双机应用时oracle能顺利切换,并正常启动),执行drbdadm primary oradata命令 设置DRBD资源为primary如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

执行drbdadm role oradata查看状态,如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

8.5、挂载DRBD资源并修改资源属组

执行mount /dev/drbd0 /oradata命令挂载DRBD资源,如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

之后执行mount命令查看信息,如图

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

信息中出现/dev/drbd0 on /oradata type ext3 (rw)行,说明资源挂载正常,之后执行

chown -R oracle:oinstall oradata

命令修改oradata属组,并使用ls -l查看信息,如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

8.6、安装oracle10G2数据库

具体可以查看其他文档。

8.7、***配置

8.7.1、修改listenter.ora文件,添加如下内容,解决双机切换报监听ORA-12514错误问题。

(SID_DESC =
(GLOBAL_DBNAME =orcl)
(ORACLE_HOME = /oradata/product/10.2.0/db_1)
(SID_NAME = orcl)

如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

8.7.2、修改主机名为原节点主机名及IP。

8.7.3、终止在用oracle节点的各oracle进程,并卸载掉oracle资源;

在另一节点中挂载资源并启动oracle应用进程并进行测试。如果没有问题可进行HA的配置。

9、heartbeat的配置

9.1、配置authkeys

这里我用随机数来获得密钥,命令如下:

# (echo -ne "auth 1\n1 sha1 ";dd if=/dev/urandom bs=512 count=1 | openssl md5) > /etc/ha.d/authkeys
# cat authkeys

# chmod 600 /etc/ha.d/authkeys

效果如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

9.2、配置ha.cf

使用命令vi /etc/ha.d/ha.cf编辑配置文件,修改为如下内容:

debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
auto_failback none
mcast eth0 239.0.0.43 694 1 0
udpport 694
bcast eth0
deadtime 30
initdead 30
keepalive 2
node node2.localdomain
node node3.localdomain
compression bz2
compression_threshold 2
crm respawn
apiauth   mgmtd   uid=root
respawn   root    /usr/lib/heartbeat/mgmtd -v

之后存盘退出。如图

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

9.3、同步节点HA配置文件

执行# /usr/share/heartbeat/ha_propagate命令,并安提示输入同步节点主机root账户密码,如图

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

9.4、启动heartbeat

使用如下命令在两节点上启动heartbeat :

#service heartbeat start

如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

9.5、配置DRBD+Oracle的HA资源。

9.5.1、执行命令

# crm_attribute -t crm_config -n stonith-enabled -v false

或者

# crm configure property stonith-enabled="false"

关闭heartbeat的STONITH支持,避免启用了stonith而集群中又没有stonith资源时,集群中的资源都是无法启动的问题。

9.5.2、清空旧配置文件,以crm 交互方式提交如下命令:

# crm
crm(live)# configure
crm(live)configure# erase
crm(live)configure# commit
crm(live)configure# exit

清空旧配置文件。

9.5.3、关闭quorum

HA中有quorum的概念,即集群中必须有一半的节点处于online的状态,则集群被认为是have quorum(可以认为是达到合法节点数要求)。如果少于一半的节点在线,那么HA认为集群达不到节点数要求,从而拒绝启动集群中的资源。 但是这种策略对于2个节点的集群明显是不合理的,所以就会发生当2个节点的集群其中一个节点失效时所有的集群都无法启动的情况。
同样的,也关闭 STONITH,执行以下两条命令即可关闭quorun及STONITH支持

# crm configure property no-quorum-policy=ignore
# crm configure property stonith-enabled="false"

9.5.3、使用pacemaker进行HA资源配置

把DRBD设置为主备资源,其他oracle资源放在同一个组里面,并通过“顺序”、“协同”等限制条件让两资源配合运行。根据监控的情况,加入 start 超时、monitor 间隔时间等操作。
进入crm 交互模式:

# crm configure
crm(live)configure#

然 后在configure状态下输入以下内容:

primitive drbd_oracle ocf:linbit:drbd \
        params drbd_resource="oradata" \
        op monitor interval="15s"
primitive fs_oracle ocf:heartbeat:Filesystem \
        params device="/dev/drbd/by-res/oradata" directory="/oradata" fstype="ext3"
primitive ip_oracle ocf:heartbeat:IPaddr2 \
        params ip="10.109.1.37" nic="bond0" cidr_netmask="24"
primitive oracle_instant ocf:heartbeat:oracle \
        op monitor interval="120" timeout="30" \
        op start interval="0" timeout="120" \
        params sid="orcl"
primitive oracle_lsnrctl ocf:heartbeat:oralsnr \
        params sid="orcl" \
        operations $id="oracle_lsnrctl-operations" \
        op monitor interval="10" timeout="30"
primitive route_oracle ocf:heartbeat:Route \
   operations $id="route_oracle-operations" \
   params destination="0.0.0.0/0" gateway="10.109.1.1"
group group_oracle ip_oracle route_oracle fs_oracle oracle_lsnrctl oracle_instant \
        meta target-role="Started" is-managed="true"
ms ms_drbd_oracle drbd_oracle \
        meta master-max="1" master-node-max="1" \
        clone-max="2" clone-node-max="1" notify="true"
colocation oracle_on_drbd inf: group_oracle ms_drbd_oracle:Master
order oracle_after_drbd inf: ms_drbd_oracle:promote group_oracle:start

***用commit 提交即可。

说明:

a、根据DRBD官网的资料,ocf:heartbeat:drbd 已经被丢弃,不建议使用,故用ocf:linbit:drbd 代替;

b、IP的设定RA,用ocf:heartbeat:IPaddr2,其用 ip 命令设定虚拟IP,虚拟IP生效后,用ifconfig命令看不到,可用ip addr 查看;

c、输入上述命令时,可能会提示警 告,start、stop的超时时间少于建议值等,这可根据应用启动、停止的实际环境在“操作”中加入(可参考oracle_instant 资源);

d、 ms 是设置“主备资源”;

e、colocation 是设置“协同”限制,即group_oracle和ms_drbd_oracle必须在同一台机器上运行,并且若ms_drbd_oracle不能作为 Master运行时,不会运行group_oracle,相反group_oracle的状态不会影响ms_drbd_oracle;

g、 order 是设置“顺序”限制,即先激活ms_drbd_oracle资源(把drbd设备设置为primary状态),然后再启动group_oracle组资 源;

f、挂载操作中,/dev/drbd/by-res/oradata是为了方便使用,由drbd创建的一个指向/dev/drbd0的链接;

h、 如果您输入的命令比较长,可以用“\”调到下一行继续,但是必须注意,下一行前面的空白只能用空格,不能用Tab等字符。

配置提交后,两资源会自动运行(根据全局配置,有延迟),也可手动使用如下命令启动资源:

# crm resource start group_oracle

9.6、HA的管理命令

9.6.1、查看HA状态,执行如下命令:

# crm status

执行效果如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

9.6.2、手动切换,执行如下命令

# crm resource migrate group_oracle node2.localdomain

如图

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

切机前资源均在node3.localdomain上,执行命令后再次执行crm status命令可以看到资源已经全部被node2.localdomain接管。如图

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

9.7、维护

有时候,我们需要对当前主机进行维护,这时,可先把资源迁移到备机上,然后把主机设置为“非管理”的 standby状态,如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

使用鼠标点击图中standby即可将选中主机设置为“非管理”状态,如图:

RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析

之后,就可以把主机上的heartbeat服务关掉,甚至关闭该机器或进行维护的工作。

关于“RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


分享名称:RHEL5.5+DRBD+heartbeat+Oracle10R2双机安装的示例分析
标题网址:http://scgulin.cn/article/goosjg.html