7.5 高可用性是所有冗余

让我们从一个不同的角度看一下前面的混合超市的例子。为了处理大量顾客无需长排队,无需关闭超市,混合超市雇用更多的出纳员以及安装许多(甚至更多)的收银机。

这样,如果一个收银机故障,出纳可以简单地把它关机,坐在另一个收银台前等待顾客重新到新的收银机前。顾客不需要等待太长时间,出现故障的收银机可以被修理,混合超市正常运行。这与软件和计算机技术没有一点不同,只有事件(客户程序等待数据)在更短的时间内完成。

这个例子说明,设计一个集群的最重要的方面是在每个可能的系统级别保持冗余以避免单点故障。这是一个网络连接的例子。考虑两个相互远离的数据中心和一个包含两个站点的计算机集群。集群的维护人员已经订购的俩个网络服务提供商来提供它们之间的冗余的网络连接 。然而,如果两个提供商使用的电缆埋在同一沟里,做土方工程的履带拖拉机可以损坏它们的电缆。这实际上是一个单点故障。

让我们看看对于有两台机器的小集群来说冗余意味这什么。

在最小的限度,该系统的所有东西必须有两份:

• 两台服务器

• 两个连接,一个用于公共网络,一个用于两台服务器之间的直接通信

• 用于所有连接的以太网电缆

• 用于所有连接的两个交换机

在我们的例子中,节点有四个以太网接口,每个接口都被连接到一个交换机。两个以太网接口都绑到操作系统级别的一个接口,因此它们有一个公共的IP地址。连接到公共网络的节点使用192.168.0.x IP地址范围,还有一个两个服务器使用192.168.1.x范围的私有的,直接连接。硬件会出现故障,因此,避免单点故障的一种方法是使用bonding把两个简单的以太网接口连接到一个高级的网络接口。当一切都正常工作时,这个特点可以提供较高的吞吐量,但这点真的提供了更高的可靠性。当两台机器之间的一台交换机或者一台服务器内部的一个低级别的以太网接口出现故障,通信仍然有效。

PostgreSQL Replication之第七章 理解Linux高可用(5)的更多相关文章

  1. PostgreSQL Replication之第七章 理解Linux高可用(1)

    高可用(HA)是工业长期持续的,不间断的服务.在本章,您将了解高可用软件的历史,概念和实现与PostgreSQL复制和高可用之间的关系. 本章将详细地讲述如下主题: •理解高可用性的目的 •衡量可用性 ...

  2. PostgreSQL Replication之第七章 理解Linux高可用(6)

    7.6 PostgreSQL和高可用性 数据库是我们日常数字生活的一部分,并期望它们快速工作. 您浏览网上论坛吗?那个帖子在数据库中.您看医生吗?您的医疗记录在数据库中.您在网上购物吗?那个货物,您的 ...

  3. PostgreSQL Replication之第七章 理解Linux高可用(3)

    7.3 高可用软件的历史 有大量的专有的和开源的高可用性软件.专有的例子有:Solaris Cluster (有时称为Sun 集群 or SunCluster), SteelEye LifeKeepe ...

  4. PostgreSQL Replication之第七章 理解Linux高可用(2)

    7.2 衡量可用性 可用性是提供商试图保证一定的可用性级别和客户可以期望的可用性或更多.在某些情况下(取决于服务合同) 收取罚款或减少申购费用是意外停机的原因. 可用性的质量使用百分数来衡量:例如,9 ...

  5. PostgreSQL Replication之第七章 理解Linux高可用(4)

    7.4 术语与概念 一组计算机被称为集群.集群内的一台计算机被称为一个节点. 当集群内的节点数量是 N (2,,3,等.) ,那么我们讨论一个N节点的集群. 高可用性软件,传输层和集群管理层都运行于每 ...

  6. PostgreSQL Replication之第三章 理解即时恢复(4)

    3.4 重放事务日志 一旦我们创建了一个我们自己的初始基础备份,我们可以收集数据库创建的XLOG.当时间到时,我们可以使用所有这些XLOG 文件并执行我们所期望的恢复进程.这就像本节描述的一样工作. ...

  7. PostgreSQL Replication之第三章 理解即时恢复(1)

    到现在为止,您已经掌握了一定的理论.因为生活不仅由理论组成(它可能同样重要),是时候深入实际的工作了. 本章的目标是让您明白如何恢复数据到一个给定的时间点.当您的系统崩溃或者有人意外地删除了一个表,不 ...

  8. 《Linux命令行与shell脚本编程大全》 第七章理解Linux文件权限

    Linux沿用了Unix文件权限的方法,允许用户和组根据每个文件和目录的安全性设置来访问文件. 用户权限通过创建用户时分配的用户ID(UID)来跟踪的.每个用户有唯一的ID,但是登录时用的不是UID, ...

  9. PostgreSQL Replication之第三章 理解即时恢复(3)

    3.3 做基础备份 在上一节中,您已经看到,启用归档只需要几行命令,并提供了极大的灵活性.在本节,我们将看到如何创建一个所谓的基础备份,稍后这可以使用XLOG.一个基本备份是一个最初的数据的拷贝. [ ...

随机推荐

  1. class.forName的官方使用方法说明

    原文地址:http://yanwushu.sinaapp.com/class_forname/ 使用jdbc方式链接数据库时会常常看到这句代码:Class.forName(String classNa ...

  2. 单片机: EEPROM和串口通信

    名称:IIC协议 EEPROM24c02 通过串口通信存数读取数据 内容:此程序用于检測EEPROM性能,測试方法例如以下:写入24c02一个数据,然后在内存中改变这些数据. 掉电后主内存将失去这些信 ...

  3. mvc架构的简单登录系统,jsp

    文件结构 三个jsp文件负责前段界面的实现 login.jsp <%@ page language="java" import="java.util.*" ...

  4. ThinkPHP5.0框架开发--第5章 TP5.0 控制器

    ThinkPHP5.0框架开发--第5章 TP5.0 控制器 第5章 TP5.0 控制器 ============================================== 上次复习 1.路 ...

  5. yum 命令讲解

    (一)yum介绍 Yum(全称为 Yellow dogUpdater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指定 ...

  6. mybatis的sql中使用$会出现sql注入示例

    mybatis的sql中使用$会出现sql注入示例: 模拟简单登录场景: 页面代码: function login(){ //sql注入 var user = { username : "' ...

  7. Edge浏览器的几个创意应用

    如果你跟我一样也喜欢书法,并且也有surface.那你可以进入我的网页.我给您准备了中国书法纸.信纸.方格子.对联等模板.满足您打发时间,精心抄佛经.诗歌,练书法等.开启Edge浏览器,开启涂鸦模式, ...

  8. 【原创】关于java中的lock

    看了下java中高性能锁Lock,其中有如下: ReentrantLock:独占锁,类似于synchronized,不过锁的粒度更小 ReadWriteLock(ReentrantReadWriteL ...

  9. 通过curl获取网页访问时间

    curl -w %{time_namelookup}:%{time_connect}:%{time_starttransfer}:%{time_total}:%{speed_download}&quo ...

  10. 在远程X server上显示图形的设置方法

    1.在服务器的/etc/ssh/sshd_config中,设置X11Forwarding yes,然后重启ssh服务,cd /etc/init.d这个目录下执行 ./ssh restart 2.在客户 ...