译者序
AWS用户广泛,产品线复杂,AWS发布的白皮书《Architecting for the Cloud-AWS Best Practices》介绍了常见场景下云架构的最佳实践,不仅对于使用AWS的用户,对于广大使用云的用户都有参考意义,新钛云服工程师特意翻译了本白皮书,供广大使用云的用户参考。
译者整理的脑图
-
摘要
本白皮书适用于在Amazon Web Services(AWS)上的构建解决方案的架构师和开发人员。本白皮书提供有关技术设计模型的架构指导和建议,以及如何应用于云计算环境中。本白皮书提供了在AWS上设计解决方案时的关键概念和差异。本白皮书还讨论了如何利用特定于云计算动态特性的属性,如弹性和基础设施自动化。这些模型可以为对选择、操作状态和实现状态进行更详细的审查提供上下文,就像《AWS Well-Architected Framework》中详细描述的那样。
-
介绍
将应用程序迁移到AWS,即使没有重大更改(称为直接迁移的方法),也可为组织提供安全且经济高效的基础架构优势。但是,为了充分利用云计算可能带来的弹性和灵活性,工程师必须改进其架构以利用AWS功能。
对于新应用程序,基于云的IT体系架构模型可以帮助提高效率和可伸缩性。这些新架构可以支撑从互联网规模数据的实时分析到具有数千个连接的物联网(IoT),或移动设备的不可预测流量的应用程序的任何内容。
无论是重新架构在本地环境中运行的当前应用程序以在AWS上运行,还是设计云原生应用程序,你都必须考虑传统环境与云计算环境之间的差异。这包括体系架构选择,可伸缩性,资源类型,自动化以及灵活的组件,服务和数据库。如果你不熟悉AWS,我们建议你查看“ About AWS”页面上的信息,以便基本了解AWS服务。
- 传统环境和云计算环境之间的差异
云计算在许多方面不同于传统的本地环境,包括灵活,全局和可扩展的容量,托管服务,内置安全性,成本优化选项以及各种操作模型。
3.1 IT资产作为可配置资源
在传统计算环境中,你可以基于理论最大峰值的估计来提供容量。这可能导致阶段性昂贵的资源闲置或容量不足。借助云计算,你可以根据需要访问尽可能多的容量,并动态扩展以满足实际需求,同时只需为你使用的资源付费。
在AWS上,可以在几秒钟内实例化服务器,数据库,存储和更高级别的应用程序组件。你可以将这些视为临时资源,而不受固定和有限IT基础架构的不灵活性和限制。这会重置你处理变更管理,测试,可靠性和容量规划的方式。这种方法的改变通过引入流程中快速失败和快速迭代的能力来鼓励体验。
3.2 全球,可用和可扩展的容量
使用AWS的全局基础架构,你可以将应用程序部署到最符合你要求的AWS可用区域(例如,与最终用户的接近程度,合规性,数据驻留限制和成本)。对于全局应用程序,你可以使用Amazon CloudFront内容交付网络(CDN)在全球范围内减少到终端用户的延时。这也使得跨多个数据中心操作生产应用程序和数据库变得更加容易,从而实现高可用性和容错性。AWS的全球基础架构以及根据需要配置容量的能力,使你可以根据对应用程序的需求和服务范围的扩展来对你的基础架构进行不同的思考。
3.3 更高级的托管服务
除了Amazon Elastic Compute Cloud(Amazon EC2)的计算资源外,你还可以访问各种存储,数据库,分析,应用程序和部署服务。由于这些服务可立即供开发人员使用,因此可减少对内部专业技能的依赖,并使组织能够更快地交付新解决方案。管理的AWS服务可以降低运营复杂性和成本。它们还具有可扩展性和高可用性,因此可以降低实施风险。
3.4 内置安全性
在传统IT环境中,基础架构安全审核可以是定期和手动过程。相比之下,AWS Cloud提供的治理功能可以持续监控IT资源的配置更改。AWS的安全性是最高优先级,这意味着你可以从为满足大多数安全敏感组织的要求而构建的数据中心和网络体系结构中受益。
由于AWS资源可使用工具和API进行编程,因此你可以将安全策略正式化并嵌入基础架构设计中。由于能够启动临时环境,安全测试现在可以成为持续交付流水线的一部分。最后,你可以利用各种云原生的AWS安全和加密功能,这些功能可以帮助你实现更高级别的数据保护和合规性。
3.5 成本架构
内部部署解决方案的传统成本管理通常不与提供服务紧密耦合。在配置云计算环境时,优化成本是架构师的基本设计租户。选择解决方案时,你不仅应关注功能架构和功能集,还应关注所选解决方案的成本配置文件。
AWS提供细粒度计费,使你能够跟踪与解决方案的所有方面相关的成本。有一系列服务可帮助你管理预算,提醒你产生的费用,并帮助你优化资源使用和成本。
3.6 AWS上的运维
在AWS上运行服务时,有几种常见的运维模型:
- 迁移的应用程序,维护现有的传统操作模型,利用通过API管理基础架构作为代码的能力,从而实现可靠且可重复的构建过程,从而提高可靠性。
- 重构的解决方案利用更高级别的操作流程自动化作为支持服务,例如, AWS Auto Scaling和自我修复架构。
- 针对云运营重新构建和设计的解决方案通常通过DevOps流程实现全面自动化,以实现交付管道和管理。
支持这些转变不仅会改变所使用的技术,还会改变开发和运维团队管理方式的文化变化。
AWS提供工具,流程和最佳实践,以支持运维实践的转变,从而最大限度地利用云计算带来的收益。
说明:
本文由新钛云服运维工程师傅雨斌翻译,新钛云服拥有八名认证的AWS工程师,在AWS使用和维护方面拥有丰富的经验,已经为多家用户提供AWS上云支持。
原文链接:
https://d1.awsstatic.com/whitepapers/AWS_Cloud_Best_Practices.pdf