PostgreSQL Replication之第七章 理解Linux高可用(5)
7.5 高可用性是所有冗余
让我们从一个不同的角度看一下前面的混合超市的例子。为了处理大量顾客无需长排队,无需关闭超市,混合超市雇用更多的出纳员以及安装许多(甚至更多)的收银机。
这样,如果一个收银机故障,出纳可以简单地把它关机,坐在另一个收银台前等待顾客重新到新的收银机前。顾客不需要等待太长时间,出现故障的收银机可以被修理,混合超市正常运行。这与软件和计算机技术没有一点不同,只有事件(客户程序等待数据)在更短的时间内完成。
这个例子说明,设计一个集群的最重要的方面是在每个可能的系统级别保持冗余以避免单点故障。这是一个网络连接的例子。考虑两个相互远离的数据中心和一个包含两个站点的计算机集群。集群的维护人员已经订购的俩个网络服务提供商来提供它们之间的冗余的网络连接 。然而,如果两个提供商使用的电缆埋在同一沟里,做土方工程的履带拖拉机可以损坏它们的电缆。这实际上是一个单点故障。
让我们看看对于有两台机器的小集群来说冗余意味这什么。
在最小的限度,该系统的所有东西必须有两份:
• 两台服务器
• 两个连接,一个用于公共网络,一个用于两台服务器之间的直接通信
• 用于所有连接的以太网电缆
• 用于所有连接的两个交换机
在我们的例子中,节点有四个以太网接口,每个接口都被连接到一个交换机。两个以太网接口都绑到操作系统级别的一个接口,因此它们有一个公共的IP地址。连接到公共网络的节点使用192.168.0.x IP地址范围,还有一个两个服务器使用192.168.1.x范围的私有的,直接连接。硬件会出现故障,因此,避免单点故障的一种方法是使用bonding把两个简单的以太网接口连接到一个高级的网络接口。当一切都正常工作时,这个特点可以提供较高的吞吐量,但这点真的提供了更高的可靠性。当两台机器之间的一台交换机或者一台服务器内部的一个低级别的以太网接口出现故障,通信仍然有效。
最新文章
- Webform Session Cookies状态保持
- Quartz Spring与Spring Task总结
- 发布在IIS的网站,可以用本机IP登录访问,用localhost不可登录访问
- SDAccel-FPGA将带来至多25倍单位功耗性能提升
- BZOJ-1491 社交网络 FLoyd+乱搞
- Asterisk的配置详解
- jquery如何通过name名称获取当前name的value值
- apache + tomcat 集群
- linux中sed用法
- JavaScript---网络编程(7)-Dom模型(节点间的层次关系,节点的增、删、改)
- Java 设计模式_复合模式(2016-08-31)
- JMETER 不同线程组 变量值 的参数传递
- cpuimage 开源之
- js 30Dom应用
- vue中清除定时器
- TI 多模雷达1843毫米波雷达做自动泊车(用了8个雷达)
- 初始化Weex项目遇到的问题记录
- ELK之nginx日志使用json格式输出
- (转)函数库调用 VS 系统调用
- python3中的mysql数据库操作
热门文章
- ORA-01733: virtual column not allowed here
- 怎样訪问pcie整个4k的配置空间
- MySQL循环语句之while循环测试
- [jzoj 6086] [GDOI2019模拟2019.3.26] 动态半平面交 解题报告 (set+线段树)
- 报表工具Report Builder 3.0的安装
- (转载)ListView与ScrollView冲突的4种解决方案
- (转载)安卓6.0之前的系统 判断app是否有录音权限
- Java中如何解决线程安全问题
- passwd文件
- 创建私有CA, 加密解密基础, PKI, SSL