主页 详情

《24小时365天不间断服务 服务器/基础设施核心技术》_(日)伊藤直也,胜见祐已,田中慎司,广濑正明,安井真神,横川和哉著;张毅译_13698206_978

【书名】:《24小时365天不间断服务 服务器/基础设施核心技术》
【作者】:(日)伊藤直也,胜见祐已,田中慎司,广濑正明,安井真神,横川和哉著;张毅译
【出版社】:北京:人民邮电出版社
【时间】:2015
【页数】:309
【ISBN】:9787115380241
【SS码】:13698206

最新查询

内容简介

第1章 服务器及基础设施搭建入门冗余及负载分流的基础

1.1 冗余的基础

1.1.1 冗余概述

1.1.2 冗余的本质

1 设想可能发生的故障

2 预先准备好备份设备

3 部署工作机制……当故障发生时,切换到备份设备

1.1.3 应对路由器故障的情况

冷备份

1.1.4 应对Web服务器故障的情况

热备份

1.1.5 故障转移

VIP

IP地址的映射

1.1.6 检测故障……健康检查

Web服务器的健康检查

路由器的健康检查

1.1.7 搭建Active/Backup的拓扑结构

IP地址的映射操作

1.1.8 还想更有效地使用服务器……负载分发

1.2 实现Web服务器的冗余………DNS轮询

1.2.1 DNS轮询

1.2.2 DNS轮询的冗余拓扑结构示例

1.2.3 还想更轻松地扩充系统……负载均衡器

1.3 实现Web服务器的冗余……基于IPVS的负载均衡器

1.3.1 DNS轮询与负载均衡器的不同点

1.3.2 IPVS……基于Linux的负载均衡器

负载均衡器的种类与IPVS的功能

1.3.3 调度算法

1.3.4 使用IPVS

ipvsadm

keepalived

1.3.5 搭建负载均衡器

配置Web服务器

启动keepalived

确认负载分流

确认冗余的拓扑结构

1.3.6 四层交换机与七层交换机

1.3.7 四层交换机的NAT模型与DSR模型

1.3.8 同一子网下的服务器进行负载分流时需要注意的地方

1.4 路由器及负载均衡器的冗余

1.4.1 负载均衡器的冗余

1.4.2 虚拟路由器冗余协议(VRRP)

1.4.3 VRRP的拓扑模型

VRRP报文

虚拟路由器ID

优先顺序

抢占模式

虚拟MAC地址

1.4.4 安装keepalived时可能遇到的问题

延迟发送gratuitous ARP(GARP)

1.4.5 keepalived的冗余

确认VIP

确认VRRP的运行情况

分离VRRP实例

同步VRRP实例

1.4.6 keepalived的应用

第2章 优化服务器及基础设施的拓扑结构冗余、负载分流、高性能的实现

2.1 引入反向代理……Apache模块

2.1.1 反向代理入门

2.1.2 根据HTTP请求的内容来控制系统的行为

根据IP地址进行控制

根据User-Agent进行控制

网址的重写

2.1.3 优化系统整体的内存使用率

例:动态页面中的请求详情

2.1.4 缓存Web服务器的应答数据

HTTP的Keep-Alive

例 内存消耗与Keep-Alive的开启/关闭

2.1.5 使用Apache模块控制处理规则

增设反向代理的判断

2.1.6 增设反向代理

使用Apache 2.2

以worker模式启动httpd

httpd.conf的配置

设定最大进程/线程数

Keep-Alive的配置

载入必要的模块

设定RewriteRule

2.1.7 进一步对RewriteRule进行设置

禁止来自特定主机的请求

对于来自搜索引擎机器人的请求使用缓存服务器

2.1.8 使用mod_proxy_balancer向多台主机分流

mod_proxy_balancer的使用示例

2.2 增设缓存服务器……Squid、memcached

2.2.1 引入缓存服务器

HTTP与缓存

通过Live HTTP Headers得知缓存效果

2.2.2 Squid缓存服务器

使用Squid搭建反向代理

Squid缓存什么

Squid的设定示例

2.2.3 使用memcached进行缓存

2.3 MySQL同步……发生故障时的快速恢复

2.3.1 万一数据库服务器停止

导致数据库停止的原因

短时间内恢复的办法

2.3.2 MySQL的同步功能的特性和注意点

单主与多从

异步数据同步

被同步的数据内容

2.3.3 同步的结构

Slave的I/O线程与SQL线程

二进制日志与中继日志

位置信息

2.3.4 搭建同步结构

同步条件

my.cnf

建立同步专用的用户

同步开始时所必需的数据

2.3.5 启动同步

Master和Slave的my.cnf文件的差异

Slave开始运行&确认

2.3.6 确认同步的状态

Master的状态确认

Slave的状态确认

2.4 MySQL的Slave+内部负载均衡器的灵活应用示例

2.4.1 MySQL的Slave的运用方法

Slave的运用策略

分发到多台Slave上

2.4.2 通过负载均衡器将请求分发到多台Slave的方法

概况图

内部负载均衡器的配置

MYSQL Slave的设定

体验将请求分发到多台Slave的负载均衡

2.4.3 内部负载均衡器的注意点……基于DSR的分发方法

2.5 选择轻量高速的存储服务器

2.5.1 存储服务器的必要性

存储服务器容易导致单点故障

存储服务器容易造成瓶颈

2.5.2 理想的存储服务器

减轻负载

2.5.3 将HTTP作为存储协议使用

轻量Web服务器的选择

利用HTTP的优势

2.5.4 遗留的问题

第3章 进一步完善不间断的基础设施DNS服务器、存储服务器、网络

3.1 DNS服务器的冗余

3.1.1 DNS服务器冗余的重要性

3.1.2 使用解析库实现冗余及存在的问题

解析库存在的问题

性能下降的危险性………以邮件服务器为例

DNS故障会造成很大的影响

3.1.3 基于服务器集群的DNS冗余

3.1.4 使用VRRP的拓扑结构

3.1.5 DNS服务器的负载分发

3.1.6 小结

3.2 存储服务器的冗余……利用DRBD实现镜像

3.2.1 存储服务器的故障排解

3.2.2 存储服务器同步的难点

3.2.3 DRBD

DRBD架构

3.2.4 DRBD的设置与启动

启动DRBD的Master服务器

启动DRBD的备份服务器

3.2.5 DRBD的故障转移

手动切换

keepalived的配置

利用daemontools来控制keepalived

3.2.6 NFS服务器故障转移时的注意事项

3.2.7 备份的必要性

3.3 网络的冗余……驱动绑定、RSTP

3.3.1 L1/L2上部件的冗余

3.3.2 故障点

3.3.3 链路冗余与驱动绑定

驱动绑定

3.3.4 交换机的冗余

链路故障时的行为

交换机故障时的行为

交换机间遭遇连接故障时的情况

3.3.5 增设交换机

实现多重冗余

3.3.6 RSTP

网桥的优先顺序及根网桥

RSTP中端口的作用

RSTP的行为

3.3.7 总结

3.4 引入VLAN……使网络更加灵活

3.4.1 基于服务器集群的高灵活性网络

3.4.2 引入VLAN的优点

交换机的有效使用

故障服务器的恢复机制…灵活使用一台备用机

使用VLAN,仅用一台备用机就能实现恢复

3.4.3 VLAN的基础知识

3.4.4 VLAN的种类

端口VLAN

标记VLAN

3.4.5 在服务器集群中的使用

不使用VLAN的拓扑结构

使用端口VLAN的拓扑结构

使用VLAN标签的拓扑结构

3.4.6 即便在复杂的VLAN结构下,也需要让物理层面的设备结构尽可能简易化

第4章 性能优化、调整Linux单个主机、Apache、MySQL

4.1 基于Linux单个主机的负载评估

4.1.1 充分发挥单个主机的性能

清楚何为性能、何为负载

4.1.2 别臆断,请监控

4.1.3 确认瓶颈的基本流程

观察load average

观察CPU、I/O是否存在瓶颈

当CPU负载较高时

当I/O负载较高时

4.1.4 何为负载

两种负载

多任务操作系统与负载

搞清负载的本来面目=知晓内核的行为

进程调度和进程状态

进程状态变迁的具体例子

进程状态迁移汇总

换算到load average的等待状态

load average表述的负载意义

4.1.5 计算load average的内核编码

4.1.6 通过load average判断CPU使用率和I/O等待时间

使用sar来查看CPU使用率及I/O等待时间

CPU的用户模式和系统模式

I/O密集型服务器的sar

4.1.7 多核CPU与CPU使用率

4.1.8 如何计算CPU的使用率

4.1.9 进程记账的内核编码

4.1.10 线程和进程

内核中的进程和线程

ps和线程

LinuxThreads和NPTL

4.1.11 ps、sar、vmstat的使用方法

ps……输出进程信息

VSZ与RSS……虚拟内存和物理内存的指标

TIME……CPU占用时间

通过ps命令查看Blocking和Busy Loop的差异

sar……查看系统报告的各项指标

sar-u……查看CPU的使用率

sar-q……查看load average

sar-r……查看内存的使用状况

减轻I/O负载及页面缓存

通过页面缓存减轻I/O负载的实施效果

将所需的数据整个放到页面缓存上

sar-W……查看交换区的吞吐状况

vmstat……查看虚拟内存的相关信息

4.1.12 找到系统负载的症结并解决

4.2 Apache的优化

4.2.1 Web服务器的优化

4.2.2 Web服务器遭遇瓶颈怎么办

4.2.3 Apache的并发处理与MPM

prefork与worker,进程与线程

从编程模型看多进程/多线程的差异

从性能的观点来看多进程/多线程的差异

一个客户端对应一个进程/线程

4.2.4 httpd.conf的配置

Apache的安全阀Ma×Clients

在prefork模式的情况下

父子进程共享内存的写时复制技术

查看写时复制时共享的内存大小

MaxRequestsPerChild

在worker模式的情况下

在系统超载的情况下,改变Ma×Clients前需要了解

4.2.5 Keep-Alive

4.2.6 Apache以外的选择

lighttpd

4.3 MySQL的调优诀窍

4.3.1 MySQL的调优诀窍

基于调优视角的分类

1服务器方面

2服务器之外的其他方面

3周边系统

本章接下来要处理的内容

4.3.2 内存相关的参数优化

缓冲的种类………优化时的注意事项1

不能分配太多……优化时的注意事项2

内存的相关参数

4.3.3 内存相关的检查工具……mymemcheck

第5章 高效运行确保服务的稳定提供

5.1 服务状态监控Nagios

5.1.1 稳定的服务运营与服务状态监控

5.1.2 状态监控的种类

1存活状态的监控

2负载状态的监控

3可用率的统计

5.1.3 Nagios概述

安装Nagios

5.1.4 Nagios的配置

配置文件

host……主机的配置

service……服务的定义

command……命令的定义

contact与contactgroup……通知对象和通知对象组

配置的测试

5.1.5 Web管理界面

5.1.6 Nagios的基本使用方法

主机和服务的定义

通知

5.1.7 实用的使用方法

可用率的测定

独立插件

5.1.8 小结

5.2 服务器资源的监控……Ganglia

5.2.1 服务器资源的监控

监控的目的

5.2.2 检测工具的讨论

5.2.3 Ganglia……面向大量节点的图表化工具

5.2.4 将Apache的进程状态图表化

在Ganglia中增加图表的方法

尝试增加多个图表

其他的自定义图表

5.3 高效的服务器管理……Puppet

5.3.1 实现高效的服务器管理的工具Puppet

5.3.2 Puppet的概要

5.3.3 Puppet的配置

节点的定义

类的定义

确认配置是否有效

5.3.4 配置文件的语法

资源的定义

资源

对各个服务器的配置进行微调

资源间的依赖关系

通过模板完成Manifest文件的定义

5.3.5 通知操作日志

5.3.6 运用

5.3.7 自动配置管理工具的利与弊

5.4 守护进程的工作管理……Daemontools

5.4.1 守护进程的异常终止

5.4.2 daemontools

使用daemontools的原因

成为守护进程的条件……在前台运行

5.4.3 守护进程的管理方法

创建守护进程

启动守护进程

停止、继续、重新启动守护进程

停用守护进程

发送信号

Keepalived……run文件的例子1

自编的监控脚本………run文件的例子2

5.4.4 daemontools的实用技巧

控制所依赖的服务的启动顺序

常用的shell函数

5.5 网络引导的应用……PXE、initramfs

5.5.1 网络引导

网络引导的特性及优势

5.5.2 网络引导的行为……PXE

5.5.3 网络引导的应用实例

负载均衡器

数据库服务器/文件服务器

维护用的引导映像

5.5.4 构建网络引导

initramfs的通用化和作用的识别

无盘结构中需要注意的事项

Master文件的安全性

5.6 远程维护……维护线路、Serial Console、IPMI

5.6.1 轻松实现远程登录

5.6.2 网络故障的应对

维护线路

交换机故障的应对

5.6.3 Serial Console

Serial Console的实现

5.6.4 IPMI

IPMI的功能

使用IPMI

5.6.5 总结

5.7 Web服务器的日志处理……syslog、syslog-ng、cron、rotatelogs

5.7.1 Web服务器日志的分拣·收集

5.7.2 分拣与收集

5.7.3 日志的分拣……syslog和syslog-ng

使用syslog进行日志的分拣

syslog-ng

5.7.4 日志的收集

Apache日志的转储……cron与rotatelogs

5.7.5 日志服务器的作用与构成

5.7.6 总结

第6章 服务后台自律的基础设施、稳健的系统

6.1 Hatena网站的内容

6.1.1 Hatena的基础设施

6.1.2 可扩展性和稳定性

反向代理

数据库

文件服务器

6.1.3 提高运营效率

安装Kickstart

软件包管理和Puppet

服务器的管理和监控

使用Capistrano部署

6.1.4 用电效率·提高资源的利用率

重视服务器每1A所发挥的性能

充分利用每台服务器的性能

不安装无用的零件

6.1.5 为了自律的基础设施而努力

6.2 DSAS的内容

6.2.1 什么是DSAS

6.2.2 DSAS的特征

一个系统容纳多个网站

使用开源软件搭建

无论切断任何地方,网络服务都不会停止

服务器增设非常方便

故障修复非常简单

6.2.3 系统架构的详情

使用驱动绑定的原因

DRBP实现故障转移时的注意事项

配置SSL加速器

扩展健康检查功能

既方便又安全地使用负载均衡器

处理会话数据

memcached

repcached

6.2.4 DSAS的未来


书查询(www.shuchaxun.com)本网页唯一编码:
e36b4c889c8918638cf41720e925d389#bec062a6e9084896b2735c888339b670#53775765#24小时365天不间断服务:服务器_基础设施核心技术_13698206.pdf