通过HA实现服务器的高可用性,即通过corosync+drbd+pacemaker实现mysql服务器的高可用集群。

案例应用实现主要步骤:

一.准备工作:

二、DRBD安装配置步骤

三、mysql安装与配置

四、corosync+pacemaker的安装和配置

五、集群管理

 

 

实现详细步骤:

一.准备工作:

1.1 修改node1.magedu.com主机名,IP地址和系统时间

  1. [root@node1 ~]# hostname
  2. node1.magedu.com
  3. [root@node1 ~]# cat /etc/sysconfig/network
  4. NETWORKING=yes
  5. NETWORKING_IPV6=no
  6. HOSTNAME=node1.magedu.com
  7. [root@node1 ~]# hwclock -s
  8. [root@node1 ~]# date
  9. Tue Feb 7 20:24:22 CST 2012
  10. [root@node1 ~]#
  11. [root@node1 ~]# setup

  1. [root@node1 ~]# service network restart
  2. Shutting down interface eth0: [ OK ]
  3. Shutting down loopback interface: [ OK ]
  4. Bringing up loopback interface: [ OK ]
  5. Bringing up interface eth0: [ OK ]
  6. [root@node1 ~]# ifconfig eth0
  7. eth0 Link encap:Ethernet HWaddr 00:0C:29:AE:83:D1
  8. inet addr:192.168.101.81 Bcast:192.168.101.255 Mask:255.255.255.0

1.2 修改node2.magedu.com主机名,IP地址和系统时间

  1. [root@node2 ~]# hostname
  2. node2.magedu.com
  3. [root@node2 ~]# cat /etc/sysconfig/network
  4. NETWORKING=yes
  5. NETWORKING_IPV6=no
  6. HOSTNAME=node2.magedu.com
  7. [root@node2 ~]# hwclock -s
  8. [root@node2 ~]# date
  9. Tue Feb 7 20:25:49 CST 2012
  10. [root@node2 ~]#
  11. [root@node2 ~]# setup

  1. [root@node2 ~]# service network restart
  2. Shutting down interface eth0: [ OK ]
  3. Shutting down loopback interface: [ OK ]
  4. Bringing up loopback interface: [ OK ]
  5. Bringing up interface eth0: [ OK ]
  6. [root@node2 ~]# ifconfig eth0
  7. eth0 Link encap:Ethernet HWaddr 00:0C:29:D1:D4:32
  8. inet addr:192.168.101.82 Bcast:192.168.101.255 Mask:255.255.255.0

1.3 在node1和node2上配置hosts文件和ssh密钥信息
有利于以后在一个节点对另一节点直接操作。
1.3.1 在node1上修改/etc/hosts文件

  1. [root@node1 ~]# echo "192.168.101.81 node1.magedu.com node1" >>/etc/hosts
  2. [root@node1 ~]# echo "192.168.101.82 node2.magedu.com node2" >>/etc/hosts

1.3.1 在node1上修改/etc/hosts文件

  1. [root@node2 ~]# echo "192.168.101.81 node1.magedu.com node1" >>/etc/hosts
  2. [root@node2 ~]# echo "192.168.101.82 node2.magedu.com node2" >>/etc/hosts

1.3.3 在node1上配置ssh密钥信息

  1. [root@node1 ~]# ssh-keygen -t rsa #一直输入空格
  2. [root@node1 ~]# ssh-copy-id -i .ssh/id_rsa.pub root@node2.magedu.com

1.3.4 在node2上配置ssh密钥信息

  1. [root@node2 ~]# ssh-keygen -t rsa #一直输入空格
  2. [root@node2 ~]# ssh-copy-id -i .ssh/id_rsa.pub root@node1.magedu.com
  3. [root@node2 ~]# ssh node1 'ifconfig' #将看到node2上的信息
  4. The authenticity of host 'node1 (192.168.101.81)' can't be established.
  5. RSA key fingerprint is d4:f1:06:3b:a0:81:fd:85:65:20:9e:a1:ee:46:a6:8b.
  6. Are you sure you want to continue connecting (yes/no)? yes
  7. Warning: Permanently added 'node1' (RSA) to the list of known hosts.
  8. eth0 Link encap:Ethernet HWaddr 00:0C:29:AE:83:D1
  9. inet addr:192.168.101.81 Bcast:192.168.101.255 Mask:255.255.255.0

1.4 下载相关软件包:(这里我将下载的软件包放在/root/ha/下面了,共18个)

  1. [root@node1 ~]# cd ha/
  2. [root@node1 ha]#
  3. cluster-glue-1.0.6-1.6.el5.i386.rpm
  4. cluster-glue-libs-1.0.6-1.6.el5.i386.rpm
  5. corosync-1.2.7-1.1.el5.i386.rpm
  6. corosynclib-1.2.7-1.1.el5.i386.rpm
  7. drbd83-8.3.8-1.el5.centos.i386.rpm
  8. heartbeat-3.0.3-2.3.el5.i386.rpm
  9. heartbeat-libs-3.0.3-2.3.el5.i386.rpm
  10. kmod-drbd83-8.3.8-1.el5.centos.i686.rpm
  11. ldirectord-1.0.1-1.el5.i386.rpm
  12. libesmtp-1.0.4-5.el5.i386.rpm
  13. mysql-5.5.15-linux2.6-i686.tar.gz
  14. openais-1.1.3-1.6.el5.i386.rpm
  15. openaislib-1.1.3-1.6.el5.i386.rpm
  16. pacemaker-1.1.5-1.1.el5.i386.rpm
  17. pacemaker-cts-1.1.5-1.1.el5.i386.rpm
  18. pacemaker-libs-1.1.5-1.1.el5.i386.rpm
  19. perl-TimeDate-1.16-5.el5.noarch.rpm
  20. resource-agents-1.0.4-1.1.el5.i386.rpm
  21. 这里不需要ldirectord-1.0.1-1.el5.i386.rpm,故将其删除
  22. [root@node1 ha]# rm ldirectord-1.0.1-1.el5.i386.rpm
  23. rm: remove regular file `ldirectord-1.0.1-1.el5.i386.rpm'? y
  24. [root@node1 ha]# ssh node2 'mkdir /root/ha'
  25. [root@node1 ha]# scp *.rpm node2:/root/ha/#将相关软件包移动到node2上
  26. [root@node1 ha]# scp *.rpm node2:/root/ha/
  27. cluster-glue-1.0.6-1.6.el5.i386.rpm 100% 265KB 265.0KB/s 00:00
  28. cluster-glue-libs-1.0.6-1.6.el5.i386.rpm 100% 130KB 130.1KB/s 00:00
  29. corosync-1.2.7-1.1.el5.i386.rpm 100% 166KB 166.1KB/s 00:00
  30. corosynclib-1.2.7-1.1.el5.i386.rpm 100% 155KB 154.8KB/s 00:00
  31. drbd83-8.3.8-1.el5.centos.i386.rpm 100% 217KB 216.7KB/s 00:00
  32. heartbeat-3.0.3-2.3.el5.i386.rpm 100% 162KB 161.7KB/s 00:00
  33. heartbeat-libs-3.0.3-2.3.el5.i386.rpm 100% 283KB 282.8KB/s 00:00
  34. kmod-drbd83-8.3.8-1.el5.centos.i686.rpm 100% 123KB 123.0KB/s 00:00
  35. libesmtp-1.0.4-5.el5.i386.rpm 100% 59KB 59.0KB/s 00:00
  36. openais-1.1.3-1.6.el5.i386.rpm 100% 202KB 202.2KB/s 00:00
  37. openaislib-1.1.3-1.6.el5.i386.rpm 100% 92KB 92.4KB/s 00:00
  38. pacemaker-1.1.5-1.1.el5.i386.rpm 100% 778KB 778.1KB/s 00:00
  39. pacemaker-cts-1.1.5-1.1.el5.i386.rpm 100% 203KB 203.1KB/s 00:00
  40. pacemaker-libs-1.1.5-1.1.el5.i386.rpm 100% 324KB 324.2KB/s 00:00
  41. perl-TimeDate-1.16-5.el5.noarch.rpm 100% 32KB 32.1KB/s 00:00
  42. resource-agents-1.0.4-1.1.el5.i386.rpm 100% 380KB 379.5KB/s 00:00
  43. [root@node1 ha]# scp mysql-5.5.15-linux2.6-i686.tar.gz node2:/root/ha/
  44. mysql-5.5.15-linux2.6-i686.tar.gz 100% 155MB 10.3MB/s 00:15

1.5 配置本地yum数据库

  1. [root@node1 ha]#
  2. [root@node1 ha]# mkdir /mnt/cdrom/
  3. [root@node1 ha]# mount /dev/cdrom /mnt/cdrom/
  4. mount: block device /dev/cdrom is write-protected, mounting read-only
  5. [root@node1 ha]# yum list all
  6. [root@node1 ha]#
  7. [root@node1 ha]# scp /etc/yum.repos.d/server.repo node2:/etc/yum.repos.d/
  8. server.repo 100% 647 0.6KB/s 00:00
  9. [root@node1 ha]#
  10. [root@node1 ha]# ssh node2 'mkdir /mnt/cdrom/'
  11. [root@node1 ha]# ssh node2 'mount /dev/cdrom /mnt/cdrom/'
  12. [root@node1 ha]# ssh node2 'yum list all'

1.6 在node1上新增磁盘

  1. [root@node1 ha]# cd
  2. [root@node1 ~]# fdisk -l
  3. Disk /dev/sda: 21.4 GB, 21474836480 bytes
  4. 255 heads, 63 sectors/track, 2610 cylinders
  5. Units = cylinders of 16065 * 512 = 8225280 bytes
  6. Device Boot Start End Blocks Id System
  7. /dev/sda1 * 1 13 104391 83 Linux
  8. /dev/sda2 14 1318 10482412+ 83 Linux
  9. /dev/sda3 1319 1579 2096482+ 82 Linux swap / Solaris
  10. [root@node1 ~]# fdisk /dev/sda
  11. p/n/p//+1000M/p/w
  12. [root@node1 ~]# fdisk -l
  13. Disk /dev/sda: 21.4 GB, 21474836480 bytes
  14. 255 heads, 63 sectors/track, 2610 cylinders
  15. Units = cylinders of 16065 * 512 = 8225280 bytes
  16. Device Boot Start End Blocks Id System
  17. /dev/sda1 * 1 13 104391 83 Linux
  18. /dev/sda2 14 1318 10482412+ 83 Linux
  19. /dev/sda3 1319 1579 2096482+ 82 Linux swap / Solaris
  20. /dev/sda4 1580 1702 987997+ 83 Linux
  21. [root@node1 ~]# partprobe /dev/sda
  22. [root@node1 ~]# cat /proc/partitions
  23. major minor #blocks name
  24. 8 0 20971520 sda
  25. 8 1 104391 sda1
  26. 8 2 10482412 sda2
  27. 8 3 2096482 sda3
  28. 8 4 987997 sda4
  29. [root@node1 ~]#

1.7 在node2上新增磁盘

  1. [root@node2 ha]# cd
  2. [root@node2 ~]# fdisk -l
  3. Disk /dev/sda: 21.4 GB, 21474836480 bytes
  4. 255 heads, 63 sectors/track, 2610 cylinders
  5. Units = cylinders of 16065 * 512 = 8225280 bytes
  6. Device Boot Start End Blocks Id System
  7. /dev/sda1 * 1 13 104391 83 Linux
  8. /dev/sda2 14 1318 10482412+ 83 Linux
  9. /dev/sda3 1319 1579 2096482+ 82 Linux swap / Solaris
  10. [root@node2 ~]# fdisk /dev/sda
  11. p/n/p//+1000M/p/w
  12. [root@node2 ~]# fdisk -l
  13. Disk /dev/sda: 21.4 GB, 21474836480 bytes
  14. 255 heads, 63 sectors/track, 2610 cylinders
  15. Units = cylinders of 16065 * 512 = 8225280 bytes
  16. Device Boot Start End Blocks Id System
  17. /dev/sda1 * 1 13 104391 83 Linux
  18. /dev/sda2 14 1318 10482412+ 83 Linux
  19. /dev/sda3 1319 1579 2096482+ 82 Linux swap / Solaris
  20. /dev/sda4 1580 1702 987997+ 83 Linux
  21. [root@node2 ~]# partprobe /dev/sda
  22. [root@node2 ~]# cat /proc/partitions
  23. major minor #blocks name
  24. 8 0 20971520 sda
  25. 8 1 104391 sda1
  26. 8 2 10482412 sda2
  27. 8 3 2096482 sda3
  28. 8 4 987997 sda4
  29. [root@node2 ~]#

二、DRBD安装配置步骤

在node1和node2做以下操作:

我下载的软件包是:(我放在/root/ha/下了)

drbd83-8.3.8-1.el5.centos.i386.rpm 

kmod-drbd83-8.3.8-1.el5.centos.i686.rpm

2.1、安装DRBD 套件

  1. [root@node1 ~]# cd ha/
  2. [root@node1 ha]# ls
  3. [root@node1 ha]# yum localinstall -y drbd83-8.3.8-1.el5.centos.i386.rpm kmod-drbd83-8.3.8-1.el5.centos.i686.rpm –nogpgcheck
  4. ...
  5. Installed:
  6. drbd83.i386 0:8.3.8-1.el5.centos kmod-drbd83.i686 0:8.3.8-1.el5.centos
  7. Complete!
  8. [root@node1 ha]# cd
  9. [root@node2 ~]# cd ha/
  10. [root@node2 ha]# ls
  11. [root@node2 ha]# yum localinstall -y drbd83-8.3.8-1.el5.centos.i386.rpm kmod-drbd83-8.3.8-1.el5.centos.i686.rpm –nogpgcheck
  12. ...
  13. Installed:
  14. drbd83.i386 0:8.3.8-1.el5.centos kmod-drbd83.i686 0:8.3.8-1.el5.centos
  15. Complete!
  16. [root@node2 ha]# cd

2.2、加载DRBD 模块

  1. [root@node1 ~]# modprobe drbd
  2. [root@node1 ~]# lsmod |grep drbd
  3. drbd 228528 0
  4. [root@node1 ~]#
  5. [root@node1 ~]# ssh node2 'modprobe drbd'
  6. [root@node1 ~]# ssh node2 'lsmod |grep drbd'
  7. drbd 228528 0
  8. [root@node1 ~]#

2.3、修改配置文件

drbd.conf配置文件DRBD运行时,会读取一个配置文件/etc/drbd.conf.这个文件里描述了DRBD设备与硬盘分区的映射关系
2.3.1 在node1上以下配置

  1. [root@node1 ~]# cp /usr/share/doc/drbd83-8.3.8/drbd.conf /etc/
  2. cp: overwrite `/etc/drbd.conf'? y
  3. [root@node1 ~]# cat /etc/drbd.conf
  4. # You can find an example in /usr/share/doc/drbd.../drbd.conf.example
  5. include "drbd.d/global_common.conf";
  6. include "drbd.d/*.res";
  7. [root@node1 ~]# cd /etc/drbd.d/
  8. [root@node1 drbd.d]# ll
  9. total 4
  10. -rwxr-xr-x 1 root root 1418 Jun 4 2010 global_common.conf
  11. [root@node1 drbd.d]# cp global_common.conf global_common.conf.bak
  12. #修改全局配置文件(说明略)
  13. [root@node1 drbd.d]# vim global_common.conf
  14. global {
  15. usage-count yes;
  16. }
  17. common {
  18. protocol C;
  19. handlers {
  20. 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";
  21. 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";
  22. local-io-error "/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
  23. }
  24. startup {
  25. wfc-timeout 120;
  26. degr-wfc-timeout 100;
  27. }
  28. disk {
  29. on-io-error detach;
  30. }
  31. net {
  32. cram-hmac-alg "sha1";
  33. shared-secret "mydrbd123";
  34. }
  35. syncer {
  36. rate 100M;
  37. }
  38. }
  39. #修改资源配置文件(说明略)
  40. [root@node1 drbd.d]# vim /etc/drbd.d/mysql.res
  41. resource mysql {
  42. on node1.magedu.com {
  43. device /dev/drbd0;
  44. disk /dev/sda4;
  45. address 192.168.101.81:7898;
  46. meta-disk internal;
  47. }
  48. on node2.magedu.com {
  49. device /dev/drbd0;
  50. disk /dev/sda4;
  51. address 192.168.101.82:7898;
  52. meta-disk internal;
  53. }
  54. }

2.3.2 复制配置到node2上:

  1. [root@node1 drbd.d]# scp /etc/drbd.conf node2:/etc/
  2. drbd.conf 100% 133 0.1KB/s 00:00
  3. [root@node1 drbd.d]# scp /etc/drbd.d/* node2:/etc/drbd.d/
  4. global_common.conf 100% 682 0.7KB/s 00:00
  5. global_common.conf.bak 100% 1418 1.4KB/s 00:00
  6. mysql.res 100% 468 0.5KB/s 00:00

2.4、 检测配置文件, 创建nfs 的资源

//分别在node1和node2上初始化定义的mysql的资源 
//检测配置文件(两次执行如下命令)
在node1上:

  1. [root@node1 drbd.d]# drbdadm adjust mysql
  2. --== Thank you for participating in the global usage survey ==--
  3. The server's response is:
  4. 0: Failure: (119) No valid meta-data signature found.
  5. ==> Use 'drbdadm create-md res' to initialize meta-data area. <==
  6. Command 'drbdsetup 0 disk /dev/sda4 /dev/sda4 internal --set-defaults --create-device --on-io-error=detach' terminated with exit code 10
  7. [root@node1 drbd.d]# drbdadm adjust mysql
  8. drbdsetup 0 show:5: delay-probe-volume 0k => 0k out of range [4..1048576]k.
  9. [root@node1 drbd.d]# drbdadm create-md mysql
  10. Writing meta data...
  11. initializing activity log
  12. NOT initialized bitmap
  13. New drbd meta data block successfully created.
  14. [root@node1 drbd.d]# ll /dev/drbd0
  15. brw-r----- 1 root disk 147, 0 Feb 7 20:44 /dev/drbd0
  16. 在node2上:
  17. [root@node2 ~]# drbdadm create-md mysql
  18. --== Thank you for participating in the global usage survey ==--
  19. The server's response is:
  20. Writing meta data...
  21. initializing activity log
  22. NOT initialized bitmap
  23. New drbd meta data block successfully created.
  24. [root@node2 ~]# ll /dev/drbd0
  25. brw-rw---- 1 root root 147, 0 Feb 7 20:47 /dev/drbd0

2.5  启动DRBD服务,查看DRBD状态

  1. [root@node1 drbd.d]# service drbd start
  2. Starting DRBD resources: [
  3. mysql
  4. Found valid meta data in the expected location, 1011703808 bytes into /dev/sda4.
  5. d(mysql) s(mysql) n(mysql) ]......
  6. [root@node2 ~]# service drbd start
  7. Starting DRBD resources: [
  8. mysql
  9. Found valid meta data in the expected location, 1011703808 bytes into /dev/sda4.
  10. d(mysql) s(mysql) n(mysql) ].
  11. [root@node1 drbd.d]# service drbd status
  12. drbd driver loaded OK; device status:
  13. version: 8.3.8 (api:88/proto:86-94)
  14. GIT-hash: d78846e52224fd00562f7c225bcc25b2d422321d build by mockbuild@builder10.centos.org, 2010-06-04 08:04:16
  15. m:res cs ro ds p mounted fstype
  16. 0:mysql Connected Secondary/Secondary Inconsistent/Inconsistent C
  17. [root@node1 drbd.d]# drbd-overview
  18. 0:mysql Connected Secondary/Secondary Inconsistent/Inconsistent C r----
  19. [root@node2 ~]# service drbd status
  20. drbd driver loaded OK; device status:
  21. version: 8.3.8 (api:88/proto:86-94)
  22. GIT-hash: d78846e52224fd00562f7c225bcc25b2d422321d build by mockbuild@builder10.centos.org, 2010-06-04 08:04:16
  23. m:res cs ro ds p mounted fstype
  24. 0:mysql Connected Secondary/Secondary Inconsistent/Inconsistent C
  25. [root@node2 ~]# drbd-overview
  26. 0:mysql Connected Secondary/Secondary Inconsistent/Inconsistent C r----

2.6  设置DRBD的主节点:

从上面的信息中可以看出此时两个节点均处于Secondary状态。于是,我们接下来需要将其中一个节点设置为Primary,这里将node1设置为主节点,故要在node1上执行如下命令:可以看到文件同步过程。

  1. [root@node1 drbd.d]# drbdadm -- --overwrite-data-of-peer primary mysql
  2. [root@node1 drbd.d]# drbd-overview
  3. 0:mysql SyncSource Primary/Secondary UpToDate/Inconsistent C r----
  4. [===>................] sync'ed: 23.6% (761048/987928)K delay_probe: 20
  5. [root@node1 drbd.d]# drbd-overview
  6. 0:mysql SyncSource Primary/Secondary UpToDate/Inconsistent C r----
  7. [========>...........] sync'ed: 47.6% (522296/987928)K delay_probe: 42
  8. [root@node1 drbd.d]#
  9. [root@node1 drbd.d]# drbd-overview
  10. 0:mysql Connected Primary/Secondary UpToDate/UpToDate C r----
  11. [root@node1 drbd.d]#
  12. [root@node1 drbd.d]# cat /proc/drbd
  13. version: 8.3.8 (api:88/proto:86-94)
  14. GIT-hash: d78846e52224fd00562f7c225bcc25b2d422321d build by mockbuild@builder10.centos.org, 2010-06-04 08:04:16
  15. 0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r----
  16. ns:987928 nr:0 dw:0 dr:987928 al:0 bm:61 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
  17. [root@node1 drbd.d]#
  18. [root@node2 ~]# drbd-overview
  19. 0:mysql SyncTarget Secondary/Primary Inconsistent/UpToDate C r----
  20. [=====>..............] sync'ed: 32.7% (670680/987928)K queue_delay: 0.1 ms
  21. [root@node2 ~]# drbd-overview
  22. 0:mysql SyncTarget Secondary/Primary Inconsistent/UpToDate C r----
  23. [===========>........] sync'ed: 61.6% (384536/987928)K queue_delay: 11.6 ms
  24. [root@node2 ~]#
  25. [root@node2 ~]# drbd-overview
  26. 0:mysql Connected Secondary/Primary UpToDate/UpToDate C r----
  27. [root@node2 ~]#
  28. [root@node2 ~]# cat /proc/drbd
  29. version: 8.3.8 (api:88/proto:86-94)
  30. GIT-hash: d78846e52224fd00562f7c225bcc25b2d422321d build by mockbuild@builder10.centos.org, 2010-06-04 08:04:16
  31. 0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r----
  32. ns:0 nr:987928 dw:987928 dr:0 al:0 bm:61 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0

注:Primary/Secondary 说明当前节点为主节点;Secondary/Primary 说明当前节点为从节点。使用:watch -n 1 'cat /proc/drbd'查看同步过程!
2.7 创建文件系统(只可以在primary节点上进行,这里在node1上创建)

  1. [root@node1 drbd.d]# mkfs -t ext3 /dev/drbd0
  2. [root@node1 drbd.d]# mkdir -pv /mnt/mysqldata
  3. mkdir: created directory `/mnt/mysqldata'
  4. [root@node1 drbd.d]# ssh node2 'mkdir -pv /mnt/mysqldata'
  5. mkdir: created directory `/mnt/mysqldata'
  6. [root@node1 drbd.d]# mount /dev/drbd0 /mnt/mysqldata/
  7. [root@node1 drbd.d]#
  8. [root@node1 drbd.d]# cd /mnt/mysqldata/
  9. [root@node1 mysqldata]# ll
  10. total 16
  11. drwx------ 2 root root 16384 Feb 7 21:26 lost+found
  12. [root@node1 mysqldata]# echo "123" >f1
  13. [root@node1 mysqldata]# touch f2
  14. [root@node1 mysqldata]# ll
  15. total 20
  16. -rw-r--r-- 1 root root 4 Feb 7 21:28 f1
  17. -rw-r--r-- 1 root root 0 Feb 7 21:28 f2
  18. drwx------ 2 root root 16384 Feb 7 21:26 lost+found
  19. [root@node1 mysqldata]#

2.8将node2设置为primary节点

  1. [root@node1 mysqldata]# cd
  2. [root@node1 ~]# umount /mnt/mysqldata/
  3. [root@node1 ~]# drbdadm secondary mysql
  4. [root@node1 ~]# drbd-overview
  5. 0:mysql Connected Secondary/Secondary UpToDate/UpToDate C r----
  6. [root@node1 ~]#
  7. 将node2设置为primary节点
  8. [root@node2 ~]# drbd-overview
  9. 0:mysql Connected Secondary/Secondary UpToDate/UpToDate C r----
  10. [root@node2 ~]# drbdadm primary mysql
  11. [root@node2 ~]# drbd-overview
  12. 0:mysql Connected Primary/Secondary UpToDate/UpToDate C r----
  13. [root@node2 ~]# mount /dev/drbd0 /mnt/mysqldata/
  14. [root@node2 ~]# cd /mnt/mysqldata/
  15. [root@node2 mysqldata]# ll
  16. total 20
  17. -rw-r--r-- 1 root root 4 Feb 7 21:28 f1
  18. -rw-r--r-- 1 root root 0 Feb 7 21:28 f2
  19. drwx------ 2 root root 16384 Feb 7 21:26 lost+found

此处看到在node1上创建的文件在这里都显示了,
最后将node2的/mnt/mysqldata/卸载
[root@node2 mysqldata]# cd 
[root@node2 ~]# umount /mnt/mysqldata/

至此DRBD配置成功!!!


转载于:https://blog.51cto.com/qcbetter/960688

mysql服务器的HA集群之corosync+drbd+pacemaker实现 上相关推荐

  1. mysql keepalived主主同步_KEEPALIVED+MYSQL主主同步=MYSQL高可用(HA)集群

    1.这个环境最大的缺陷在于主机写入速度极慢,主键重复. 2.mysql最好采用5.6以上集群版本,5.5以下单线程版本不大适合.博客中的mysql为5.5,实际测试挺差的,换成5.6之后十分完美,请各 ...

  2. OpenStack HA集群3-Pacemake Corosync

    节点间主机名必须能解析 [root@controller1 ~]# cat /etc/hosts 192.168.17.149  controller1 192.168.17.141  control ...

  3. HUE配置文件hue.ini 的database模块详解(包含qlite、mysql、 psql、和oracle)(图文详解)(分HA集群和非HA集群)...

    不多说,直接上干货! Hue配置文件里,提及到,提供有postgresql_psycopg2, mysql, sqlite3 or oracle. 注意:Hue本身用到的是sqlite3. 在哪里呢, ...

  4. corosync+pacemaker实现高可用(HA)集群(二)

    部署方案二(推荐):corosync+pacemaker 利用ansible自动安装corosync和pacemaker 注:关于ansible的具体使用可参见"ansible实现自动化自动 ...

  5. HA集群之三:corosync+pacemaker实现httpd服务的高可用

    一.基础概念 1.集群的组成结构 HA Cluster: Messaging and Infrastructure Layer|Heartbeat Layer 集群信息事务层 Membership L ...

  6. 五分钟带你玩转Zabbix6.0容器化HA集群

    图片 蔡斯 | Zabbix开源社区签约专家 Zabbix资深玩家,SRE高级运维,架构师.精通服务组件监控.模板制作及告警治理. 擅长领域:Zabbix API定制化开发,对接企业蓝鲸,JMS保垒机 ...

  7. 对HA的简单认识以及HA集群删除

    高可用集群HA,英文全称为High Availability,简单来说,集群就是一组计算机,它们作为一个整体向用户提供一组网络资源,这些单个的计算机系统就是集群的节点. 高可用集群的出现就是为了使集群 ...

  8. Linux HA集群

    我们先说一下几个概念: 服务(Service),是HA集群中提供的资源,包括Float IP,共享的存储,apache等等. 成员服务器(Member Server) 也叫节点(Node),是HA中实 ...

  9. Centos 6.4下 MySQL配置主从服务(集群)

    Centos 6.4下 MySQL配置主从服务(集群) 我们前面两篇文章都分别介绍了Mysql的安装及配置.备份及还原,今天我们继续前面的环境介绍一下Centos 6.4下MySQL配置主从实现数据同 ...

最新文章

  1. Linux权限管理(suid euid)
  2. python【力扣LeetCode算法题库】面试题57 - II-和为s的连续正数序列(滑动窗口)
  3. [分享] 数学学术资源站点
  4. JavaSE(二十五)——String与StringBuffer、StringBuilder的区别、创建对象的几种方法、Http和Https的区别
  5. android 相机 全功能,一加7系首个Android 11公测代码暗示了相机应用的诸多功能更新...
  6. 光纤交换机是什么,光纤交换机的作用是什么?
  7. java流换行符方法_java换行符的使用方法
  8. C语言const易错点
  9. LintCode MySQL 1932/1933. 挂科最多的同学 I / II
  10. matlab实现均衡变换,MATLAB如何实现图像增强灰度变换直方图均衡匹配
  11. 走,去抖音上发财!抖音承诺未来一年要帮一千万创作者赚到钱
  12. 阿里巴巴在内蒙古旱区试水物联网灌溉技术,一年省出1.5个西湖 1
  13. 海南关于推荐扬尘监控系统的通知_实时监管!定州对44家混凝土搅拌企业实施远程视频监控...
  14. 数据饕餮,盛夏旋风!天善学院SVIP冰点促最后一波!
  15. dell r620 升级idrac_DELL R630 如何利用IDRAC升级BIOS固件和IDARC
  16. nachos中文教程java_Nachos实验环境搭建
  17. Office Visio 2007 中文版 安装
  18. App UI设计:“看得见”有多重要
  19. 有没有ai绘画教程?什么软件能实现ai绘画?
  20. MATLAB语音端点检测

热门文章

  1. 开发办公APP时间估算
  2. 人文英语学习品牌「友邻优课」携手神策数据 精细化数据分析让每一次互动都有价值
  3. 这 31 条,或给你的数据分析工作一些启发
  4. 程序员如何让自己的工作更上一个台阶
  5. bat常用命令操作符列表
  6. Google API 设计指南 - 前言
  7. 小波说雨燕 第三季 构建 swift UI 之 UI组件集-视图集(一)视图共性 学习笔记...
  8. OC高效率52之理解OC错误模型
  9. [ASM C/C++] C语言数组
  10. Ivan D Jankovic PhD Studentship** Application