设为首页 收藏本站
查看: 1810|回复: 6

[经验分享] 使用heartbeat实现DRBD主从自动切换

[复制链接]

尚未签到

发表于 2012-6-27 12:28:23 | 显示全部楼层 |阅读模式
这里简单介绍一下heartbeatdrbd
如果主服务器宕机,造成的损失是不可估量的。要保证主服务器不间断服务,就需要对服务器实现冗余。在众多的实现服务器冗余的解决方案中,heartbeat为我们提供了廉价的、可伸缩的高可用集群方案。我们通过heartbeat+drbd在Linux下创建一个高可用(HA)的集群服务器。
DRBD是一种块设备,可以被用于高可用(HA)之中。它类似于一个网络RAID-1功能。当你将数据写入本地文件系统时,数据还将会被发送到网络中另一台主机上。以相同的形式记录在一个文件系统中。本地(主节点)与远程主机(备节点)的数据可以保证实时同步。当本地系统出现故障时,远程主机上还会保留有一份相同的数据,可以继续使用。在高可用(HA)中使用DRBD功能,可以代替使用一个共享盘阵。因为数据同时存在于本地主机和远程主机上。切换时,远程主机只要使用它上面的那份备份数据,就可以继续进行服务了。
下面我们部署这一高可用。首先安装heartbeat,执行yum install heartbeat即可,不建议编译安装heartbeat,因为安装时间特长,容易出问题;接着安装drbd,安装方法见:http://www.centos.bz/2012/02/drbd-compile-install-deploy/,唯一不同的是在./configure命令中添加–with-heartbeat,安装完成后会在/usr/local/drbd/etc/ha.d/resource.d生成drbddisk和drbdupper文件,把这两个文件复制到/usr/local/heartbeat/etc/ha.d/resource.d目录,命令cp -R /usr/local/drbd/etc/ha.d/resource.d/* /etc/ha.d/resource.d。
我们的主机ip是192.168.79.130,备机ip:192.168.79.131,虚拟ip:192.168.79.135,drbd同步的分区/dev/sdb1,挂载的目录/data。
drbd配置1、首先对/dev/sdb分区出/dev/sdb1,建立目录/data。
2、配置global和resource。
配置drbd.conf:
  • vi /usr/local/drbd/etc/drbd.conf

写入:
  • include "drbd.d/global_common.conf";
  • include "drbd.d/*.res";

配置global_common.conf
  • vi /usr/local/drbd/etc/drbd.d/global_common.conf

写入:
  • global {
  •   usage-count yes;
  • }
  • common {
  •   net {
  •     protocol C;
  •   }
  • }

配置r0资源:
  • vi /usr/local/drbd/etc/drbd.d/r0.res

写入:
  • resource r0 {
  •   on node1 {
  •     device    /dev/drbd1;
  •     disk      /dev/sdb1;
  •     address   192.168.79.130:7789;
  •     meta-disk internal;
  •   }
  •   on node2 {
  •     device    /dev/drbd1;
  •     disk      /dev/sdb1;
  •     address   192.168.79.131:7789;
  •     meta-disk internal;
  •   }
  • }

3、设置hostname。
  • vi /etc/sysconfig/network

修改HOSTNAME为node1
编辑hosts
  • vi /etc/hosts

添加:
  • 192.168.79.130 node1
  • 192.168.79.131 node2

使node1 hostnmae临时生效
  • hostname node1

node2设置类似。
4、设置resource
以下操作需要在node1和node2操作。
  • modprobe drbd //载入 drbd 模块
  • dd if=/dev/zero of=/dev/sdb1 bs=1M count=100 /把一些资料塞到 sdb 內 (否则 create-md 时有可能会出现错误)
  • drbdadm create-md r0                             //建立 drbd resource
  • drbdadm up r0                                  //启动 resource r0

5、设置Primary Node
以下操作仅在node1执行。
设置node1为primary node:
  • drbdadm primary --force r0

6、创建DRBD文件系统
以下操作仅在node1执行。
上面已经完成了/dev/drbd1的初始化,现在来把/dev/drbd1格式化成ext3格式的文件系统。
  • mkfs.ext3 /dev/drbd1

然后将/dev/drbd1挂载到之前创建的/data目录。
  • mount /dev/drbd1 /data

heartbeat配置总共有三个文件需要配置:
ha.cf                监控配置文件
haresources        资源管理文件
authkeys             心跳线连接加密文件
1、同步两台节点的时间
  • rm -rf /etc/localtime
  • \cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  • yum install -y ntp
  • ntpdate -d cn.pool.ntp.org

2、配置ha.cf
  • vi /etc/ha.d/ha.cf

  • debugfile /var/log/ha-debug                             #打开错误日志报告
  • keepalive 2                                             #两秒检测一次心跳线连接
  • deadtime 10                                             #10 秒测试不到主服务器心跳线为有问题出现
  • warntime 6                                              #警告时间(最好在 2 ~ 10 之间)
  • initdead 120                                            #初始化启动时 120 秒无连接视为正常,或指定heartbeat
  •                                                         #在启动时,需要等待120秒才去启动任何资源。
  • udpport 694                                             #用 udp 的 694 端口连接
  • ucast eth0 192.168.79.131                                #单播方式连接(主从都写对方的 ip 进行连接)
  • node   node1                                           #声明主服(注意是主机名uname -n不是域名)
  • node   node2                                           #声明备服(注意是主机名uname -n不是域名)
  • auto_failback on                                        #自动切换(主服恢复后可自动切换回来)这个不要开启
  • respawn hacluster /usr/lib/heartbeat/ipfail           #监控ipfail进程是否挂掉,如果挂掉就重启它

3、配置authkeys
  • vi /etc/ha.d/authkeys

写入:
  • auth 1
  • 1 crc

4、配置haresources
  • vi /etc/ha.d/haresources

写入:
  • node1 IPaddr::192.168.79.135/24/eth0 drbddisk::r0 Filesystem::/dev/drbd1::/data::ext3

node1:master主机名
IPaddr::192.168.79.135/24/eth0:设置虚拟IP
drbddisk::r0:管理资源r0
Filesystem::/dev/drbd1::/data::ext3:执行mount与unmout操作
node2配置基本相同,不同的是ha.cf中的192.168.79.131改为192.168.79.130。
DRBD主从自动切换测试首先先在node1启动heartbeat,接着在node2启动,这时,node1等node2完全启动后,相继执行设置虚拟IP,启动drbd并设置primary,并挂载/dev/drbd1到/data目录,启动命令为:
  • service heartbeat start

这时,我们执行ip a命令,发现多了一个IP 192.168.79.135,这个就是虚拟IP,cat /proc/drbd查看drbd状态,显示primary/secondary状态,df -h显示/dev/drbd1已经挂载到/data目录。
然后我们来测试故障自动切换,停止node1的heartbeat服务或者断开网络连接,几秒后到node2查看状态。
接着恢复node1的heartbeat服务或者网络连接,查看其状态。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-322-1-1.html 上篇帖子: 没有了 下篇帖子: heartbeat配置文件ha.cf haresources authkeys详解

尚未签到

发表于 2013-3-13 14:19:17 | 显示全部楼层
我是个凑数的。。。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-15 21:34:59 | 显示全部楼层
好好 学习了 确实不错

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-16 14:15:59 | 显示全部楼层
读书读到抽筋处,文思方能如尿崩!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

发表于 2013-5-17 08:55:20 | 显示全部楼层
不知该说些什么。。。。。。就是谢谢

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-17 23:30:38 | 显示全部楼层
所有刻骨铭心的爱都灵魂游离于床上的瞬间!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-18 17:13:35 | 显示全部楼层
所有刻骨铭心的爱都灵魂游离于床上的瞬间!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表