第一章 服务器及基础设施搭建入门
系统的冗余可以通过以下步骤实现
1.设想可能发生的故障
2.根据故障准备备份设备
3.部署故障发生时切换到备份设备的工作机制
常用的健康检查方式
1.ICMP监控(三层)
2.端口监监控(四层)
3.服务监控(七层)
keepalive+LVS实现 负载均衡和冗余
追求设定灵活性就用七层交换机,追求性能就用四层交换机
虚拟路由协议VRRP(Hot Standby Routing Protocol)
第二章 引入反向代理
反向代理的一些用处
1.根据客户端IP地址,仅允许特定的IP地址访问服务器
2.通过查看客户端的User-Agent用户代理,Web服务器可以根据客户端的User-Agent对客户端返回合适的数据
比如过滤掉爬虫
3.网址的重写,把复杂的地址写成一个容易读懂的地址
4.动态文件,静态文件分离
客户端和反向代理保持keep-avlie,反向代理使用短连接访问后端的web服务器,这样web服务器就不用长久的
保存会话,可以节省很多内存
Web服务器对HTTP 304(Not Modified)做出的处理
1.取得从客户端发来的 If-Modified-Since的更新时间
2.与本地文件的时间进行对比
3.判断客户端所保持的缓存文件是否需要进行更新
对此
客户端可以省略从网上下载图片数据的步骤
服务器可以省略将文件传送给客户端的步骤
Squid缓存
1.若Squid接到客户端的HTTP请求,就向后端服务器索取请求的文件
2.Squid将服务器取得的文件缓存到本地
3.当其 他客户端发送请求时,Squid将确认缓存的有效性,若缓存有效则将缓存直接返回给客户端
Mysql主从同步
理想存储服务器
1.在大量访问到来时也依然快速不会出现瓶颈
2.能避免针对多台服务器的文件同步工作
3.能避免单点故障的出现
4.若能用开源软件实现就更好了
第三章 进步一完善不间断的基础设施
DNS冗余
1.利用解析库进行冗余,有降低性能的风险(/etc/resolv.conf)
2.利用服务器集群实现DNS的冗余
利用VRRP的拓扑结构
DNS服务器的负载分发
存储服务器的同步
网络的冗余
驱动绑定,RSTP
VLAN
容易增加新的服务器
当服务器发生故障时,能立刻转移到备用机
某一个特定功能的服务器可作为其他功能的服务器使用
端口VLAN(基于端口来设置 VLAN ID)
标记VLAN(将VLAN ID标记到以太网帧中)
第四章 性能优化调整
将一台机器的性能发挥到最高,ps,sar,vmstat等工具监控系统
负载均衡的优化,线程数调整
mysql的优化,缓冲区调整
第五章 高效运行
服务状态监控Nagios
服务器资源监控Ganglia
高效的服务器管理Puppet
守护进程的工作管理Daemontools
网络引导的应用PEX,initramfs
通过PEX bios可以将启动交给一个代理的机器,然后由代理的机器读取BIOS相关的信息,通过HDCP获取IP,通过TFTP获取文件,通过Boot Loader启动
远程维护
服务器是放在机房的所以需要有远程管理通过远程管理卡的方式即使机器出现故障了也能登陆,
一般是通过商用线路登陆的,如果商用线路出故障了就通过维护线路登陆
如果设备故障不能通过网络登陆时,使用Serial Console串口的方式也可以继续管理
如果内核失去控制了,则Serial Console也不能登陆了可以通过IPMI(Intelligent Platform Management
Interface)网络通知周遭设备的电源来管理
服务器的日志处理
syslog和syslog-ng
日志转储cron和rotatelogs
第六章 服务后台
机房租的机器,350多台
突入新服务到基础设施生产环境时,应注意以下几点
1.硬件的组装和配置
2.安装系统
3.安装并配置应用程序所需的库等
4.配置监控等其他基础设施所需的运行准备
5.根据服务器的作用不熟应用和配置数据库
6.不熟负载均衡器,以启动生产环境