PostgreSQL Replication之第七章 理解Linux高可用(3)
7.3 高可用软件的历史
有大量的专有的和开源的高可用性软件。专有的例子有:Solaris Cluster (有时称为Sun 集群 or SunCluster), SteelEye LifeKeeper, Evidian SafeKit, 和其它软件。我们不在本书中说它们。集群软件通常包含两个不同的层次:传输层和集群管理层。管理层负责在集群节点上启动和关闭服务。服务和健康信息通过传输层传输。
最初,有两个广为人知的开源高可用性软件,叫做OpenAIS and Linux-HA。这些都是互不兼容并且都有自己的优点和缺点的软件。后来,两个开发人员社区联手,在2007年12月7日,在 Linux-HA 上的用户邮件列表发布了一个内部公告。Linux-HA (当时叫CRM )的管理层被分裂出去支持原来的 Linux-HA and OpenAIS的传输层。2008 在渥太华的 Linux专题讨论会上有另外一个公告,OpenAIS 的传输层被分裂以更好地支持新的通用管理层。以前,两个软件的整体软件的整体结构变得更轻,兼容,并可互换。
共同努力实现的第一个稳定版本是:
• Heartbeat Version 3.0.2: 2010年2月1日,
• Corosync Version 1.0.0:2009年7月8日,
• Pacemaker Version 0.6: 2008 年1月16日,
7.3.1 OpenAIS 和 Corosync
OpenAIS 是第一个服务可用性论坛(www.saforum.org)规范的实现。这是一个全面的,也是一个复杂的集群软件栈,当时,Corosync是 OpenAIS的同义词。在 2008,该项目的开发者在渥太华的Linux 专题讨论会上宣布联合开发,结果是该软件被重构,其传输层成为 Corosync,OpenAIS 部分现在只包含 SAForum 的API。然而,在写本书时,SAForum 网站只列出了 OpenSAF (opensaf.org) 和 OpenHPI(www.openhpi.org) 作为它们规范的实现。
7.3.2 Linux-HA (Heartbeat) 和 Pacemaker
Linux-HA (www.linux-ha.org) 开始作为一个简单的集群实施,以提供一个简单的方法来建立一个双机集群。传输层被称为 Heartbeat,但它也由于上层传输被称为 Linux-HA 的同义词,集群管理没有一个特别的名字。一段时间后,Heartbeat的简单版本1.x被认为不够稳定,集群管理层被重写,并成为了所谓的集群资源管理(CRM)。OpenAIS 和 Linux-HA 联合开发之后,传输层就成了单独的软件, 保留了 Heartbeat 名称, CRM 被分离出来重命名为 Pacemaker。目前,Pacemaker 支持两个项目的传输层 (Heartbeat and Corosync) 并提供一个通用的集群管理层。对于一些应用程序来说,它甚至需要来自 OpenAIS 的管理层。 Heartbeat 和 Pacemaker当前的主页是 www.clusterlabs.org。
PostgreSQL Replication之第七章 理解Linux高可用(3)的更多相关文章
- PostgreSQL Replication之第七章 理解Linux高可用(1)
高可用(HA)是工业长期持续的,不间断的服务.在本章,您将了解高可用软件的历史,概念和实现与PostgreSQL复制和高可用之间的关系. 本章将详细地讲述如下主题: •理解高可用性的目的 •衡量可用性 ...
- PostgreSQL Replication之第七章 理解Linux高可用(6)
7.6 PostgreSQL和高可用性 数据库是我们日常数字生活的一部分,并期望它们快速工作. 您浏览网上论坛吗?那个帖子在数据库中.您看医生吗?您的医疗记录在数据库中.您在网上购物吗?那个货物,您的 ...
- PostgreSQL Replication之第七章 理解Linux高可用(2)
7.2 衡量可用性 可用性是提供商试图保证一定的可用性级别和客户可以期望的可用性或更多.在某些情况下(取决于服务合同) 收取罚款或减少申购费用是意外停机的原因. 可用性的质量使用百分数来衡量:例如,9 ...
- PostgreSQL Replication之第七章 理解Linux高可用(5)
7.5 高可用性是所有冗余 让我们从一个不同的角度看一下前面的混合超市的例子.为了处理大量顾客无需长排队,无需关闭超市,混合超市雇用更多的出纳员以及安装许多(甚至更多)的收银机. 这样,如果一个收银机 ...
- PostgreSQL Replication之第七章 理解Linux高可用(4)
7.4 术语与概念 一组计算机被称为集群.集群内的一台计算机被称为一个节点. 当集群内的节点数量是 N (2,,3,等.) ,那么我们讨论一个N节点的集群. 高可用性软件,传输层和集群管理层都运行于每 ...
- PostgreSQL Replication之第三章 理解即时恢复(4)
3.4 重放事务日志 一旦我们创建了一个我们自己的初始基础备份,我们可以收集数据库创建的XLOG.当时间到时,我们可以使用所有这些XLOG 文件并执行我们所期望的恢复进程.这就像本节描述的一样工作. ...
- PostgreSQL Replication之第三章 理解即时恢复(1)
到现在为止,您已经掌握了一定的理论.因为生活不仅由理论组成(它可能同样重要),是时候深入实际的工作了. 本章的目标是让您明白如何恢复数据到一个给定的时间点.当您的系统崩溃或者有人意外地删除了一个表,不 ...
- 《Linux命令行与shell脚本编程大全》 第七章理解Linux文件权限
Linux沿用了Unix文件权限的方法,允许用户和组根据每个文件和目录的安全性设置来访问文件. 用户权限通过创建用户时分配的用户ID(UID)来跟踪的.每个用户有唯一的ID,但是登录时用的不是UID, ...
- PostgreSQL Replication之第三章 理解即时恢复(3)
3.3 做基础备份 在上一节中,您已经看到,启用归档只需要几行命令,并提供了极大的灵活性.在本节,我们将看到如何创建一个所谓的基础备份,稍后这可以使用XLOG.一个基本备份是一个最初的数据的拷贝. [ ...
随机推荐
- HDU 1051: Wooden Sticks(贪心)
Wooden Sticks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- HDU5638 / BestCoder Round #74 (div.1) 1003 Toposort 线段树+拓扑排序
Toposort 问题描述 给出nn个点mm条边的有向无环图. 要求删掉恰好kk条边使得字典序最小的拓扑序列尽可能小. 输入描述 输入包含多组数据. 第一行有一个整数TT, 表示测试数据组数. 对 ...
- node18---Mongoose
二.索引index 数据库中,根据一个字段的值,来寻找一个文档,是很常见的操作.比如根据学号来找一个学生. 这个学号,是唯一的,只要有学号,就能唯一确认一个学生的文档.学号这个属性,就非常适合建立索引 ...
- uva_644暴力加字典树解法
暴力 #include<iostream> #include<string.h> #include<cstdio> using namespace std; int ...
- Transformation in kentico
https://docs.kentico.com/k10/developing-websites/loading-and-displaying-data-on-websites/writing-tra ...
- 固比固布局 圣杯布局 css实现传统手机app布局
手机app的布局大致上都是头部.内容.底部三部分: 我们需要实现的是头部.底部高度固定:中间内容区域自适应且可以滚动:直接贴代码: css: html,body { width: 100%; heig ...
- IDEA创建Maven项目显示一直加载中的问题
使用IDEA这款工具创建Maven项目的时候出现过下面这种情况: 红色区域即maven骨架加载不出来... 或 loading loading loading ... 有时候需要很长一段时间才能加载出 ...
- [ZJOI2006]物流运输 最短路 动态规划
Code: 定义状态 $dp[i]$ 为前 $i$ 天的最小代价. 状态转移为:$dp[i]=min(dp[i],dp[j]+spfa(j+1,i)$ 这里 $spfa(i,j)$ 是指 $(i,j) ...
- VB学习笔记(一)VB操作字符串
在vb中 dim a# 定义a变量为双精度型变量~ #是类型符 % 整型 & 长整型 !单精度 $ 字符型 VB中strconv 的作用 StrConv("要转换的字符串" ...
- 织梦dedecms支持flash的flv文件播放功能代码
1.打开/include/FCKeditor/editor/dialog/dede_media.htm if(playtype=="rm"|| (playtype=="- ...