Server1 ha1.a.com  eth0   192.168.1.40 27   eth1 192.168.20.100 24  (心跳网卡)

Server2 ha2.a.com  eth0   192.168.1.41 27   eth1 192.168.20.101 24  (心跳网卡)

Vip  192.168.1.38 27

NAS(drbd)的安装配置:

因为要根据名字进行探测,所以还要编辑/etc/hosts文件。

wps_clip_image-21041

Ha-server1:  (ha-server2的配置与之基本一致,不再重复写了)

先创建一个新的分区,作为共享存储磁盘。

[[email protected] ~]# fdisk /dev/sda

wps_clip_image-21044

[[email protected] ~]# partprobe /dev/sda  #重新加载分区表

[[email protected] ~]# rpm -ivh drbd83-8.3.8-1.el5.centos.i386.rpm

[[email protected] ~]# rpm -ivh kmod-drbd83-8.3.8-1.el5.centos.i686.rpm

[[email protected] ~]# cp /usr/share/doc/drbd83-8.3.8/drbd.conf   /etc/   #拷贝一份样例配置文件

[[email protected] etc]# vim drbd.conf

wps_clip_image-20591

[[email protected] ~]# vim /etc/drbd.d/global_common.conf  # 编辑全局,通用配置文件。

wps_clip_image-73

[[email protected] ~]# vim /etc/drbd.d/web.res     #编辑同步的资源配置文件

wps_clip_image-31881

[[email protected] ~]# drbdadm create-md web  #为web资源创建多设备drbd

[[email protected] ~]# service drbd start    #启动服务,两台主机都需要启用,一台启动的话会一直等待

wps_clip_image-534

[[email protected] ~]# cat /proc/drbd  #查看一下drbd状态

wps_clip_image-26999

[[email protected] drbd.d]# drbdadm -- --overwrite-data-of-peer  primary  web  #在web资源中配置为主设备,并同步资源。只需要在主设备上进行。(我在ha2上进行的)

[[email protected] drbd.d]# watch -n 1  'cat /proc/drbd'  #查看同步的过程

[[email protected] ~]# mkfs -t ext3 -L drbdweb  /dev/drbd0  #格式化drbd0,并创建卷标

[[email protected] drbd.d]# mkdir  /mnt/1  #创建挂载点

两台机器都配置完成后,现在可以手动的切换进行drbd的同步,以及锁机制了,若要进行高可用性的自动切换,还需要安装配置heartbeat。

HA(heartbeat)的安装配置:

Ha-server1的ip配置:

wps_clip_image-22122

Ha-server2的ip配置:

wps_clip_image-17602

Ha-server1的配置:  (Ha-server2的配置与Ha-server1的配置基本一致)

[[email protected] ~]# yum localinstall  heartbeat-2.1.4-9.el5.i386.rpm heartbeat-pils-2.1.4-10.el5.i386.rpm heartbeat-stonith-2.1.4-10.el5.i386.rpm libnet-1.1.4-3.el5.i386.rpm perl-MailTools-1.77-1.el5.noarch.rpm  --nogpgcheck

[[email protected] ~]# cd /etc/ha.d/

[[email protected] ha.d]# cp /usr/share/doc/heartbeat-2.1.4/ha.cf  ./

[[email protected] ha.d]# cp /usr/share/doc/heartbeat-2.1.4/haresources  ./

[[email protected] ha.d]# cp /usr/share/doc/heartbeat-2.1.4/authkeys  ./

[[email protected] ha.d]# vim ha.cf

wps_clip_image-16084

wps_clip_image-4924

[[email protected] ha.d]# vim haresources

wps_clip_image-22621

[[email protected] ha.d]# vim authkeys

wps_clip_image-25437

[[email protected] ha.d]# chmod 600  /etc/ha.d/authkeys   #修改该文件权限,否则出错

[[email protected] ~]# cp /etc/init.d/nfs  /etc/ha.d/resource.d/  #将nfs的控制脚本拷贝给heartbeat管理

[[email protected] ha.d]# service  heartbeat start

NFS的安装配置:

1、两台服务器都修改 nfs 配置文件如下:

# vi /etc/exports

/data *(rw,sync,insecure,no_root_squash,no_wdelay)

# service portmap start && chkconfig portmap on

# service nfs start && chkconfig nfs on

2、两台服务器都修改 nfs 启动脚本。将/etc/init.d/nfs 脚本中的 stop 部分中的 killproc

nfsd -2 修改为 -9

以下为测试:

首先我在ha-server2(主节点)上查看以下:

wps_clip_image-3811

wps_clip_image-21421

wps_clip_image-26730

然后进行模拟ha-server2失效的情况:

[[email protected] heartbeat]# ./hb_standby

wps_clip_image-5461

在ha-server1上进行查看:

wps_clip_image-20449

wps_clip_image-5189

[[email protected] heartbeat]# ./hb_takeover  # 模拟server2 恢复

wps_clip_image-815

wps_clip_image-31133

然后在另一台测试机上测试nfs服务:  (推送与锁机制,可以自己测试,不再写了)

[[email protected] ~]# mount 192.168.1.38:/mnt/1 /mnt/nfs/  #将远程nfs挂载到本地

wps_clip_image-9859

[[email protected] ~]# cd /mnt/nfs/  

wps_clip_image-8753