MySQL之-CentOS6.5_x64安装配置drbd8.4.2的示例代码

一、主机资源:

width=”600″ border=”1″>

Name IP 配置 备注
Master 192.168.0.152 sda/10G,sdb/10G;  
Slave 192.168.0.153 sda/10G,sdb/10G;  

********************************************

DRBD下载地址:http://oss.linbit.com/drbd/

********************************************

、系统基本配置

master、slave都做如下配置。

1.配置/etc/hosts文件

 ~]# vi /etc/hosts    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6    192.168.0.152 master  192.168.0.153 slave

2.禁用selinux:

# sed -i "7s/enforcing/disabled/" /etc/selinux/config

3.禁用或卸载iptables,这里我们将iptables禁用

1) 关闭防火墙—–service iptables stop
2)启动防火墙—–service iptables start
3)重启防火墙—–service iptables restart
4) 查看防火墙状态–service iptables status
5) 永久关闭防火墙–chkconfig iptables off
6) 永久关闭后启用–chkconfig iptables on

4.运行yum update升级内核:

# yum update  Loaded plugins: fastestmirror, presto  Loading mirror speeds from cached hostfile   * base: mirrors.btte.NET  ………

5.格式化/dev/sdb

#fdisk -l
#fdisk /dev/sdb

6.重启

reboot

三、安装DRBD 8.4.2(主备节点配置相同)

1.主备节点安装drbd编译环境:

# yum -y install gcc flex wget make kernel-devel kernel-headers Git libxslt rpm-build automake autoconf

2.下载DRBD安装文件

# wget http://oss.linbit.com/drbd/8.4/drbd-8.4.2.tar.gz

3.解压并安装DRBD文件

#tar -zvxf drbd-8.4.2.tar.gz  # cd drbd-8.4.2  drbd-8.4.2]# ./configure --prefix=/usr/local/drbd --with-km  drbd-8.4.2]# make KDIR=/usr/src/kernels/`uname -r`/  drbd-8.4.2]# make install

4.安装配置DRBD驱动模块

drbd-8.4.2]# cd drbd  drbd-8.4.2]# make clean  drbd-8.4.2]# make KDIR=/usr/src/kernels/`uname -r`/  drbd-8.4.2]# cp drbd.ko /lib/modules/`uname -r`/kernel/lib/  drbd-8.4.2]# depmod              #创建模块依赖关系的列表  drbd-8.4.2]# cp /usr/local/drbd/etc/rc.d/init.d/drbd /etc/rc.d/init.d/  drbd-8.4.2]# chkconfig --add drbd  drbd-8.4.2]# chkconfig drbd on

四、定义DRBD 驱动 (主备节点配置相同)

~]# cp /usr/local/drbd/etc/drbd.d/global_common.conf /usr/local/drbd/etc/drbd.d/global_common-bak.conf  ~]# vi /usr/local/drbd/etc/drbd.d/global_common.conf
 global {          usage-count yes;                         # 是否参加DRBD使用者统计.默认是yes          # minor-count dialog-refresh disable-ip-verification  }    common {          handlers {                  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";          }            startup {                  wfc-timeout 30;                  degr-wfc-timeout 30;                  outdated-wfc-timeout 30;          }            options {                  # cpu-mask on-no-data-accessible          }            disk {                  on-io-error detach;                  fencing resource-and-stonith;                  resync-rate 50M;                 # 设置主备节点同步时的网络速率最大值,单位是字节.          }            net {                  protocol C;                 # 使用协议C.表示收到远程主机的写入确认后,则认为写入完成.                  cram-hmac-alg sha1;                  # 设置主备机之间通信使用的信息算法.                  shared-secret "123456";          }  }
~]# vi /usr/local/drbd/etc/drbd.d/Redis.res
 resource redis{            on master {                    device          /dev/drbd1; #逻辑设备的路径                    disk            /dev/sdb;  #物理设备                    address         192.168.0.152:7788;  #IP和监听端口                  meta-disk       internal;            }            on slave {                    device          /dev/drbd1;                    disk            /dev/sdb;                    address         192.168.0.153:7788;                    meta-disk       internal;            }    }
~]# modprobe drbd                     #载入DRBD模块  ~]# lsmod |grep drbd                  #确认DRBD模块载入成功
drbd                  314184  0   libcrc32c             1246  1 drbd
~]# drbdadm create-md redis                 #创建元数据
 --==  Thank you for participating in the global usage survey  ==--  The server's response is:    you are the 4070th user to install this version  md_offset 10737414144  al_offset 10737381376  bm_offset 10737053696    Found some data     ==&gt; This might destroy existing data! <pre class="brush:sql;toolbar:false;">~]# mkdir -p /usr/local/drbd/var/run/drbd  ~]#  drbdadm up redis                             #启用资源
Device '1' is configured!  Command 'drbdmeta 1 v08 /dev/sdb internal apply-al' terminated with exit code 20
~]# cat /proc/drbd                                #查看DRBD状态
version: 8.4.2 (api:1/proto:86-101)  GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by , 2012-12-31 20:26:02  1: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r-----  ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:10485404
~]# mkdir /drbd                                   #为DRBD分区挂载创建路径

**********************************************************************************************************************

五、设置主节点Primary node(master配置)

~]# drbdadm primary --force redis               #设置master角色为Primary  ~]# mkfs.ext4 /dev/drbd1                          #格式化drbd1(逻辑设备)
 mke2fs 1.41.12 (17-May-2010)  文件系统标签=  操作系统:Linux  块大小=4096 (log=2)  分块大小=4096 (log=2)  Stride=0 blocks, Stripe width=0 blocks  655360 inodes, 2621351 blocks  131067 blocks (5.00%) reserved for the super user  第一个数据块=0  Maximum filesystem blocks=2684354560  80 block groups  32768 blocks per group, 32768 fragments per group  8192 inodes per group  Superblock backups stored on blocks:           32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632  正在写入inode表: 完成                              Creating journal (32768 blocks):  Writing superblocks and filesystem accounting information: 完成  This filesystem will be automatically checked every 36 mounts or 180 days, whichever comes first.    Use tune2fs -c or -i to override.
~]# mount /dev/drbd1 /drbd                             #挂载DRBD分区  ~]# df -h
文件系统              容量  已用  可用 已用%% 挂载点  /dev/sda3             8.7G  1.1G  7.3G  13% /  tmpfs                 497M     0  497M   0% /dev/shm  /dev/sda1             194M   64M  120M  35% /boot  /dev/drbd1            9.9G  151M  9.2G   2% /drbd

六、同步测试:

mater操作:

 ~]# ls  anaconda-ks.cfg  drbd-8.4.2  drbd-8.4.2.tar.gz  install.log  install.log.syslog  ~]# cp drbd-8.4.2.tar.gz /drbd  ~]# ll /drbd  总用量 676  -rw-r--r-- 1 root root 675803 10月 15 21:14 drbd-8.4.2.tar.gz  drwx------ 2 root root  16384 10月 15 21:07 lost+found  ~]# umount /dev/drbd1                    #卸载挂载的DRBD分区  ~]# drbdadm secondary redis              #主节点角色降级

slave操作:

~]# drbdadm primary redis                   #备节点设置成primary角色  ~]# mount /dev/drbd1 /drbd              #备节点挂载DRBD分区  ~]# df -h
文件系统              容量  已用  可用 已用%% 挂载点  /dev/sda3             8.7G  1.1G  7.3G  13% /  tmpfs                 497M     0  497M   0% /dev/shm  /dev/sda1             194M   64M  120M  35% /boot  /dev/drbd1            9.9G  152M  9.2G   2% /drbd
~]# ll /drbd  总用量 676  -rw-r--r-- 1 root root 675803 10月 15 21:14 drbd-8.4.2.tar.gz  drwx------ 2 root root  16384 10月 15 21:07 lost+found

测试完成~!

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享