高性能Linux服务器构建实战:运维监控、性能调优与集群应用:maintenance,optimization and cluster

副标题:无

作   者:高俊峰著

分类号:

ISBN:9787111366959

微信扫一扫,移动浏览光盘

简介

  《高性能linux服务器构建实战:运维监控、性能调优与集群应用》以构建高性能linux服务器为核心内容,从web应用、数据备份与恢复、网络存储应用、运维监控与性能优化、集群高级应用等多个方面深入讲解了如何构建高性能的linux服务器。全书以实战性为导向,所有内容都来自于作者多年实践经验的总结,同时从社区中收集了大量linux运维人员遇到的有代表性的疑难问题,并给出了优秀的解决方案,实践指导意义极强。    全书分为5个部分。web应用篇详细介绍了nginx、varnish和memcached这三款linux服务器上极为常用的web应用软件的安装、配置、管理、使用方法、工作原理和性能调优技巧。数据备份与恢复篇首先讲述了开源备份软件bacula的使用与管理技巧,并通过实例讲解了在bacula上进行各种备份与恢复操作的具体方法;其次讲解了开源数据镜像备份工具rsync和unison的使用,并通过两个企业级案例演示了这两个工具在生产环境中的使用过程;最后讲解了如何利用ext3grep工具来恢复误删除的数据文件和mysql数据库的方法。网络存储应用篇首先系统地讲解了网络存储技术iscsi的配置和使用,然后讲解了分布式存储系统mfs的使用和维护。运维监控与性能优化篇通过理论与实践相结合的方法讲解了如何利用nagios进行性能监控,以及linux服务器的性能分析原则和优化方法。集群高级应用篇是前面内容的综合,也是《高性能linux服务器构建实战:运维监控、性能调优与集群应用》的核心,主要讲述了如何通过lvs+heartbeat、piranha、lvs+keepalived来构建高可用的负载均衡集群,其次讲解了红帽集群套件rhcs的配置、管理、维护和监控,然后讲解了oracle集群解决方案,即oracle rac数据库的构建、使用和维护。最后以构建一个mysql+heartbeat+drbd+lvs集群系统的实战案例结束全书,巧妙地将《高性能linux服务器构建实战:运维监控、性能调优与集群应用》的所有核心内容都融合到了一起。

目录

《高性能linux服务器构建实战:运维监控、性能调优与集群应用》

前言

第1篇 web应用篇

第1章 轻量级http服务器nginx / 2

1.1 什么是nginx / 2

1.2 为什么要选择nginx / 2

1.2.1 nginx与apache的异同 / 2

1.2.2 选择nginx的优势所在 / 2

1.3 nginx的模块与工作原理 / 3

1.4 nginx的安装与配置 / 4

1.4.1 下载与安装nginx / 4

1.4.2 nginx配置文件的结构 / 5

1.4.3 配置与调试nginx / 6

1.4.4 nginx的启动、关闭和平滑重启 / 13

1.5 nginx常用配置实例 / 14

1.5.1 虚拟主机配置实例 / 14

1.5.2 负载均衡配置实例 / 15

1.5.3 防盗链配置实例 / 17

1.5.4 日志分割配置实例 / 17

1.6 nginx性能优化技巧 / 18

.1.6.1 编译安装过程优化 / 18

1.6.2 利用tcmalloc优化nginx的性能 / 19

1.6.3 nginx内核参数优化 / 20

1.7 实战nginx与php(fastcgi)的安装、配置与优化 / 22

1.7.1 什么是 fastcgi / 22

1.7.2 nginx+fastcgi运行原理 / 22

1.7.3 spawn-fcgi与php-fpm / 22

1.7.4 php与php-fpm的安装及优化 / 23

1.7.5 配置nginx来支持php / 26

1.7.6 测试nginx对php的解析功能 / 27

1.7.7 优化nginx中fastcgi参数的实例 / 27

1.8 实战nginx与perl、java的安装与配置 / 28

1.8.1 perl(fastcgi)的安装 / 29

1.8.2 为nginx添加fcgi支持 / 30

1.8.3 测试nginx +perl(fastcgi) / 31

1.8.4 搭建nginx+java环境 / 32

1.9 本章小结 / 34

第2章 高性能http加速器varnish / 35

2.1 初识varnish / 35

2.1.1 varnish概述 / 35

2.1.2 varnish的结构与特点 / 35

2.1.3 varnish与squid的对比 / 36

2.2 开始安装varnish / 36

2.2.1 安装前的准备 / 36

2.2.2 获取varnish软件 / 37

2.2.3 安装pcre / 37

2.2.4 安装varnish / 37

2.3 配置varnish / 38

2.3.1 vcl使用说明 / 38

2.3.2 配置一个简单的varnish实例 / 42

2.3.3 varnish对应多台web服务器的配置实例 / 44

2.4 运行varnish / 48

2.4.1 varnishd指令 / 48

2.4.2 配置varnish运行脚本 / 48

2.4.3 管理varnish运行日志 / 49

2.5 管理varnish / 51

2.5.1 查看varnish进程 / 51

2.5.2 查看varnish缓存效果与状态 / 51

2.5.3 通过端口管理varnish / 53

2.5.4 管理varnish缓存内容 / 55

2.6 varnish优化 / 58

2.6.1 优化linux内核参数 / 58

2.6.2 优化系统资源 / 59

2.6.3 优化varnish参数 / 61

2.7 varnish的常见应用实例 / 62

2.7.1 利用varnish实现图片防盗链 / 62

2.7.2 利用varnish实现静态文件压缩处理 / 62

2.8 本章小结 / 64

第3章 memcached应用实战 / 65

3.1 memcached基础 / 65

3.1.1 什么是memcached / 65

3.1.2 memcached的特征 / 66

3.1.3 memcached的安装 / 67

3.1.4 memcached的简单使用过程 / 70

3.2 剖析memcached的工作原理 / 71

3.2.1 memcached的工作过程 / 71

3.2.2 slab allocation的工作机制 / 72

3.2.3 memcached的删除机制 / 72

3.2.4 memcached的分布式算法 / 73

3.3 memcached的管理与性能监控 / 75

3.3.1 如何管理memcached / 75

3.3.2 memcached的监控 / 77

3.3.3 memcached变种产品介绍 / 81

3.4 通过udfs实现memcached与mysql的自动更新 / 82

3.4.1 udfs使用简介 / 82

3.4.2 memcached_functions_mysql应用实例 / 84

3.4.3 对memcached_functions_mysql的简单功能进行测试 / 87

3.4.4 使用memcached_functions_mysql的经验与技巧 / 88

3.5 本章小结 / 89

第2篇 数据备份恢复篇

第4章 开源网络备份软件bacula / 92

4.1 bacula总体概述 / 92

4.1.1 bacula是什么 / 92

4.1.2 bacula适合哪些用户 / 92

4.1.3 bacula的功能特点 / 93

4.1.4 bacula的工作原理 / 95

4.2 安装bacula / 96

4.2.1 bacula的几种网络备份拓扑 / 96

4.2.2 编译与安装bacula / 97

4.2.3 初始化mysql数据库 / 98

4.3 配置一个bacula备份系统 / 98

4.3.1 配置bacula的console端 / 98

4.3.2 配置bacula的director端 / 99

4.3.3 配置bacula的sd / 103

4.3.4 配置bacula的fd端 / 104

4.4 启动与关闭bacula / 105

4.4.1 启动bacula的director daemon与storage daemon / 105

4.4.2 在客户端fd启动file daemon / 106

4.5 实战bacula备份恢复过程 / 106

4.5.1 实例演示bacula的完全备份功能 / 106

4.5.2 实例演示bacula的增量备份功能 / 109

4.5.3 实例演示bacula的差异备份功能 / 110

4.5.4 实例演示bacula的完全恢复功能 / 116

4.5.5 实例演示bacula的不完全恢复功能 / 122

4.6 本章小结 / 125

第5章 数据镜像备份工具rsync与unison / 126

5.1 rsync简介 / 126

5.1.1 什么是rsync / 126

5.1.2 rsync的功能特性 / 126

5.1.3 下载与安装rsync软件 / 127

5.2 利用rsync搭建数据镜像备份系统 / 127

5.2.1 rsync的应用模式 / 127

5.2.2 企业案例:搭建远程容灾备份系统 / 129

5.3 通过rsync+inotify实现数据的实时备份 / 133

5.3.1 rsync的优点与不足 / 133

5.3.2 初识inotify / 133

5.3.3 安装inotify工具inotify-tools / 133

5.3.4 inotify相关参数 / 134

5.3.5 inotifywait相关参数 / 134

5.3.6 企业应用案例:利用rsync+inotify搭建实时同步系统 / 135

5.4 unison简介 / 139

5.5 安装unison / 139

5.6 配置双机ssh信任 / 140

5.6.1 在两台机器上创建 rsa密钥 / 140

5.6.2 添加密钥到授权密钥文件中 / 141

5.7 unison的使用 / 141

5.7.1 本地使用unison / 142

5.7.2 远程使用unison / 143

5.7.3 unison参数说明 / 144

5.7.4 通过配置文件来使用unison / 145

5.8 本章小结 / 147

第6章 ext3文件系统反删除利器ext3grep / 148

6.1 “rm–rf”带来的困惑 / 148

6.2 ext3grep的安装与使用 / 148

6.2.1 ext3grep的恢复原理 / 148

6.2.2 ext3grep的安装过程 / 149

6.3 通过ext3grep恢复误删除的文件与目录 / 150

6.3.1 数据恢复准则 / 150

6.3.2 实战ext3grep恢复文件 / 150

6.4 通过ext3grep恢复误删除的mysql表 / 154

6.4.1 mysql存储引擎介绍 / 154

6.4.2 模拟mysql表被误删除的环境 / 154

6.4.3 通过ext3grep分析数据、恢复数据 / 155

6.5 本章小结 / 159

第3篇 网络存储应用篇

第7章 ip网络存储iscsi / 162

7.1 存储的概念与术语 / 162

7.1.1 scsi介绍 / 162

7.1.2 fc介绍 / 162

7.1.3 das介绍 / 162

7.1.4 nas介绍 / 163

7.1.5 san介绍 / 163

7.2 iscsi的概念 / 163

7.3 fc san与ip san / 164

7.4 iscsi的组成 / 164

7.4.1 iscsi initiator / 165

7.4.2 iscsi target / 166

7.5 iscsi的工作原理 / 166

7.6 搭建基于ip san的iscsi存储系统 / 167

7.6.1 安装iscsi target软件 / 168

7.6.2 配置一个简单的iscsi target / 169

7.6.3 在windows上配置iscsi initiator / 169

7.6.4 在linux上配置iscsi initiator / 172

7.7 iscsi 在安全方面的相关设定 / 176

7.7.1 initiator主机以ip认证方式获取iscsi target资源 / 176

7.7.2 initiator主机以密码认证方式获取iscsi target资源 / 177

7.8 iscsi性能优化方案 / 181

7.8.1 iscsi性能瓶颈 / 181

7.8.2 iscsi性能优化 / 181

7.9 本章小结 / 183

第8章 分布式存储系统mfs / 184

8.1 mfs概论 / 184

8.2 mfs 文件系统 / 185

8.2.1 mfs文件系统结构 / 185

8.2.2 mfs的编译与安装实例 / 186

8.3 编译与使用mfs的经验总结 / 199

8.3.1 安装选项说明 / 199

8.3.2 管理服务器 / 200

8.3.3 元数据日志服务器 / 201

8.3.4 数据存储服务器 / 201

8.3.5 客户端挂载 / 203

8.4 管理与使用mfs / 203

8.4.1 在客户端挂载文件系统 / 203

8.4.2 mfs常用操作 / 204

8.4.3 为垃圾箱设定隔离时间 / 207

8.4.4 快照 / 209

8.4.5 mfs的其他命令 / 209

8.5 维护mfs / 210

8.5.1 启动mfs集群 / 210

8.5.2 停止mfs集群 / 210

8.5.3 mfs 数据存储服务器的维护 / 210

8.5.4 mfs元数据的备份 / 211

8.5.5 mfs 管理服务器的恢复 / 211

8.5.6 从备份恢复mfs 管理服务器 / 211

8.6 通过冗余实现失败防护的解决方案 / 212

8.7 本章小结 / 212

第4篇 运维监控与性能优化篇

第9章 运维监控利器nagios / 216

9.1 nagios综述 / 216

9.1.1 什么是nagios / 216

9.1.2 nagios的结构与特点 / 216

9.2 nagios的安装与配置 / 217

9.2.1 安装nagios / 217

9.2.2 配置nagios / 221

9.3 nagios的运行和维护 / 231

9.3.1 验证nagios配置文件的正确性 / 231

9.3.2 启动与停止nagios / 231

9.3.3 nagios故障报警 / 232

9.4 nagios性能分析图表的实现 / 234

9.4.1 nagios性能分析图表的作用 / 234

9.4.2 pnp的概念与安装环境 / 234

9.4.3 安装pnp / 234

9.4.4 配置pnp / 235

9.4.5 修改nagios配置文件 / 236

9.4.6 测试pnp功能 / 237

9.5 利用插件扩展nagios的监控功能 / 238

9.5.1 利用nrpe外部构件监控远程主机 / 238

9.5.2 利用飞信实现nagios短信报警功能 / 243

9.6 本章小结 / 247

第10章 基于linux服务器的性能分析与优化 / 248

10.1 系统性能分析的目的 / 248

10.1.1 找到系统性能的瓶颈 / 248

10.1.2 提供性能优化方案 / 248

10.1.3 使系统硬件和软件资源的使用达到平衡 / 249

10.2 分析系统性能涉及的人员 / 249

10.2.1 linux系统管理人员 / 249

10.2.2 系统架构设计人员 / 249

10.2.3 软件开发人员 / 250

10.3 影响linux性能的各种因素 / 250

10.3.1 系统硬件资源 / 250

10.3.2 操作系统相关资源 / 252

10.3.3 应用程序软件资源 / 253

10.4 系统性能分析标准和优化原则 / 253

10.5 几种典型应用对系统资源使用的特点 / 254

10.5.1 以静态内容为主的web应用 / 254

10.5.2 以动态内容为主的web应用 / 254

10.5.3 数据库应用 / 255

10.5.4 软件下载应用 / 255

10.5.5 流媒体服务应用 / 256

10.6 linux下常见的性能分析工具 / 256

10.6.1 vmstat命令 / 256

10.6.2 sar命令 / 258

10.6.3 iostat命令 / 260

10.6.4 free命令 / 262

10.6.5 uptime命令 / 263

10.6.6 netstat命令 / 263

10.6.7 top命令 / 265

10.7 基于web应用的性能分析及优化案例 / 268

10.7.1 基于动态内容为主的网站优化案例 / 268

10.7.2 基于动态、静态内容结合的网站优化案例 / 270

10.8 本章小结 / 272

第5篇 集群高级应用篇

第11章 构建高可用的lvs负载均衡集群 / 274

11.1 lvs集群的组成与特点 / 274

11.1.1 lvs集群的组成 / 274

11.1.2 lvs集群的特点 / 275

11.1.3 lvs集群系统的优缺点 / 278

11.2 高可用 lvs负载均衡集群体系结构 / 278

11.3 高可用性软件heartbeat与keepalived / 279

11.3.1 开源ha软件heartbeat的介绍 / 279

11.3.2 安装heartbeat / 280

11.3.3 开源ha软件keepalived的介绍 / 280

11.3.4 安装keepalived / 281

11.4 安装lvs软件 / 282

11.4.1 配置与检查安装环境 / 282

11.4.2 在director server上安装ipvs管理软件 / 282

11.5 搭建高可用 lvs集群 / 283

11.5.1 通过heartbeat搭建lvs高可用性集群 / 284

11.5.2 通过keepalived搭建lvs高可用性集群系统 / 288

11.5.3 通过piranha搭建lvs高可用性集群 / 291

11.6 测试高可用lvs负载均衡集群系统 / 293

11.6.1 高可用性功能测试 / 293

11.6.2 负载均衡测试 / 294

11.6.3 故障切换测试 / 294

11.7 本章小结 / 295

第12章 rhcs集群 / 296

12.1 rhcs集群概述 / 296

12.2 rhcs集群的组成与结构 / 297

12.2.1 rhcs集群的组成 / 297

12.2.2 rhcs集群结构 / 298

12.3 rhcs集群的运行原理及功能 / 299

12.3.1 分布式集群管理器(cman)/ 299

12.3.2 锁管理(dlm) / 299

12.3.3 配置文件管理(ccs) / 300

12.3.4 栅设备(fence) / 301

12.3.5 高可用性服务管理器 / 302

12.3.6 集群配置和管理工具 / 304

12.3.7 redhat gfs / 304

12.4 安装rhcs / 305

12.4.1 安装前准备工作 / 306

12.4.2 配置共享存储和rhcs管理端luci / 307

12.4.3 在集群节点上安装rhcs软件包 / 308

12.4.4 在集群节点上安装和配置iscsi客户端 / 309

12.5 配置rhcs高可用集群 / 309

12.5.1 创建一个cluster / 310

12.5.2 创建failover domain / 314

12.5.3 创建resources / 315

12.5.4 创建service / 319

12.5.5 配置存储集群gfs / 322

12.5.6 配置表决磁盘 / 325

12.5.7 配置fence设备 / 328

12.6 管理和维护rhcs集群 / 333

12.6.1 启动rhcs集群 / 333

12.6.2 关闭rhcs集群 / 334

12.6.3 管理应用服务 / 334

12.6.4 监控rhcs集群状态 / 336

12.6.5 管理和维护gfs2文件系统 / 338

12.7 rhcs集群功能测试 / 340

12.7.1 高可用集群测试 / 340

12.7.2 存储集群测试 / 352

12.8 本章小结 / 352

第13章 oracle rac集群 / 353

13.1 oracle集群体系结构 / 353

13.2 oracle clusterware体系结构与进程介绍 / 355

13.2.1 oracle clusterware 简介 / 355

13.2.2 oracle clusterware 进程介绍 / 355

13.3 rac数据库体系结构与进程 / 356

13.3.1 rac 简介 / 356

13.3.2 oracle rac的特点 / 357

13.3.3 rac进程管理 / 358

13.3.4 rac数据库存储规划 / 359

13.4 安装oracle rac数据库 / 361

13.4.1 安装前的系统配置需求 / 361

13.4.2 设置数据库安装资源 / 363

13.4.3 配置主机解析文件 / 363

13.4.4 检查所需软件包 / 364

13.4.5 配置系统内核参数 / 364

13.4.6 设置 shell对oracle用户的限制 / 365

13.4.7 配置hangcheck-timer内核模块 / 366

13.4.8 配置系统安全设置 / 367

13.4.9 创建oracle用户和组 / 367

13.4.10 设置oracle用户环境变量 / 367

13.4.11 配置节点间ssh信任 / 368

13.4.12 配置共享存储系统 / 369

13.4.13 安装oracle clusterware / 373

13.4.14 安装oracle数据库 / 381

13.4.15 配置oracle net / 387

13.4.16 创建rac数据库 / 390

13.5 oracle crs的管理与维护 / 404

13.5.1 查看集群状态 / 404

13.5.2 启动与关闭集群服务资源 / 405

13.5.3 启动与关闭crs / 406

13.5.4 管理voting disk / 407

13.5.5 管理ocr / 408

13.5.6 快速卸载crs / 410

13.6 asm基本操作维护 / 411

13.6.1 asm的特点 / 411

13.6.2 asm的体系结构与后台进程 / 412

13.6.3 管理asm实例 / 413

13.7 利用srvctl管理rac数据库 / 421

13.7.1 查看实例状态(srvctl status) / 422

13.7.2 查看rac数据库配置信息(srvctl config) / 422

13.7.3 启动/关闭实例(srvctl start/stop) / 423

13.7.4 增加/删除/修改实例(srvctl add/remove/modify) / 423

13.8 测试rac数据库集群的功能 / 424

13.8.1 负载均衡测试 / 424

13.8.2 透明应用失败切换测试 / 427

13.9 本章小结 / 428

第14章 构建mysql+heartbeat+drbd+lvs集群应用系统 / 430

14.1 mysql高可用集群概述 / 430

14.2 heartbeat + drbd高可用性方案的实现原理 / 431

14.3 部署mysql高可用高扩展集群 / 432

14.3.1 配置之前的准备 / 433

14.3.2 drbd的部署 / 434

14.3.3 drbd的配置 / 434

14.3.4 drbd的维护和管理 / 439

14.3.5 drbd的性能优化 / 440

14.3.6 mysql的部署 / 441

14.3.7 heartbeat的部署 / 445

14.4 搭建slave集群 / 448

14.4.1 为什么要搭建slave集群 / 448

14.4.2 利用lvs+keepalived搭建高可用mysql slave集群 / 448

14.4.3 高可用slave集群的一些注意点 / 451

14.5 部署mysql集群要考虑的问题 / 451

14.6 本章小结 / 452


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

高性能Linux服务器构建实战:运维监控、性能调优与集群应用:maintenance,optimization and cluster
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon