四、同步文件
此处,假设你是按照我之前写的(一)(二)搭建平台,和添加存储的
1、进行同步
将172.25.18.12 new.example.com 配置为主节点,并关测它的状态变化。
[root@new drbd.d]# drbdsetup /dev/drbd1 primary --force
[root@new drbd.d]# watch -n 1 cat /proc/drbd
两个节点上的块设备都完全同步之后,使用诸如ext4的文件系统格式化主节点上的 DRBD 设备
[root@new ~]# mkfs.ext4 /dev/drbd1
2、测试DRBD服务
手动挂载DRBD设备,并测试写入文件. 。
注意:两台主机上的/dev/drbd1 不能同时挂载,只有状态为 primary 时,(本实验中设定new.example.com为主节点),才能被挂载使用,而此时另一方的状态为 secondary。
[root@new ~]# mount /dev/drbd1 /mnt
[root@new ~]# cd /var/lib/mysql/
[root@new mysql]# mv * /mnt
[root@new mysql]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root 6926264 1412500 5161920 22% /
tmpfs 510200 0 510200 0% /dev/shm
/dev/sda1 495844 33461 436783 8% /boot
/dev/drbd1 8256660 171452 7665796 3% /mnt
[root@new mysql]# chown mysql.mysql /mnt
[root@new ~]# umount /mnt
[root@new ~]# mount /dev/drbd1 /var/lib/mysql/
[root@new ~]# /etc/init.d/mysqld start
[root@new mysql]# mysql
mysql> create database test;
[root@new ~]# cd /var/lib/mysql/
[root@new mysql]# ls
ibdata1 ib_logfile0 ib_logfile1 test mysql mysql.sock
[root@new mysql]# cat /proc/drbd
version: 8.4.4 (api:1/proto:86-101)
GIT-hash: 74402fecf24da8e5438171ee8c19e28627e1c98a build by root@new.example.com, 2015-05-23 14:48:22
1: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
ns:8675084 nr:0 dw:286768 dr:8393250 al:78 bm:512 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
卸载DRBD设备并将172.25.18.13 new1.example.com设置为从设备。
[root@new ~]# /etc/init.d/mysqld stop
[root@new ~]# umount /dev/drbd1
[root@new ~]# drbdadm secondary mysqldata
[root@new1 ~]# drbdadm primary mysqldata
[root@new1 ~]# mount /dev/drbd1 /var/lib/mysql
[root@new1 ~]# cd /var/lib/mysql
在从设备上可以看到之前主设备创建的文件test
[root@new1 mysql]# ls
ibdata1 ib_logfile0 ib_logfile1 test mysql
[root@new1 mysql]# /etc/init.d/mysqld stop
3、设置自动挂载
在两个节点上同时修改这个文件同时修改
[root@new1 ~]# cd /etc/ha.d
[root@new1 ha.d]# vim haresources
new.example.com IPaddr::172.25.18.200/24/eth0 drbddisk::mysqldata Filesystem::/dev/drbd1::/var/lib/mysql::ext4 mysqld
其中的drbddisk, Filesystem调用的是/etc/ha.d/resource.d/下的相应脚本文件
[root@new1 ha.d]# umount /dev/drbd1
[root@new1 ha.d]# drbdadm secondary mysqldata
在启动heartbeat之前,必须保证/dev/drbd1没有在任一个节点上挂载。而且,172.25.18.12 new.example.com为主设备,172.25.18.13 new1.example.com为从设备
在两个设备上,分别启动heartbeat服务,当主设备启动正常后,再启动从设备
[root@new ha.d]# /etc/init.d/heartbeat start
[root@new ha.d]# tail -f /var/log/messages
May 23 16:15:07 new Filesystem(Filesystem_/dev/drbd1)[12967]: INFO: Running start for /dev/drbd1 on /var/lib/mysql
May 23 16:15:07 new kernel: EXT4-fs (drbd1): mounted filesystem with ordered data mode. Opts:
从日志信息可以看出,主设备已经正常启动,且被自动挂载了
[root@new1 ha.d]# /etc/init.d/heartbeat start
[root@new ha.d]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root 6926264 1412716 5161704 22% /
tmpfs 510200 0 510200 0% /dev/shm
/dev/sda1 495844 33461 436783 8% /boot
/dev/drbd1 8256660 170948 7666300 3% /var/lib/mysql
如果想了解更多关于heartbeat的内容,我的网盘里分享有中文手册,
阅读(646) | 评论(0) | 转发(0) |