分类: LINUX
2012-02-16 14:49:46
准备工作:
创建两个虚拟机:centos178和centos179
ip地址:centos178 192.168.2.178
centos179 192.168.2.246
各自建立两个独立分区如下:
[root@centos5-178 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 9.7G 971M 8.3G 11% /
/dev/sda1 99M 12M 83M 12% /boot
tmpfs 125M 0 125M 0% /dev/shm
/dev/sda4 15G 165M 14G 2% /drbd1
[root@centos5-179 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 9.7G 1.6G 7.7G 17% /
/dev/sda1 99M 12M 83M 12% /boot
tmpfs 125M 0 125M 0% /dev/shm
/dev/sda4 15G 165M 14G 2% /drbd2
/drbd1和/drbd2为测试的目录。
在两天机器上面分别安装apache,mysql,php环境。
mysql的数据库安装位置分别为上面的两个drbd目录。
两台机器分别作为mysql的主服务器和从服务器
测试结论:
在主服务器宕机的情况下,从服务器对数据库操作,写入,删除修改操作。
在主服务器重新上线的情况下是否可以继续和从服务器同步,(不停掉从服务器的情况下)
步骤:
两台机器分别安装apache,mysql,php环境,并且安装了magento
主数据库在目录/drbd1 从数据库在/drbd2
下载安装drbd
wget
tar -zxvf drbd-8.4.0.tar.gz
yum install flex
./configure --prefix=/usr/local/drbd --with-km
根据kernel编译:
make KDIR=/usr/src/kernels/2.6.18-164.el5-i686
make install
modprobe drbd
将drbd加入为服务:
cd /etc/rc.d/init.d/
ln -s /usr/local/drbd/etc/rc.d/init.d/drbd .
chkconfig drbd on
修改配置文件:
主,从服务器的/usr/local/drbd/etc/drbd.conf分别添加:
resource r0 {
protocol C;
startup {
degr-wfc-timeout 120;
}
disk {
on-io-error detach;
}
net {
}
syncer {
rate 10M;
}
on centos5-178{
device /dev/drbd0;
disk /dev/sda4;
address 192.168.2.178:7788;
meta-disk internal;
}
on centos5-179{
device /dev/drbd0;
disk /dev/sda4;
address 192.168.2.246:7788;
meta-disk internal;
}
}
启动主服务器:
使用之前需要清空分区
dd if=/dev/zero of=/dev/sda4 bs=1M count=500
drbdadm create-md r0
server drbd start
drbdsetup /dev/drbd0 primary --o
mke2fs -j /dev/drbd0
mount /dev/drbd0 /drbd1
启动从服务器
dd if=/dev/zero of=/dev/sda4 bs=1M count=500
drbdadm create-md r0
server drbd start