DRBD权威指南——基于Corosync+Heartbeat技术构建网络RAID
定 价:59 元
丛书名:
- 作者:陶利牢 编著
- 出版时间:2013/9/1
- ISBN:9787302324614
- 出 版 社:清华大学出版社
- 中图法分类:TP393.0
- 页码:413
- 纸张:胶版纸
- 版次:1
- 开本:大32开
- 字数:(单位:千字)
在Linux操作系统下,对于数据的安全可以通过DRBD来实现,通过它可以在不专业的硬件上实现专业的存储。DRBD是一种网络RAID1,它能够将两台独立机器的存储作为RAID1来使用,两台机器来管理RAID1。
本书分为6个部分共16章,内容包含:DRBD理论基础、DRBD技术基础、DRBD技术特点、优化DRBD性能、安装和配置DRBD、管理DRBD、常见的管理任务、故障排除和错误恢复、DRBD与其他应用程序的集成、Pacemaker集群和DRBD的集成、DRBD使用LVM、 GFS与DRBD、DRBD与Heartbeat的集成、运维案例(Pacemaker + DRBD+其他 /Heartbeat+DRBD+NFS)、图形化管理工具LCMC。
本书适合存储工程师、网络管理员、网络工程师作为参考书使用。
在信息时代,无论是互联网提供的页面还是企业的数据都是生产力产生的结果,因此对于通过生产工具来保护生产力产生的结果是一件刻不容缓的事情,而且也是对生产力的尊重,更是对自己的尊重。在Linux操作系统下,对于数据的安全我们可以通过DRBD来实现,通过它可以在不专业的硬件上实现专业的存储效果。
说明:需要说明的是这里提供的任何方案都是基于中小规模、勤俭节约的企业或者是单位,DRBD的宗旨就是使用最廉价的生产工具来实现最大的效益,如果你所在的企业或者是单位财大气粗,那么可以使用其他昂贵的架构。
DRBD是一种网络RAID 1,它能够将两台独立主机的存储设备作为RAID1来使用,两台机器来管理RAID1,而这个RAID1的两个底层存储分别放置在这两台主机上,因此任何一台主机或者是底层存储损坏都不会影响企业或者是单位生产环境中的使用,等到损坏的主机或底层存储被修复或者是替换后将数据同步过去就可以了。
DRBD的管理和控制不是特别复杂,只要认真的学习本书中提到的方方面面即可,必要时可以访问DRBD的官方网站以便进行更深层次的学习。
本书中的内容包括了6个部分共16章的内容,讲述了DRBD的理论和生产环境的部署及运维,以及和其他程序的结合应用,包括:LVM、GFS等基础底层软件,和Heartbeat、Corosync、Pacemaker等高可用软件,实现基于DRBD服务器之上的服务高可用。
因此,从理论到实践,再到生产环境下的使用;从部署安装到版本升级,再到故障解决;从日常管理到优化,再到感性化的图形界面,本书中都清楚地渗透到每一个环节。
第1部分 DRBD理论基础
本部分内容包括以下3章。
?DRBD技术基础
?DRBD技术特点
?优化DRBD性能
第2部分 安装和配置DRBD
本部分内容包括以下3章。
?通过预编译二进制安装DRBD
?从源代码编译安装DRBD
?配置DRBD
第3部分 管理DRBD
本部分内容包括以下2章。
?常见的管理任务
?故障排除和错误恢复
第4部分 DRBD与其他应用程序的集成
本部分内容包括以下4章。
?Pacemaker集群和DRBD的集成
?DRBD使用LVM
?GFS与DRBD
?DRBD与Heartbeat的集成
第5部分 运 维 案 例
本部分内容包括以下2章。
?Pacemaker + DRBD+其他
?Heartbeat+DRBD+NFS
第6部分 图形化管理工具LCMC
本部分内容包括以下2章。
?认识Linux集群管理器LCMC
?使用Linux集群管理器LCMC
内 容 声 明
关于本书内容的说明,如果你在哪里看到了与本书雷同的内容,你需要确定一下它的内容是否来自于相应软件的官方网站、man文档、howto、README、Changelog、INSTALL、LICENSE、*.conf、*cfg等,这些原创,在我看来,什么是原创?只有这些才是原创(我个人的观点,别拿砖头拍我!),我们只不过是对它们的衍生和应用。本书中的内容就是这样,这是我个人的一个学习方法,对于每一个新使用的软件,我都会看它提供的相关文档和其官方网站,配置文件绝对是软件的精华所在,因此在本书中讲述了大量的配置文件,没办法,Linux下的服务不就是命令加上配置吗?
由于这些官方网站、man文档、howto、README、Changelog、INSTALL、LICENSE、*.conf、*cfg等都是英文,因此对于我们的认识和阅读很不方便,事实上也正是缺乏这些文档的知识才导致我们一直徘徊在技术的门口,因此本人便基于这个基础来编写本书,将这些最基础也是最权威的文档通过理解来实现汉语化,以方便更多人阅读,以个人的感觉这些东西实际上是我们最需要的,它是认知的第一步,毕竟我们的官方语言是汉语。
书中的内容是我在工作中的一个总结,我没有去刻意地改变一个说法,相反只要是官方文档中要的,我就尽可能地使用它们的提法、说法及方法。
使 用 对 象
?广大的Linux爱好者;
?具有一定Linux基础的系统管理员;
?Linux下的系统工程师;
?存储服务器管理员;
?培训中心;
?运维人员;
?一切应该了解和使用DRBD的用户。
关 于 读 者
全书分为6个部分共16章的内容,如果你是初学者,那么不要从第1部分开始,而要从第2部分开始,因为第1部分属于DRBD的理论基础部分,对于初学者来说看起来会很累,首先可以从搭建起一个运行DRBD的服务器开始。
接下来学习第3部分。在第2、第3部分学懂之后,就可以进一步学习第4部分,然后再回头看第1部分,但熟悉DRBD及Heartbeat、Pacemaker的用户可以直接阅读第5部分。
本书的最后一部分是针对DRBD的图形化管理界面所写的,对于不熟悉命令行的用户可以使用体验一下,而对于熟悉了命令行的用户也不妨使用图形管理界面体验一下它的管理控制。
作 者 声 明
本书的内容是我在工作中的一个总结,在生产环境中都使用过,并非纸上谈兵,但是书中的例子,我尽可能地不使用生产环境中的,一是怕对你造成误导;二是不想说什么是权威。
我在前面提到了文稿内容的来源。对于文稿的构成,一部分是对员工培训的文稿;一部分是在培训中心的文案;还有一部分是我在学习中的笔记,由这三部分融合而成,而非简单的拼凑。
另外,毕竟我们都是做互联网的,每天面对着无数个页面,我所要说的是,如果读者在学习本书的过程中发现有和网络上相似的内容,那么确定一下是否是两者(即笔者和您看到网络上文章的作者)参考了同一个官方的资料,本人绝对没有有意抄袭其他作者的内容,这是第一;第二,如果真的是我写的内容确实和您的内容有相同之处,那么及时和我联系(绝对是缘分!);第三,互联网给了我们发展,也给了我们交流,如果您在看本书的过程中发现有个别说法、提法和您的相同,那么请您海涵,往往是一个说法、提法用久了就觉得是自己的说法了(我相信谁都会犯这种错!);第四,由于本人是做运维(系统管理和网络管理),因此在写作风格上也是按照自己的认知过程所写,既没有受过专业的训练也没有模仿某个作者或者某个作品的写作风格,如果真的和您的写作风格相同,那么绝对是巧合(这个就不要计较了!);第五,本套书中引用了互联网的一些内容,由于同一个内容被转来转去,确实很难找到原出处,因此在应用的内容处只指明了来源于互联网。
由于本人才疏学浅,因此,对于本书难免会有疏漏和不足,因此,如果广大读者如果有什么建议和意见可以给本人发邮件。
写 给 读 者
敬献给所有在外漂泊的男人们——有感于居住证。
小时候听过一首《水手》的歌,懂得了什么是男人,长大后拼着一腔热血闯世界,渐渐地将自己容纳为这个陌生城市的一部分。
可是突然有一天醒了,这个城市并不属于我,在我们尽义务的时候必须是这个城市的一部分,个人所得税,这是每一个公民依法缴纳的义务,不缴就是违法,比如捐款;又比如养老保险,这个我不想说得太明白,你懂得!
在你享受权利的时候,你必须不是这个城市的一部分,比如“北京的外乡人连续救人却因是外地人不给帐篷住”,北车营村党支部书记翟瑞生的解释是“前期救灾物资比较紧缺,需要先紧着本村人口”。又如在孩子读书上学的时候,“北京公布异地高考方案,外地人只能上职校不能上高中”,相信这句话不知道有多少人看到“记者今天上午从市教委获悉,2013年符合相关条件的随迁子女可以参加中等职业学校考试录取;2014年符合相关条件的随迁子女可以参加高等职业学校考试录取。”也就是说,外地人只能上技工学校,生气吗?你懂得!
“自2014年起,凡进城务工人员持有有效北京市居住证明,有合法稳定的住所,合法稳定职业已满6年,在京连续缴纳社会保险已满6年,其随迁子女具有本市学籍且已在京连续就读高中阶段教育3年学习年限的,可以在北京参加高等职业学校的考试录取。学生从高等职业学校高职毕业后,可参加优秀应届毕业生升入本科段学习的推荐与考试录取。”你懂得吗?
小时候学过“少小离家老大回”的诗句,临近春节的时候突然接到一个哥们的电话,电话中说“哥,我回去了,过完年我不想回来了,想回去找点事情做”,是的,也许早点回去比晚点回去更好。
多少人拼搏更变自己的命运来改变后代的命运,考职称、读博士……
为什么不去推动体制的更变呢?老牌英国为什么会落后了?
第1部分 DRBD理论基础
第1章 DRBD技术基础
1.1 内核模块
1.2 用户空间工具
1.3 资源
1.4 资源角色
第2章 DRBD技术特点
2.1 单主模式
2.2 双主模式
2.3 复制数据传输模式
2.4 多种传输复制数据的协议
2.5 有效地同步策略
2.5.1 可变的同步速率
2.5.2 锁定同步速率
2.5.3 基于校验和的复制
第1部分 DRBD理论基础
第1章 DRBD技术基础
1.1 内核模块
1.2 用户空间工具
1.3 资源
1.4 资源角色
第2章 DRBD技术特点
2.1 单主模式
2.2 双主模式
2.3 复制数据传输模式
2.4 多种传输复制数据的协议
2.5 有效地同步策略
2.5.1 可变的同步速率
2.5.2 锁定同步速率
2.5.3 基于校验和的复制
2.6 延时同步复制数据
2.7 在线设备验证
2.8 复制流量的完整性检测
2.9 脑裂通知和自动恢复
2.10 支持磁盘刷新
2.11 磁盘错误处理策略
2.12 处理过期数据的策略
2.13 三路复制
2.14 使用DRBD代理实现远
距离复制
2.15 基于“运送”的复制
2.16 浮动对点
第3章 优化DRBD性能
3.1 优化DRBD
3.1.1 优化DRBD吞吐量
3.1.2 优化DRBD延时
3.2 关于调优的建议
3.2.1 为DRBD设置CPU掩码
3.2.2 修改网络的MTU
3.2.3 使用deadline I/O调度方式
第2部分 安装和配置DRBD
第4章 通过预编译二进制
安装DRBD
4.1 由LINBIT提供的安装包
4.2 由发行商提供的软件包
4.2.1 SUSE Linux Enterprise
Server
4.2.2 Debian GNU/Linux
4.2.3 CentOS
4.2.4 Ubuntu Linux
第5章 从源代码编译安装DRBD
5.1 下载DRBD源代码
5.2 从DRBD仓库牵出DRBD
源程序
5.3 从源代码构建特定平台的DRBD
二进制安装包
5.3.1 检测构建DRBD的依赖性
5.3.2 准备内核源码
5.3.3 准备DRBD的编译树
5.3.4 构建DRBD用户空间工具
5.3.5 编译DRBD 作为内核模块
5.4 构建DRBD的RPM安装包
5.5 构建DRBD的Debian安装包
第6章 配置DRBD
6.1 准备底层存储设备
6.2 准备网络配置
6.3 配置资源
6.3.1 配置举例
6.3.2 配置global部分
6.3.3 配置 common 部分
6.3.4 配置 resource 部分
6.4 第一次启用DRBD资源
6.5 初始化设备同步
6.6 使用基于“运送”的复制
第3部分 管理DRBD
第7章 常见的管理任务
7.1 检测DRBD状态
7.1.1 通过drbd-overview
命令获取DRBD的状态
7.1.2 通过伪文件系统/proc/drbd
了解DRBD的状态信息
7.1.3 连接状态
7.1.4 资源角色
7.1.5 磁盘状态
7.1.6 I/O状态标志
7.1.7 性能指标
7.2 启用和禁用资源
7.2.1 启用资源
7.2.2 禁用资源
7.3 重新配置资源
7.4 资源的升级和降级
7.5 基本的手动故障转移
7.6 更新DRBD版本
7.6.1 更新仓库
7.6.2 更新安装包
7.6.3 配置迁移
7.7 将DRBD 8.4降级到8.3
7.8 启用双主模式
7.8.1 永久双主模式
7.8.2 临时双主模式
7.8.3 系统启动时自动提升
双主模式
7.9 使用在线设备验证
7.9.1 启用在线设备验证
7.9.2 执行在线验证
7.9.3 自动在线验证
7.10 配置同步的速率
7.10.1 在配置中锁定同步速率
7.10.2 临时锁定同步速率的配置
7.10.3 可变同步速率的配置
7.11 配置基于校验和的同步
7.12 配置阻塞策略和暂停复制
7.13 配置处理I/O错误策略
7.14 配置复制流量完整性检测
7.15 调整资源大小
7.15.1 在线增大资源大小
7.15.2 离线增大资源大小
7.15.3 在线缩小资源大小
7.15.4 离线缩小资源大小
7.16 禁用后台驱动器缓存
7.17 配置脑裂行为
7.17.1 脑裂通知
7.17.2 脑裂自动恢复策略
7.18 创建三个节点的设置
7.18.1 设备堆叠的注意事项
7.18.2 配置堆叠资源
7.18.3 启用堆叠资源
7.19 使用DRBD代理
7.19.1 DRBD代理部署注意事项
7.19.2 安装
7.19.3 许可文件
7.19.4 配置代理
7.19.5 控制DRBD代理
7.19.6 DRBD的代理插件
7.19.7 故障查找
第8章 故障排除和错误恢复
8.1 处理硬盘驱动器错误
8.1.1 从DRBD手动分离硬盘
驱动器
8.1.2 出现I/O错误自动分离硬盘
驱动器
8.1.3 在使用内部元数据的情况下
替代失败磁盘
8.1.4 在使用外部元数据的情况下
替代失败磁盘
8.2 处理节点错误
8.2.1 处理临时Secondary
节点错误
8.2.2 处理临时Primary节点错误
8.2.3 处理永久节点错误
8.3 手动脑裂恢复
第4部分 DRBD与其他应用程序的集成
第9章 Pacemaker集群和DRBD
的集成
9.1 认识Pacemaker
9.1.1 Pacemaker的功能
9.1.2 Pacemaker的结构
9.1.3 Pacemaker的内部组成
9.1.4 Pacemaker的集群类型
9.2 在Pacemaker中添加DRBD
后台服务
9.3 在集群中使用基于资源级别
的栅功能
9.3.1 使用资源级别的栅功能
——dopd
9.3.2 使用基于资源级别的
栅功能
9.4 在Pacemaker 集群中使用堆叠的
DRBD资源
9.4.1 向Pacemaker 集群中添加
异地灾备
9.4.2 在Pacemaker 集群中使用
堆叠资源实现4路冗余
9.5 两个基于SAN的Pacemaker
集群之间DRBD数据复制
9.5.1 DRBD资源配置
9.5.2 Pacemaker 资源配置
9.5.3 站点的故障转移
第10章 DRBD使用LVM
10.1 LVM 简介
10.2 使用逻辑卷作为DRBD
后端设备
10.3 在DRBD的同步中自动使用
LVM快照
10.4 配置DRBD资源作为物理卷
10.5 在现有卷组中添加新的
DRBD卷
10.6 DRBD与LVM的嵌套配置
10.7 使用Pacemaker实现高可用
第11章 GFS与DRBD
11.1 GFS primer
11.2 创建适合于GFS的DRBD资源
11.3 配置LVM识别DRBD资源
11.4 配置集群支持GFS
11.5 创建GFS文件系统
11.6 使用GFS文件系统
第12章 DRBD与Heartbeat
的集成
12.1 安装Heartbeat
12.1.1 下载安装glue
12.1.2 下载安装heartbeat
12.1.3 下载安装agents
12.2 配置Heartbeat
12.2.1 ha.cf文件
12.2.2 haresources文件
12.2.3 authkeys文件
12.3 启动Heartbeat
12.3.1 环境部署
12.3.2 启动主Heartbeat
12.3.3 启动备用Heartbeat
12.4 测试Heartbeat
12.4.1 正常情况下访问
12.4.2 宕掉主节点
12.4.3 重新启动主节点
第5部分 运维案例
第13章 Pacemaker+DRBD+其他
13.1 安装集群软件
13.1.1 在CentOS 5.6系统上
13.1.2 在CentOS 6.3系统上
13.1.3 安装集群管理软件
13.1.4 其他设置
13.2 Corosync安装包
13.2.1 配置文件
13.2.2 命令参考
13.3 Pacemaker安装包
13.3.1 配置文件
13.3.2 命令参考
13.4 Crm工具
13.4.1 crm命令行选项
13.4.2 用户接口使用介绍
13.4.3 命令参考
13.5 pacemaker-cli安装包
13.5.1 命令参考
13.5.2 配置Corosync
13.5.3 启动Corosync
13.6 校验安装
13.6.1 校验Corosync安装
13.6.2 校验Pacemaker安装
13.7 配置服务
13.7.1 添加虚拟IP地址
13.7.2 添加Web服务
13.8 添加其他配置
13.8.1 根据需要设置STONITH
设备
13.8.2 禁用故障恢复使用节点
13.9 执行Active/Passive测试
13.10 Pacemaker与DRBD的结合
13.10.1 安装DRBD
13.10.2 配置DRBD
13.11 主备切换测试
13.11.1 维护切换测试
13.11.2 故障切换测试
第14章 Heartbeat+DRBD+NFS
14.1 安装DRBD
14.1.1 安装DRBD 8.2.1
14.1.2 启动
14.1.3 设置为Primary端
14.2 使用DRBD设备
14.3 对Primary角色的切换
14.4 设置NFS
14.5 与Heartbeat结合
14.6 配置DRBD
14.7 客户端挂接NFS
14.8 故障
14.9 升级安装
14.9.1 安装DRBD 8.4.1
14.9.2 编辑DRBD的配置文件
14.10 目录结构分析
14.10.1 rpm安装包
14.10.2 tar安装包
14.11 用户命令
14.11.1 drbd
14.11.2 drbdsetup
14.11.3 drbdmeta
14.11.4 drbd-overview
14.12 对Primary角色的切换
配置文件
14.12.1 drbd.d
14.12.2 global_common.conf
14.12.3 *.res文件
14.12.4 drbd.conf
14.13 脑裂处理
14.13.1 拔掉主(Primary)节点的
所有网线
14.13.2 拔掉备用(Secondary)节点
的所有网线
14.13.3 主(Primary)宕机
14.13.4 另一种情况
14.13.5 又一种情况
14.14 添加资源
14.14.1 添加磁盘
14.14.2 添加配置文件
14.14.3 启用资源
14.15 主备节点切换
14.15.1 运行时切换
14.15.2 停止DRDB服务切换
第6部分 图形化管理工具LCMC
第15章 认识Linux集群
管理器LCMC
15.1 安装方式
15.2 下载并安装LCMC
15.3 运行LCMC
第16章 使用Linux集群
管理器LCMC
16.1 添加机器和集群
16.1.1 添加主机向导
16.1.2 添加集群向导
16.2 集群管理
16.2.1 连接和断开集群
16.2.2 添加和移除集群
16.2.3 集群资源管理