Centos5.6 x86下部署安装DRBD+Heartbeat+MySQL-DevilRex119
报错信息如下所示:[*] Operation refused.
[*] Command 'drbdmeta 0 v08 /dev/sda2 internal create-md' terminated with exit code 40
[*] drbdadm create-md r0: exited with code 40
这个时候我们需要使用dd命令覆盖文件系统中的设备块信息,如下所示:
[*] dd if=/dev/zero of=/dev/sda2 bs=1Mcount=128
这个时候请一定要注意dd命令要清除的分区信息,不要搞错了,不然很容易将系统损坏,我第一次实验时就遇到了这个问题;如果部署DRBD时的分区信息是不需要写进/etc/fstab表的,即不需要在安装系统时就挂载,不然重启系统时很容易发生Emergency信息,签于以上情况,所以我这里建议大家还是用独立硬盘作为DRBD的设备。
两台机器的基本情况如下所示:
centos1.cn7788.com 192.168.11.32
centos2.cn7788.com 192.168.11.33
Heartbeat的vip为 192.168.11.30
两台机器的hosts文件内容如下所示:
192.168.11.32 centos1.cn7788.com centos1
192.168.11.33 centos2.cn7788.com centos2
实验中暂时先用千M交换机的网络作为心跳线线路,等实验搭建成功后再考虑加双绞线作为心跳线,两台机器的hostname及ntp对时这些在实验前就应该配置好,iptables和SElinux关闭,具体情况略过。
一、DRBD的部署安装
两台机器分别用如下命令来安装drbd软件,如下所示:
[*] yum -y install drbd83 kmod-drbd83
[*] modprobe drbd
[*] lsmod | grep drbd
正确显示如下类似信息,表示DRBD已成功安装:
[*] drbd 3004404
两台机器的drbd.conf配置文件内容如下所示(两台机器的配置是一样的):
[*] cat/etc/drbd.conf
[*] global {
[*] # minor-count dialog-refresh disable-ip-verification
[*] usage-count no; #统计drbd的使用
[*] }
[*] common {
[*] syncer{ rate 30M; } #同步速率,视带宽而定
[*] }
[*] resource r0 { #创建一个资源,名字叫”r0”
[*] protocol C; #选择的是drbd的C 协议(数据同步协议,C为收到数据并写入后返回,确认成功)
[*] handlers { #默认drbd的库文件
[*] pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
[*] pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
[*] local-io-error "/usr/lib/drbd/notify-io-error.sh;
[*] /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
[*] # fence-peer "/usr/lib/drbd/crm-fence-peer.sh";
[*] # split-brain "/usr/lib/drbd/notify-split-brain.sh root";
[*] # out-of-sync "/usr/lib/drbd/notify-out-of-sync.sh root";
[*] # before-resync-target "/usr/lib/drbd/snapshot-resync-target-lvm.sh -p 15 -- -c 16k";
[*] # after-resync-target /usr/lib/drbd/unsnapshot-resync-target-lvm.sh;
[*] }
[*] startup {
[*] # wfc-timeout degr-wfc-timeout outdated-wfc-timeout wait-after-sb
[*] wfc-timeout 120;
[*] degr-wfc-timeout 120;
[*] }
[*] disk {
[*] # on-io-error fencing use-bmbv no-disk-barrier no-disk-flushes
[*] # no-disk-drain no-md-flushes max-bio-bvecs
[*] on-io-error detach;
[*] }
[*] net {
[*] # sndbuf-size rcvbuf-size timeout connect-int ping-int ping-timeout max-buffers
[*] # max-epoch-size ko-count allow-two-primaries cram-hmac-alg shared-secret
[*] # after-sb-0pri after-sb-1pri after-sb-2pri data-integrity-alg no-tcp-cork
[*] max-buffers 2048;
[*] cram-hmac-alg "sha1";
[*] shared-secret "123456";
[*] #DRBD同步时使用的验证方式和密码信息
[*] #allow-two-primaries;
[*] }
[*] syncer {
[*] rate 100M;
[*] # rate after al-extents use-rle cpu-mask verify-alg csums-alg
[*] }
[*] on centos1.cn7788.com {#设定一个节点,分别以各自的主机名命名
[*] device/dev/drbd0; #设定资源设备/dev/drbd0 指向实际的物理分区 /dev/sdb
[*] disk /dev/sdb;
[*] address 192.168.11.32:7788;#设定监听地址以及端口
[*] meta-disk internal;
[*] }
[*] on centos2.cn7788.com { #设定一个节点,分别以各自的主机名命名
[*] device/dev/drbd0; #设定资源设备/dev/drbd0 指向实际的物理分区 /dev/sdb
[*] disk /dev/sdb;
[*] address 192.168.11.33:7788; #设定监听地址以及端口
[*] meta-disk internal; #internal表示是在同一个局域网内
[*] }
[*] }
1.创建DRBD元数据信息,执行命令如下所示(两台机器都需要执行此步):
[*] # drbdadm create-md r0
[*] md_offset 8589930496
[*] al_offset 8589897728
[*] bm_offset 8589635584
[*] Found some data
[*] ==> This might destroy existing data!This might destroy existing data!
页:
[1]