最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

heartbeat+drbd+mysql的高可用性

来源:动视网 责编:小OO 时间:2025-09-29 18:26:44
文档

heartbeat+drbd+mysql的高可用性

一、安装heartbeat和drbd主机名修改之后最好重启一下查看主机server1和server2的IP:配置两台主机的hosts文件:yum这个命令要root用户才有权限配置drbd一般只需要添加红色字体部分global{usage-countyes;}common{handlers{pri-on-incon-degr"/usr/lib/drbd/notify-pri-on-incon-degr.sh;/usr/lib/drbd/notify-emergency-reboot.sh;ech
推荐度:
导读一、安装heartbeat和drbd主机名修改之后最好重启一下查看主机server1和server2的IP:配置两台主机的hosts文件:yum这个命令要root用户才有权限配置drbd一般只需要添加红色字体部分global{usage-countyes;}common{handlers{pri-on-incon-degr"/usr/lib/drbd/notify-pri-on-incon-degr.sh;/usr/lib/drbd/notify-emergency-reboot.sh;ech
一、安装 heartbeat 和 drbd

主机名修改之后最好重启一下

查看主机 server1 和 server2 的IP:

配置两台主机的 hosts 文件:

yum 这个命令要 root 用户才有权限

配置 drbd

一般只需要添加红色字体部分

global {

    usage-count yes;

}

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 {

    }

    options {

    }

    disk {

    }

    net {

        protocol C;

    }

}

resource r0 {

  on server1 {

    device    /dev/drbd1;

    disk      /dev/sda2;

    address   192.168.1.123:77;  # 主机 server1 的ip

    meta-disk internal;

  }

  on server2 {

    device    /dev/drbd1;

    disk      /dev/sda2;

    address   192.168.1.129:77;  # 主机 server2 的ip

    meta-disk internal;

  }

}

Drbd 管理:

两台主机启动 drbd

两台主机查看 drbd 状态:

设置 server1 为主节点,并格式化和挂载目录

配置 heartbeat

主要有三个配置文件:

ha.cf        主配置文件

haresource    资源管理文件

authkeys    心跳加密文件

配置主机其中一张网卡的静态IP:

配置 ha.cf

debugfile /var/log/ha-debug        //调试日志位置

logfacility    local0            

keepalive 2                //2秒检测一次心跳连接

deadtime 30                //多长时间检测不到主服务器心跳为有问题,不要设置太低

warntime 10                //警告时间(最好在2-10秒)

initdead 120                //初始化启动时,120秒内无链接为正常

udpport    694                //使用udp 694做为bcast/ucast通讯端口

ucast eth3 10.0.0.201        //单播方式连接,eth1是本身对应的心跳网卡 主从都写对方的心跳ip

auto_failback on            //开启自动切换,主服恢复后,自动切换回来

node    server1                //申明主服,注意是uname -n的完全限定域名

node    server2                //申明备服,注意是uname -n的完全限定域名

ping  192.168.1.254        // ping 的是网关

crm    respawn

apiauth    mgmtd    uid=hacluster

respawn    root    /usr/lib/heartbeat/mgmtd -v

配置 authkeys

auth 1

1 crc

chmod 600 authkeys 命令设置 authkeys 权限 (authkeys 的权限一定要设置,不然日志报错)

配置 haresources

注:该文件内IPaddr,Filesystem等脚本存放路径在/etc/ha.d/resource.d/下,也可在该目录下存放服务启动脚本(例如:mysqld),将相同脚本名称添到/etc/ha.d/haresources内容中,从而跟随heartbeat启动而启动该脚本。

IPaddr::192.168.1.100/24/eth2:用IPaddr脚本配置浮动VIP

drbddisk::r0:用drbddisk脚本实现DRBD主从节点资源组的挂载和卸载

Filesystem::/dev/drbd0::/data::ext4:用Filesystem脚本实现磁盘挂载和卸载

二、安装 MYSQL

以下方法是解决上上面报错问题的方法:

登录 mysql 

注意:@ 左边是用户名,右边是域名、IP或%,表示可以访问 mysql 的域名和IP,% 表示外部任何地址都能访问。

修改 mysql 的默认引擎为 InnoDB

停止 mysql,命令 service mysqld stop

编辑 my.cnf

配置好heartbeat之后,因为主heartbeat启动的时候会挂载drdb文件系统以及启动mysql,切换的时候会将主上的mysql停止并卸载文件系统,从上会挂载文件系统,并启动mysql。因此需要做如下操作(两台服务器):

到这里heartbeat+drbd+mysql高可用环境就搭建结束了。接下来进行测试。

高可用测试:

启动 server1 主机上的 mysql

查看 data 目录发现只有存放数据的 mysqldata 目录

启动 drbd (两台服务器):

查看 drbd 的状态:

设置 server1 为主机,并挂载

启动 heartbeat(两台服务器):

查看非心跳网卡的IP:

可以看见虚拟ip 192.168.1.100已经存在了。说明成功了。我们看看heartbeat的日志就能发现。

先看看两台服务器的状态:

可以看见挂载在server1服务器。

测试方法:

1.停掉master上的mysqld,看看是否切换(因为heartheat不检查服务的可用性,因此需要通过而外的脚本来实现)。

2.停掉master的heartheat看看是否能正常切换。 

3.停掉master的网络或者直接将master系统shutdown,看看能否正常切换。 

4.启动master的heartbeat看看是否能正常切换回来。 

5.重新启动master看看能否切换过程是否OK。 

注意:这里说的切换是不是已经将mysql停掉、是否卸载了文件系统等等。

我就停止server1上的heartbeat来测试是否会自动切换,这里除了第一条无法实现,其他的都可以切换:

可以看见已经切换了,我们看 server2的情况:

查看 server2 的ip 和 浮动IP:

查看日志,查看发生的情况:

对于mysqld服务挂掉的情况无法实现自动切换,所以需要一个脚本来帮助我们完成,我这里有个简单的脚本,能实现当mysqld服务不可用时进行自动切换,当进行切换时发送邮件等。该脚本放在主服务器执行,也就是运行mysqld服务的服务器上执行。

脚本存在灵活性所以不建议使用脚本(可以直接跳过这一段,阅读下面的 HA 图形界面的安装和配置部分):

Mysqlmon.sh 的内容如下:

#!/bin/bashtrap 'echo  PROGRAM INTERRUPTED; exit 1'  INTusername=rootpassword=123456n=0log='/var/log/mysqlmon.log'

while true

do    if /usr/local/mysql/bin/mysql  -u${username} -p${password} -e "use test" >&/dev/null;    then        echo "`date +"%Y-%m-%d  %H:%M:%S"`  mysqld is alive!" >> ${log} n=0    else        echo  "`date +"%Y-%m-%d  %H:%M:%S"`  mysqld  cannot be  connected!" >> ${log} n=$[n + 1]        if [ $n -eq 3 ];        then            /etc/init.d/heartbeat stop            echo  "`date +"%Y-%m-%d  %H:%M:%S"`  mysqld  switched to backup!" >> ${log} echo "`date +"%Y-%m-%d  %H:%M:%S"`  mysqld  switched to backup" | mutt -s "mysqld switched to backup" saltstack@163.com            break        fi    fi    sleep 10

done

说明:mysql 编译安装的路径和yum 命令安装mysql的路径是不一样的,所以 /usr/local/mysql/bin/mysql 根据安装方式的不一样具体修改

Mutt 是发送邮件命令,通过 rpm -qa | grep -e mutt 查看 mutt 是否安装,如果没有安装,那么需要安装

通过 nohup mysqlmon.sh & 挂在后台执行,但是报错如下:

分析和解决办法:

因为操作系统是windows,在windows下编辑的脚本,所以有可能有不可见字符。从你的脚本及报告的错误看来, 很有可能是你的脚本文件是DOS格式的, 即每一行的行尾以\\r\\n来标识, 其ASCII码分别是0x0D, 0x0A.

可以有很多种办法看这个文件是DOS格式的还是UNIX格式的, 还是MAC格式的

(1). vi filename

然后用命令

:set ff?

可以看到dos或unix的字样. 如果的确是dos格式的, 那么你可以用set ff=unix把它强制为unix格式的, 然后存盘退出. 再运行一遍看.ok了。

希望遇到类似问题的同学能够如此解决。

解决方法:

打开 mysqlmon.sh 

打开之后按一下键盘上 Esc 键,随后输入 :set ff? 回车

将文件格式转换为 unix 之后需要修改 mysqlmon.sh 文件的权限

重新将 mysqlmon.sh 挂在后台执行,执行的时候 mysqlmon.sh 最好是绝对路径:

另外一个脚本:

#!/bin/sh

cat << EOF

+-----------------------------------------------------------------------------+

|                      === Welcome to LinuxTone===                          |

|---------------------[url]http://www.linuxtone.org[/url]-------------------------|

+-------------------------------By:hamgua--------------------------------+

EOF

MYPORT=`netstat -na|grep "tcp"|grep "3306"|awk -F[:" "]+ '{print $5}'`

HAPORT=`netstat -na|grep "udp"|grep "694"|awk -F[:" "]+ '{print $5}'`

PING=`ping -c 5 www.linuxtone.org|awk -F, '/packets/{print $3}'|cut -c 2-|awk '{print $1}'`

DB1IP=`ifconfig eth0|awk '/inet/{print $2}'|cut -c 6-`

#DB2IP is your next mysqlserver and haserver IP,According to it own IP to fill

log='/var/log/mysqlmon.log'

while [ "$PING" != "100\\%" ]

do

    if [ "$MYPORT" == "3306"];then

     if [ "$HAPORT" == "694" ];then

        echo "$DB1IP mysql and ha is running......"

     else

         echo "$DB1IP mysql is running,but ha is down,start ha now"

         /etc/init.d/heartbeat start

    if [ "$HAPORT" == "694"];then

      echo "$DB1IP ha start successful,mysql and ha all running......"

    else

echo "$DB1IP ha is down,let (DB2IP) to take over mysql,please start ha now!" > ${log}

      fi

     fi

  else

     if [ "$HAPORT" == "694" ];then

echo "$DB1IP mysql is down,but ha is runing,now shutdown ha,let (DB2IP) to take over mysql,then restart mysql....." > ${log}

         /etc/init.d/heartbeat stop

         /etc/init.d/mysqld start

        if [ "$MYPORT" == "3306"];then

         /etc/init.d/heartbeat start

     echo "$DB1IP$mysql restart successful,now mysql and ha all running......"

        fi

     else

         echo "$DB1IPmysql and ha all down,first restart msyql,when mysql is run,restart ha"

         /etc/init.d/mysqld start

        if [ "$MYPORT" == "3306"];then

             /etc/init.d/heartbeat start

          if [ "$HAPORT" == "694" ];then

            echo "$DB1IPmysql and ha all running......"

          else

echo "$DB1IPmysql is running,ha is down,please restart ha" > ${log}

          fi

    else

echo "$DB1IPmysql and ha all down,let (DB2IP) to take over mysql,please restart mysql" > ${log}

        fi

     fi

   fi

sleep 10

done

要在 /etc/sysconfig/iptables 文件中添加如下内容:

-A  INPUT  -m  state  --state  NEW  -m  tcp  -p  tcp  --dport  3306  -j  ACCEPT

-A  INPUT  -p  udp  -m  --udp  --dport  694  -d  10.0.0.201  -j  ACCEPT

在 server1 上将 mysqlmon.sh 挂在后台执行:

三、安装、配置 HA-GUI :

网上下载 pacemaker-mgmt-master.zip ,下载路径如下:

https://github.com/ClusterLabs/pacemaker-mgmt 如下图所示:

下载下来的 zip 包不要放置在挂载的网络磁盘上,要将它放置在主机本身的磁盘上,我是将磁盘拷贝在 home/用户名目录/Downloads 目录下

使用 unzip 命令解压 zip 包:

然后通过 cd 命令打开解压的文件

编译安装:

第一步:

./ConfigureMe configure

有可能会报错,错误如下:

那么需要安装一下依赖包:

yum install perl-TimeDate OpenIPMI-libs lm_sensors libxslt libibverbs librdmacm pkgconfig libtool intltool gettext-devel glib2-devel python-devel libxml2-devel pam-devel ncurses-devel pygtk2  libtool-ltdl libqb clusterlib libtool-ltdl-devel swig gnutls-devel -y

第二部编译:

Make

第三步安装:

Make install

打开 ha 的图形界面

用命令 ha_gui & 打开图形界面

如果 IP(主机名)、用户名、密码 都是正确的,但是不可以连接,那么可能是主机上的 pacemaker 或者 corosync 没有启动(因为我这里将 pacemaker 作为 corosync 的插件使用,所以只需要启动 corosync 即可),启动 corosync:

登录后的默认界面:

关闭 STONITH 支持

默认的情况下pacemaker中启用了stonith,但是我们实际部署集群时可能一般都不会用到stonith资源。当启用了stonith而集群中又没有stonith资源时,集群中的资源都是无法启动的。在启动资源时会报错:

引用

Jul 15 02:01:19 drbd1 mgmtd: [25127]: ERROR: unpack_resources: Resource start-up disabled since no STONITH resources have been defined

Jul 15 02:01:19 drbd1 mgmtd: [25127]: ERROR: unpack_resources: Either configure some or disable STONITH with the stonith-enabled option

Jul 15 02:01:19 drbd1 mgmtd: [25127]: ERROR: unpack_resources: NOTE: Clusters with shared data need STONITH to ensure data integrity

解决办法,就是把stonith-enabled选项禁用。

有如下两种方式:

a、crm shell 方式

在pacemaker 包中提供crm shell 方式。

其中,crm 是一个非常友好的,同时支持交互和非交互两种模式的集成命令;此外,还有一些按功能划分的命令,例如:crm_mon、crm_resource、cibadmin等(可参考heartbeat 2.x)。

下面两条命令都能关闭STONITH:

# crm_attribute -t crm_config -n stonith-enabled -v false

# crm configure property stonith-enabled="false"

若要进入crm 的交互模式,可直接运行crm 即可:

引用

# crm

crm(live)#

在该环境下,敲入help 可获取帮助信息。敲入对应的命令,可进入下一层菜单,用cd、或end、up都可以返回上一层,exit 退出。

※ 注意,的管理命令及非交互模式下的crm,在输入命令后会马上生效;而交互默认下的crm,必须手动用commit 命令提交后,配置才能生效。因crm 使用方便,在管理时经常使用。

b、hb_gui 方式

这是在Xwin下面的GUI 管理方式,从heartbeat 2.x就已经提供。在heartbeat 3中必须安装pacemaker-mgmt和pacemaker-mgmt-client才能用到,并且,需要在ha.cf中打开mgmtd 支持。

以关闭STONITH为例,可在下面的窗口中修改:

在pacemaker-mgmt 提供了新的管理界面,并且可以跨机器登陆管理。远程管理时,必须使用远端机器上的hacluster用户,或属于haclinet组的管理账号(heartbeat 2.x 只能在本机127.0.0.1上登陆管理)。另外,若当前连接的是本地,而手动把heartbeat 服务关闭时,hb_gui 会通过相同的用户名和密码尝试连接到集群节点中的其他机器上,继续追踪集群状态。

hb_gui 的设定,在点击“应用”或“确认”后会马上生效。

4、使用pacemaker进行配置(图形界面运用不熟,所以最后选择的是CRM命令的方式配置)

1、清空旧的配置文件

执行:

# crm configure erase

或者以crm 交互方式提交:

引用

# crm

crm(live)# configure

crm(live)configure# erase

crm(live)configure# commit

crm(live)configure# exit

bye

2、关闭 quorum

pacemaker中有quorum的概念,即集群中必须有一半的节点处于online的状态,则集群被认为是have quorum(可以认为是达到合法节点数要求)。如果少于一半的节点在线,那么pacemaker认为集群达不到节点数要求,从而拒绝启动集群中的资源。但是这种策略对于2个节点的集群明显是不合理的,所以就会发生当2个节点的集群其中一个节点失效时所有的集群都无法启动的情况。

同样的,也关闭STONITH,执行:

# crm configure property no-quorum-policy=ignore

# crm configure property stonith-enabled="false"

3、配置 vip 、drbd、 mysql、 配置共享存储等

(1)、配置虚拟 ip (浮动ip)

crm configure primitive myip ocf:heartbeat:IPaddr params ip="192.168.1.100" nic="eth0" cidr_netmask="24"  op monitor interval=20s timeout=30s

表示定义一个主资源 myip, ocf:heartbeat:IPaddr表示资源代理的类型为ocf,提供者是heartbeat,具体的代理为IPaddr,params表示代理IPaddr的参数为ip="192.168.0.100" nic="eth0" cidr_netmask="24"等,op表示对此资源的操作,有monitor、start、stop、status等。interval表示每隔20s对资源的健康状态进行一次检查,如果检测不成功,30s后就超时了。

(2)、配置 mysqld 服务

使用LSB方式

 crm configure primitive mysql lsb:mysql op monitor interval="20s" timeout="30s"  op start interval="0" timeout="180s"  op stop interval="0" timeout="240s"

使用OCF方式(推荐使用)

crm configure primitive mysql ocf:heartbeat:mysql params binary="/usr/local/mysql/bin/mysqld_safe" config="/etc/my.cnf" user="mysql" group="mysql" log="/var/lib/mysql/mysql_error.log" pid="/var/lib/mysql/mysql.pid" socket="/var/lib/mysql/mysql.sock" datadir="/drbd/data" op monitor interval="60s" timeout="60s" op start timeout="180s" op stop timeout="240s"

(3)、配置共享存储

crm configure primitive fs ocf:heartbeat:Filesystemparams device="/dev/drbd1" directory="/drbd" fstype="ext4" op start interval=0 timeout=60s op stop interval=0 timeout=60s meta target-role=Started

(4)、配置 DRBD 资源

crm configure primitive drbd_r0 ocf:linbit:drbd params drbd_resource="r0" op monitor interval="15s" op start timeout="240s" op stop timeout="100s"

(5)、配置 DRBD 资源主从关系(定义中只有一个 Master 节点)

crm configure ms ms_drbd_mysql drbd_r0 meta master-max=1 master-node-max=1 clone-max=2 clone-node-max=1 notify=true

(6)、组资源和约束

说明:通过 “组” 确保 DRBD、MySQL和VIP 是在同一个节点(Master) 并且确定资源的启动/停止顺序。

启动: fs -->myip -->mysql

停止: mysql -->myip -->fs

crm configure group mysqlservice fs myip mysql

组 mysqlservice 永远只在 Master 节点:

crm configure colocation fs_with_drbd_r0 inf: mysqlservice ms_drbd_mysql:Master

MySQL 的启动永远是在 DRBD Master 之后:

-----第一种写法:

crm configure order o_drbd_before_mysql inf: ms_drbd_mysql:promote g_mysql:start

-----第二种写法:

crm configure order fs_after_drbd inf: ms_drbd_mysql:promote fs:start

crm configure order mysql_after_fs inf: fs:start mysql:start

查看配置(与以上的配置有一点的差别,但是没有问题)

以下是配置的有效内容:

查看集群状态:

Failover 测试:

将 server2 主机设置为 Standby 状态:

将 server2 恢复 online 状态:

“断网”即停止Master服务

避免因”断网”而发生”split brain”(“裂脑”)

利用Pacemaker去ping一个的网络(比如网络路由),当发现主机网络断网(被隔离)的时候,即阻止该主机为DRBD master.

[root@centos1 ~]# crm configurecrm(live)configure# primitive p_ping ocf:pacemaker:ping params name="ping" multiplier="1000" host_list="192.168.1.1" op monitor interval="15s" timeout="60s" op start interval="0" timeout="60s"

op stop interval="0" timeout="120s"

由于两台主机需要运行ping去检查他们的网络连接,需要创建一个clone (cl_ping),让ping资源可以运行在集群所有的主机上.

crm(live)configure# clone cl_ping p_ping meta interleave="true"

告诉Pacemaker如何处理ping的结果:

crm(live)configure# location l_drbd_master_on_ping ms_drbd_mysql rule $role="Master"  -inf: not_defined ping or ping number:lte 0

上面的例子表示:当主机没有ping的服务或是无法ping通至少一个节点的时候,就为该主机设置一个偏好分数(preference score)为负无穷大 (-inf),

从而让location约束(l_drbd_master_on_ping)控制DRBD master的资源地址.

验证和提交配置:

crm(live)configure# verifyWARNING: p_drbd_mysql: action monitor not advertised in meta-data, it may not be supported by the RAcrm(live)configure# commitcrm(live)configure# quit

检查 ping 服务是否已经在运行:

断网测试

- 在当前Master停止网络服务:

说明:通过以上断网实验发现并没有到达理想效果,之前的配置有待研究

停止 Masters 上的 mysql 服务:

说明: pacemkaer 能够对主机上出了故障的服务进行健康检查,并且重新启动

从”Split-Brain”中恢复

DRBD的Active/Standby架构设计的两主机的数据因为某些原因也可能发生不一致.假如这种情况发生的话,

DRBD两主机之间将会中断连接(可以通过/etc/init.d/drbd status或drbd-overview查看他们的关系状态).

如果查看日志(/var/log/messages)确定造成DRBD连接中断的原因是”Split-Brain”的话,那么就需要找出/确定拥有正确的数据的主机,然后让DRBD重新同步数据.

- 查看DRBD主机状态及查看日志:

[root@centos1 ~]# cat /proc/drbd version: 8.4.2 (api:1/proto:86-101)GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@BuildR6, 2012-09-06 08:16:10 0: cs:StandAlone ro:Primary/Unknown ds:UpToDate/DUnknown   r-----    ns:32948 nr:0 dw:4 dr:34009 al:1 bm:9 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0[root@centos1 ~]# cat /var/log/messages | grep Split-BrainMar 14 21:11:48 node1 kernel: block drbd0: Split-Brain detected but unresolved, dropping connection!

[root@centos193 drbd.d]# cat /proc/drbd version: 8.4.2 (api:1/proto:86-101)GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@BuildR6, 2012-09-06 08:16:10 0: cs:WFConnection ro:Secondary/Unknown ds:UpToDate/DUnknown C r-----    ns:0 nr:32948 dw:32948 dr:0 al:0 bm:9 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

- 手动解决”Split-Brain”:

这里找到的”好数据”数据的主机为centos1.出现”坏数据”的主机为centos193.

在”坏数据”主机centos193上:

[root@centos193 ~]# drbdadm disconnect dbcluster[root@centos193 ~]# cat /proc/drbd version: 8.4.2 (api:1/proto:86-101)GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@BuildR6, 2012-09-06 08:16:10 0: cs:StandAlone ro:Secondary/Unknown ds:UpToDate/DUnknown   r-----    ns:0 nr:32948 dw:32948 dr:0 al:0 bm:9 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0[root@centos193 ~]# drbdadm secondary dbcluster[root@centos193 ~]# drbdadm connect --discard-my-data dbcluster

在”好数据”的主机centos1上(如果下面的cs:状态为WFConnection,则无需下面操作.)

[root@centos1 ~]# cat /proc/drbd version: 8.4.2 (api:1/proto:86-101)GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@BuildR6, 2012-09-06 08:16:10 0: cs:StandAlone ro:Primary/Unknown ds:UpToDate/DUnknown   r-----    ns:32948 nr:0 dw:4 dr:34009 al:1 bm:9 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0[root@centos1 ~]# drbdadm connect dbcluster[root@centos1 ~]# /etc/init.d/drbd statusdrbd driver loaded OK; device status:version: 8.4.2 (api:1/proto:86-101)GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by dag@BuildR6, 2012-09-06 08:16:10m:res        cs         ro                 ds                 p  mounted              fstype0:dbcluster  Connected  Primary/Secondary  UpToDate/UpToDate  C  /var/lib/mysql_drbd  ext4

文档

heartbeat+drbd+mysql的高可用性

一、安装heartbeat和drbd主机名修改之后最好重启一下查看主机server1和server2的IP:配置两台主机的hosts文件:yum这个命令要root用户才有权限配置drbd一般只需要添加红色字体部分global{usage-countyes;}common{handlers{pri-on-incon-degr"/usr/lib/drbd/notify-pri-on-incon-degr.sh;/usr/lib/drbd/notify-emergency-reboot.sh;ech
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top