免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2227 | 回复: 8
打印 上一主题 下一主题

[系统管理] 为什麽很多公司都不用heartbeat,而用keepalived、nginx、lvs [复制链接]

求职 : Linux运维
论坛徽章:
203
拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:182015年亚洲杯之约旦
日期:2015-04-05 20:08:292015年亚洲杯之澳大利亚
日期:2015-04-09 09:25:552015年亚洲杯之约旦
日期:2015-04-10 17:34:102015年亚洲杯之巴勒斯坦
日期:2015-04-10 17:35:342015年亚洲杯之日本
日期:2015-04-16 16:28:552015年亚洲杯纪念徽章
日期:2015-04-27 23:29:17操作系统版块每日发帖之星
日期:2015-06-06 22:20:00操作系统版块每日发帖之星
日期:2015-06-09 22:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-01-13 21:42 |只看该作者 |倒序浏览

前端web一般用lvs或nginx做代理,并加个keepalived做lvs和nginx这两个代理的高可用
然后后端可以多个realserver或者webserver
这里会浪费掉一台代理,因为做高可用,另外一台代理是空闲的而web没有像数据库的脑裂问题,只需要每台机器都用rsync+crontab,同步www网站目录就可以了,各个机器的www网站目录里的文件都是一样的,不会出现a用户上传文件到a服务器,而下次a用户登录系统连接到b服务器发现他上传的文件没有了的问题
另外也可以使用inotify +rsync,不过inotify 有损坏硬盘的问题



而对于数据库mysql而言,heartbeat是不能用的,一般用keepalived
为什麽不能用heartbeat做mysql高可用,我们在铭哥的课上也看到,同一时刻只能一台机器启动服务,备机是不能启动服务的
备机(mysql从库)不能启动服务,那么从库做同步binlog日志呢?

所以一般用keepalived,keepalived只负责漂移vip,不管程序服务例如mysql的启停,但是keepalived有脑裂问题,而heartbeat没有脑裂问题

那有没有完美的方案呢,有,就是DRBD+Heartbeat+MySQL

如果要用heartbeat做mysql高可用也可以,需要加DRBD
DRBD+Heartbeat+MySQL
DRBD相当于共享存储了,因为用的DRBD,所以mysql从库是不需要启动的

不需要购买昂贵的共享存储,只需要搭建DRBD就可以了,而且不会脑裂

论坛徽章:
10
金牛座
日期:2014-09-16 19:02:48技术图书徽章
日期:2015-11-24 01:37:29操作系统版块每日发帖之星
日期:2015-11-18 06:20:002015年亚洲杯之沙特阿拉伯
日期:2015-04-13 17:33:462015年迎新春徽章
日期:2015-03-04 09:51:162015年辞旧岁徽章
日期:2015-03-03 16:54:15午马
日期:2014-12-04 19:33:55白羊座
日期:2014-09-17 19:34:42巨蟹座
日期:2014-09-16 21:09:4815-16赛季CBA联赛之同曦
日期:2016-06-27 23:23:07
2 [报告]
发表于 2016-01-14 00:00 |只看该作者
corosync+heartbeat  自带很多的服务代理,控制较为精细,而且可以使用GUI界面配置HA, 尽管配置过程也有点复杂,但起码图形界面对于新手比较友好.  

keepalived 比较轻量,故障切换快,缺陷是得自己弄脚本来做一些控制或者切换,不太适合新手.

另外,MYSQL 高可用的话,我个人认为DRBD其实并没有什么卵用.DRDB 同一时刻只能一端使用,也就是说,其实还是有一台机器空闲在那里干等着. 不如做集群负载更实在一些,什么MHA,MMM的解决方案更好些.

求职 : Linux运维
论坛徽章:
203
拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:182015年亚洲杯之约旦
日期:2015-04-05 20:08:292015年亚洲杯之澳大利亚
日期:2015-04-09 09:25:552015年亚洲杯之约旦
日期:2015-04-10 17:34:102015年亚洲杯之巴勒斯坦
日期:2015-04-10 17:35:342015年亚洲杯之日本
日期:2015-04-16 16:28:552015年亚洲杯纪念徽章
日期:2015-04-27 23:29:17操作系统版块每日发帖之星
日期:2015-06-06 22:20:00操作系统版块每日发帖之星
日期:2015-06-09 22:20:00
3 [报告]
发表于 2016-01-14 08:28 |只看该作者
@qq58945591
keepalived 就一个脚本文件,网上有很多教程

确实,同一时刻只能一台机使用,浪费了一台机器,本来从库可以分发读请求,现在完全空闲
还是MHA,MMM更好些

求职 : Linux运维
论坛徽章:
203
拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:182015年亚洲杯之约旦
日期:2015-04-05 20:08:292015年亚洲杯之澳大利亚
日期:2015-04-09 09:25:552015年亚洲杯之约旦
日期:2015-04-10 17:34:102015年亚洲杯之巴勒斯坦
日期:2015-04-10 17:35:342015年亚洲杯之日本
日期:2015-04-16 16:28:552015年亚洲杯纪念徽章
日期:2015-04-27 23:29:17操作系统版块每日发帖之星
日期:2015-06-06 22:20:00操作系统版块每日发帖之星
日期:2015-06-09 22:20:00
4 [报告]
发表于 2016-01-14 11:36 |只看该作者
@qq58945591
搜索了一下文章
corosync+heartbeat 是高大上的技术,涉及分布式存储,貌似小公司不会用到,一般keepalived
http://sofar.blog.51cto.com/353572/1429162/
元数据节点上需要额外部署的服务
Corosync + Pacemaker + DRBD

5、系统环境
CentOS 6.3

6、内核版本
kernel-2.6.32.43


7、需要启动的服务
corosync

DRBD源码包:
http://oss.linbit.com/drbd/8.4/drbd-8.4.3.tar.gz

注意:
(1)、内核版本为2.6.32,推荐使用drbd 8.4.3;
(2)、同时从2.6.33内核版本开始,drbd已作为标准组件默认自带。

注意启动顺序:
(1)、启动DRDB服务,即“/etc/init.d/drbd”,同时会动态加载一个DRBD内核模块;
(2)、最后挂载DRBD设备“/dev/drbd0”,推荐放在“/etc/rc.d/rc.local”,不推荐修改“/etc/fstab”。


由于要使用/dev/random生成随机数

论坛徽章:
10
金牛座
日期:2014-09-16 19:02:48技术图书徽章
日期:2015-11-24 01:37:29操作系统版块每日发帖之星
日期:2015-11-18 06:20:002015年亚洲杯之沙特阿拉伯
日期:2015-04-13 17:33:462015年迎新春徽章
日期:2015-03-04 09:51:162015年辞旧岁徽章
日期:2015-03-03 16:54:15午马
日期:2014-12-04 19:33:55白羊座
日期:2014-09-17 19:34:42巨蟹座
日期:2014-09-16 21:09:4815-16赛季CBA联赛之同曦
日期:2016-06-27 23:23:07
5 [报告]
发表于 2016-01-14 12:41 |只看该作者
回复 4# lyhabc


   我不就裝了個逼,至於這樣麼?

论坛徽章:
0
6 [报告]
发表于 2016-12-13 14:46 |只看该作者
请教楼主大人 inotify 有损坏硬盘的问题是个什么情况?还是头一次听说 损坏概率很大吗

求职 : Linux运维
论坛徽章:
203
拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:182015年亚洲杯之约旦
日期:2015-04-05 20:08:292015年亚洲杯之澳大利亚
日期:2015-04-09 09:25:552015年亚洲杯之约旦
日期:2015-04-10 17:34:102015年亚洲杯之巴勒斯坦
日期:2015-04-10 17:35:342015年亚洲杯之日本
日期:2015-04-16 16:28:552015年亚洲杯纪念徽章
日期:2015-04-27 23:29:17操作系统版块每日发帖之星
日期:2015-06-06 22:20:00操作系统版块每日发帖之星
日期:2015-06-09 22:20:00
7 [报告]
发表于 2016-12-13 19:05 |只看该作者
magee_yue 发表于 2016-12-13 14:46
请教楼主大人 inotify 有损坏硬盘的问题是个什么情况?还是头一次听说 损坏概率很大吗

很大

论坛徽章:
223
2022北京冬奥会纪念版徽章
日期:2015-08-10 16:30:32操作系统版块每日发帖之星
日期:2016-05-10 19:22:58操作系统版块每日发帖之星
日期:2016-02-18 06:20:00操作系统版块每日发帖之星
日期:2016-03-01 06:20:00操作系统版块每日发帖之星
日期:2016-03-02 06:20:0015-16赛季CBA联赛之上海
日期:2019-09-20 12:29:3219周年集字徽章-周
日期:2019-10-01 20:47:4815-16赛季CBA联赛之八一
日期:2020-10-23 18:30:5320周年集字徽章-20	
日期:2020-10-28 14:14:2615-16赛季CBA联赛之广夏
日期:2023-02-25 16:26:26CU十四周年纪念徽章
日期:2023-04-13 12:23:10操作系统版块每日发帖之星
日期:2016-05-10 19:22:58
8 [报告]
发表于 2016-12-16 13:48 |只看该作者
Heartbeat底层也是lvs,只是一些封装不同,底层跑的一样的代码


nginx在十来台,二十台服务器的场景,跑起来还是可以的,性能够抗了,配置也很简单
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP