在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
DRBD介绍 yum -y install gcc kernel-devel kernel-headers flex 开始安装drbd,下载地址:http://oss.linbit.com/drbd/ cd /tmp wget http://oss.linbit.com/drbd/8.4/drbd-8.4.1.tar.gz tar xzf drbd-8.4.1.tar.gz cd drbd-8.4.1 ./configure --prefix=/usr/local/drbd --with-km make KDIR=/usr/src/kernels/2.6.18-274.18.1.el5-i686/ make install mkdir -p /usr/local/drbd/var/run/drbd cp /usr/local/drbd/etc/rc.d/init.d/drbd /etc/rc.d/init.d chkconfig --add drbd chkconfig drbd on 安装drbd模块: cd drbd make clean make KDIR=/usr/src/kernels/2.6.18-274.18.1.el5-i686/ cp drbd.ko /lib/modules/`uname -r`/kernel/lib/ depmod 注:usr/src/kernels/2.6.18-274.18.1.el5-i686/这个内核源码树路径需要根据自己的系统修改。 #fdisk /dev/hdb //准备为 hdb 建立分区 The number of cylinders for this disk is set to 20805. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): n //键入 n 表示要建立分区 Command action e extended p primary partition (1-4) p //键入 p 表示建立主要分区 Partition number (1-4): 1 //键入 1 为此主要分区代号 First cylinder (1-20805, default 1): //开始磁柱值,按下 enter 即可 Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-20805, default 20805): //结束磁柱值,按下 enter 即可 Using default value 20805 Command (m for help): w //键入 w 表示确定执行刚才设定 The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. [root@node1 yum.repos.d]# partprobe //使刚才的 partition table 变更生效 建立分区完成后使用指令 fdisk -l 确定 partition talbe 状态 #fdisk -l Disk /dev/hda: 21.4 GB, 21474754560 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 13 104391 83 Linux /dev/hda2 14 2610 20860402+ 8e Linux LVM Disk /dev/hdb: 10.7 GB, 10737377280 bytes 16 heads, 63 sectors/track, 20805 cylinders Units = cylinders of 1008 * 512 = 516096 bytes Device Boot Start End Blocks Id System /dev/hdb1 1 20805 10485688+ 83 Linux 建立分区完成后请建立 /db 目录。 (Node1 及 Node2 都必须建立) #mkdir /db 建立Drbd配置文件 vi /usr/local/drbd/etc/drbd.conf 写入: include "drbd.d/global_common.conf"; include "drbd.d/*.res"; vi /usr/local/drbd/etc/drbd.d/global_common.conf 写入 global { usage-count yes; } common { net { protocol C; } } vi /usr/local/drbd/etc/drbd.d/r0.res 写入 resource r0 { on node1 { device /dev/drbd1; disk /dev/hdb1; address 192.168.1.101:7789; meta-disk internal; } on node2 { device /dev/drbd1; disk /dev/hdb1; address 192.168.1.103:7789; meta-disk internal; } 设置Hostname vi /etc/sysconfig/network 修改HOSTNAME为node1 vi /etc/hosts 写入 192.168.1.101 node1 192.168.1.103 node2 使node1 hostnmae临时生效 hostname node1 node2机器设置类似。 #modprobe drbd //载入 drbd 模块 #lsmod|grep drbd //确认 drbd 模块是否载入 drbd 228528 0 #dd if=/dev/zero of=/dev/hdb1 bs=1M count=100 //把一些资料塞到 hdb 內 (否则 create-md 时有可能会出现错误) #drbdadm create-md r0 //建立 drbd resource #drbdadm up r0 //启动 resource r0 查看node1和node2的状态应该类似下面的: cat /proc/drbd version: 8.4.1 (api:1/proto:86-100) GIT-hash: 91b4c048c1a0e06777b5f65d312b38d47abaea80 build by [email protected], 2012-02-12 06:05:36 m:res cs ro ds p mounted fstype 0:r0 Connected Secondary/Secondary Inconsistent/Inconsistent C 表明现在已经启动服务,但还没有设置同步(即需要设置Primary Node) drbdadm primary --force r0 再次查看node1的状态: #cat /proc/drbd version: 8.4.1 (api:1/proto:86-100) GIT-hash: 91b4c048c1a0e06777b5f65d312b38d47abaea80 build by [email protected], 2012-02-12 06:47:37 1: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r----- ns:52892 nr:0 dw:0 dr:52892 al:0 bm:10 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0 我们看到状态已经变成Primary/Secondary,即设置primary node成功。 #mkfs.ext3 /dev/drbd1 然后将/dev/drbd1挂载到之前创建的/db目录。 #mount /dev/drbd1 /db 现在你只要把数据写入/db目录,drbd即会立刻把数据同步到备机192.168.1.103的/dev/hdb1分区上。 drbdadm down r0 之后就可以把node2的/dev/hdb1挂载到目录/db mount -t ext3 /dev/hdb1 /db 我们就可以查看node2的/db目录是否有node1的数据。 umount /dev/drbd1 drbdadm secondary r0 在node2上操作: drbdadm primary r0 此时应该已经切换成功。 |
请发表评论