目 录
简介
服务术语解释
微服务
微服务最佳实践
微服务和基础设施
微服务和基础设施设计原则
乐高积木方法
微服务基础设施 – 乐高积木蓝图
由此产生的概念模型
微服务基础设施 – 合理的实现步骤
总结
上篇请点击《[译]基于云基础设施的微服务(上)》
乐高积木方法
微服务需要基础设施服务能遵守之前列出的关键服务相关需求。这意味一个需求基础设施服务的个人(或微服务),遵循乐高积木原则,通过使用「简单」的购物单和交付实用型服务,应该能够构建和消费基础设施功能。
基础设施服务应该有标准的积木(比如服务、存储和网络),以及由这些积木构成的附加组件(比如Web服务器、预生产环境等)。每个标准的积木和附加组件必须不做任何修改就可以满足不同的 SLA(服务级别协议)和 KPI(关键性能指标)。
例如:
Web 服务器
- 一个简单的 Web 服务器符合青铜级别
- 一个 Web 服务器符合白金级别
数据存储解决方案
- 标准数据库存储优化
- 提供最大容量
- 高可用和高实施
完整的应用程序环境
- 进一步开发应用程序
- 进行满负荷性能测试
- 为最终用户进行关键技术培训
「基于乐高积木方法购物单」的关键组件是服务级别特点。每个客户环境都是不同。然而,每个客户端都将会有一个特定的服务级别:从白金(99.999%)到青铜(99%)。当然一整套不同的非功能性需求将会影响底层的基础设施。
例如:
- 可扩展性:确保解决方案支持当前和预计的业务量。
- 以可靠性为核心:确保解决方案提供一个适当级别的鲁棒性,以支持业务流程。
- 可管理性:确保解决方案可以高效和有效的管理维护。
- 可用性:确保解决方案提供了所需的服务级别。
从铂金到青铜的服务级别和非功能性需求都可以转化为非常具体的基础设施相关的需求,从而可以定义基于乐高积木的标准基础设施组件。
以标准或预定义「行为」提供每个预组装的基础乐高积木,每个基础的乐高积木将满足一定的可用性、稳定性、性能和安全相关需求(所谓的服务特点)。
如上所述,主要有4个类别:白金、黄晶、白银和青铜,如何下图所定义(每个客户环境是不同的,因此这里提供的细节仅是范例。):
注意:这个分组和详细的业务特点仅是范例。每个客户环境是不同的,对于一些黄金级业务服务(或 IT 应用程序)可能有长达 6 小时恢复时间目标和 45 分钟恢复点目标。
在微服务的世界,基础设施服务必须可重复、自动和简单地消耗。当构造基础设施服务时,非功能性需求是关键因素,因为这些将作为功能性基础设施需求实施创建、使用、移动、扩容、缩容和删除。
微服务基础设施 – 乐高积木蓝图
根据乐高积木原则,每个使用基础乐高积木的组件会遵循不同的蓝图以满足所需的各种非功能性需求和行为。和真正的乐高积木一样,有着无数的选择以建造任何所需要的飞机、房子或城堡。唯一的限制是物理尺寸和特征。
在基础设施环境中使用乐高法则,同样的原则适用于:一套 ILB 用来创建一个预生产环境,同样也可以用来创建一个高可用的生产环境。关键是要使用标准 LIB 并在清晰的蓝图上基于目标进行构建。
由此产生的概念模型
基于微服务的基础设施必须适合企业级架构模型(这同样适用于 SOA,但也有一些关键的不同之处),覆盖就如本文所述的所有相关基础设施。
Infrastructure Lego® based approach
当使用微服务时,特别在有些方面如云环境中的分段、编排、自动化、池化和安全是团队应该考虑的关键理论能力。这样一个概念模型可以作为从 SOA 到基于微服务方法转换的一部分,协助精准的产品选择。
微服务基础设施 – 合理的实现步骤
没有客户环境能一步实现微服务(当然除非实现「绿色领地」),为了确保现有的基础设施服务可以支持和提供基于微服务的能力,应该考虑以下的四个步骤:
总结
微服务并不总是最佳选择:基于单体和 SOA 的解决方案在 IT 领域仍有(并将持续有)一席之地。然而,微服务是使用最先进技术的软件模式,并持续影响基础设施的设计、构建和运营。
从基础结构的角度来说成功的关键是使用基于遵循「塞、玩和编排」方法的乐高积木原则构建基础设施服务,实现「隐形」的微服务。
然而,通往基于微服务的基础设施布局并非直线,必须克服服务的复杂性、实践成本、现有架构以及不断变化的新环境。使用基于微服务基础设施的成功团队遵循以下四个步骤的实现计划:统一化、自动化、面向服务和编排。
原文:Microservices in cloud-based infrastructure – Paving the way to the digital future
作者:Gunnar Menzel
评论前必须登录!
注册