目录
典型的云技术架构包括大量灵活的部分,这些部分应对IT资源和解决方案的不同使用要求。本篇文章介绍的每种机制都完成一个特定的运行时功能,来支持一个或多个云特性。
本章描述了以下特殊的云机制:
自动伸缩监听器
负载均衡器
SLA监控器
按使用付费监控器
审计监控器
故障转移系统
虚拟机监控器
资源集群
多设备代理
状态管理数据库
可以把上述特殊云机制看作对基础设施的扩展,它们能以多种方式组合为不同的和定制的技术架构的一部分!
(1)
(2)
(3)
自动伸缩监听器(automated scaling listener)机制是一个服务代理,它监控和追踪云服务用户和云服务之间的通信,用以动态自动伸缩。
自动伸缩监听器部署在云中,通常靠近防火墙,自动追踪负载状态信息。负载量可以由云用户(前端)产生的请求量或某种类型的请求引发的后端处理需求量决定。例如:少量的流入数据可能会导致大量的处理。
对于不同的附载波动条件,自动伸缩监听器可以提供不同类型的响应:根据云用户事先定义的参数,自动伸缩IT资源(通常称为自动伸缩(auto-scaling))或者负载超过当前阈值或低于已分配资源时,自动通知云用户【图8-1】。采用这种方式,云用户能选择调节它当前的IT资源分配。
不同的云提供者对作为自动伸缩监听器的服务代理有不同的名字。
水平扩展的常见方法就是把负载在两个或更多的IT资源上做负载均衡,与单一IT资源相比,提升了性能和容量。负载均衡器(load balancer)机制是一个运行时代理,其逻辑就是基于这个思想。
负载均衡器可以执行一组特殊的运行时负载分配功能,包括:
非对称分配(asymmetric distribution):较大的工作负载被送到具有较强处理能力的IT资源。
负载优先级(workload prioritization):负载根据优先等级进行调度、排队、丢弃和分配。
上下文感知分配(content-aware distribution): 根据请求内容的指示把请求分配到不同的IT资源。
负载均衡器被程序编码或者被配置成含有一组性能和QoS规则与参数,一般目标是优化IT资源的使用,避免过载并最大吞吐量。
负载均衡机制可以是:
多层网络交换机
专门的硬件设备
专门的基于软件的系统(在服务器操作系统中比较常见)
服务代理(通常由云管理软件控制)
负载均衡器通常在位于产生负载的IT资源和执行负载处理的IT资源之间的通信路径上。这个机制可以被设计成一个透明的代理,保持对云服务用户不可见,或者设计成一个代理组件,对执行负载的IT资源进行抽象。
SLA监控器(SLA monitor)机制被用来专门观察云服务的运行时性能,确保它们履行了SLA中公布的约定QoS需求【图8-7】SLA监控器收集的数据由SLA管理系统处理并集成到SLA报告的标准中。例如当SLA监控器报告有云服务“下线”时,系统可以主动地修复或故障转移云服务。
虚拟服务器的标准SLA定义了最低的IT资源可用性为99.95%,用两个SLA监控起来记录可用性:一个是基于轮询代理,另一个是基于常规的监控代理。
按使用付费监控器(pay-per-use monitor)机制按照预先定义好的定价参数测量基于云的IT资源使用,并生成使用日志用于计算费用。
一些典型的监控变量包括:请求/响应消息数量、传送的数据量、带宽消耗。
按使用付费监控器收集的数据由计算付款费用的计费管理系统进行处理。计算管理系统机制将在第九章讲述。
审计监控器机制用来收集网络和IT资源的审计记录数据,用以满足管理需要或者合同义务,有时这也是强制性要求的。【图8-15】描绘了一个实现为监控代理的审计监控器,它截获“登录”请求,在日志数据库中存储请求者的安全证书,以及成功和失败的登录尝试,以供今后审计报告之用。
故障转移系统(failover system)机制通过使用现有的集群技术提供冗余的实现来增加IT资源的可靠性和可用性。故障转移系统会被配置成只要当前活跃的IT资源变得不可用时,便自动切换到冗余的或待机IT资源实例上。
故障转移系统通常用于关键任务程序和可重用的服务,这些程序和服务可能成为多个应用程序的单一失效点。故障转移系统可以跨越多个地理区域,这样每个地点都能有一个或多个同样IT资源的冗余实现。
故障转移系统有时会利用资源复制机制提供冗余的IT资源实例,主动监控这些资源实例以探测错误和不可用的情况。
故障转移系统有两种基本的配置:
主动-主动:IT资源的冗余实现会主动地同步服务工作负载【图8-17】。在活跃的实例之间需要进行负载均衡。当发现故障时,把失效的实例从负载均衡调度器中移除【图8-18】,在发现失效时,仍然保持可运行的IT资源就会接管处理工作。【图8-19】
主动-被动:待机或非活跃的实现会被激活,从变得不可用的IT资源处接管处理工作,相应的工作负载就会被重定向到接管操作的这个实例上。【图8-20至图8-22】
虚拟机监控器(hypervisor)机制是虚拟化基础设施的最基础的部分,主要用来在物理服务器上生成虚拟服务器实例。虚拟机监控器通常限于一台物理服务器,因此只能创建那台服务器的虚拟映像【图8-27】。类似地,虚拟机监控器只能把它自己创建的虚拟服务器分配到位于同一底层物理服务器上的资源池里。虚拟机监控器限制了虚拟服务器的管理特色,例如增加虚拟服务器的容量或关闭虚拟服务器。VIM提供了一组特性来管理跨物理服务器的多虚拟机监控器。