服务容灾

更新日期: 2015-12-12 阅读次数: 7074 分类: 运维

Harry, you cannot claim you are a Facebook engineer if you have never brought the site down!

  • 亲历 Facebook 爆发的 5 年

服务容灾的目标是什么

当单点服务出现故障时,我们可以从容的睡一觉或者吃完饭再处理。

物理层的容灾

  • 去单机
  • 异地部署

分层容灾

经典的三层结构系统

| | 特点 | 请求量 | 常见容灾方案 | | -- | -- | -- | -- | | 接入层 | 透传,无状态 | 大 | LVS, L5, Nginx, HAProxy, DNS | | 应用层 | 可水平拆分为局部状态 | 中 | 1. 增加备机,监控实现自动切换 | | | | | 2. hash 用户标识分服处理 | | | | | 3. 双机互备, 负载均衡 | | 数据层 | 全局状态 | 小 | | |

可选方案

应用层双机互备

Simple is Better

容灾的架构设计不应太复杂,因为部署的人员与设计的人员可能不是同一个人,如果过于复杂,可能会出现部署上的人为失误。

使用 keepalived 实现主备的切换

keepalived 的实现原理,主机和备机都运行 keepalived 后台服务,主机不断发送消息给备机,当备机接收不到时,则认为主机异常,接管主机的虚拟 IP。

参考

领取阿里云/腾讯云服务器优惠券

关于作者

我是来自山东烟台的一名开发者,喜欢瞎折腾,顺便记记笔记。有敢兴趣的话题,欢迎加微信 zhongwei 聊聊, 查看更多联系方式。 白天写程序,晚上哄熊孩子,可能回复有点慢,见谅。同时也欢迎关注我的微信公众号“大象工具”: 大象工具微信公众号

相关文章

爱评论不评论

近期节日

2020年10月31日 世界勤俭日
2020年11月01日 万圣节
2020年11月07日 立冬
2020年11月08日 中国记者日
2020年11月10日 世界青年节
2020年11月11日 光棍节
2020年11月14日 世界糖尿病日
2020年11月17日 国际大学生节
2020年11月20日 国际儿童日
2020年11月21日 世界问候日
2020年11月22日 小雪
2020年11月26日 感恩节
查看更多节日