祗疼妳一个 发表于 2024-5-12 16:26:00

云计算 - 阿里云最佳云上实践介绍 卓越架构

相较传统IDC,云计算的快速迭代增加了维持良好架构的难度。云应用需关注稳定性、安全性、性能和成本。阿里云通过多年经验,发展了一套名为"Alibaba Cloud Well-Architected Framework"的优秀架构框架,以帮忙用户构建出色的云架构。
关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦呆板人智能实行室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。
https://img2024.cnblogs.com/other/488581/202403/488581-20240301102743175-1025870478.png
一、卓越架构介绍

相比于传统IDC情况,云计算的根本办法和服务在不停快速迭代和演进,对云用户而言,在上云、用云、管云过程中连续维持良好的云上架构变得极具挑战。对云上应用来说,稳定、安全、性能、成本是架构计划中最通用领域的抽象,也是组织层面最需要关注的几个维度。
基于多年服务各行各业客户的经验总结,我们将阿里云上的架构计划最佳实践总结为一系列的方法论和计划原则,形成阿里云卓越架构框架(Alibaba Cloud Well-Architected Framework),以帮助云用户构建良好直至卓越的云上架构。
https://img2024.cnblogs.com/other/488581/202403/488581-20240301102743444-1538143713.jpg
阿里云卓越架构包罗以下五个架构最佳实践支柱:

[*]安全合规:识别企业内部、外部的安全要求和监管诉求,在云情况中针对网络安全、身份安全、主机安全、数据安全等全方位地进行规划和实施,同时连续对威胁进行检测和快速响应。
[*]稳定性:无论在何种情况都无法制止单个组件故障的发生。稳定性的目标就是要尽量降低单个组件故障对业务带来的整体影响。该支柱侧重于怎样让业务系统使用现代云平台的根本办法达到高可用,做到面向失败计划,具备肯定容灾性的能力。同时把控应用系统的变更流程、部署架构、设置规范等,制定企业应用治理规范,设定应用层面的治理尺度。
[*]成本优化:通过技术手段相识云资源的成本分布,帮助企业平衡业务目标与云上成本,通过充实高效使用云服务来构建业务应用,尽大概提升云情况和业务需求之间的契合度,通过连续优化来制止资源浪费,减少不须要的云上开支并提升运营效率。
[*]卓越运营:侧重于应用研发态、运行态干系工具与系统的构建和使用,同时也需要考虑组织内怎样对应用、工作负载、资源、事件等进行响应,定义一样平常操作流程,指引企业构建自己的运营模型。
[*]高效性能:根据性能监控指标主动触发弹性伸缩能力,通过云平台的资源储备应对流量高峰,建立完备的可观测性体系帮忙定位性能瓶颈。通过性能测试手段建立性能基线,验证架构计划目标并连续优化。
基于这五大支柱,卓越架构提供相应的计划原则和最佳实践,以及可落地的方案。同时,卓越架构还提供了免费的架构评估工具和度量模型,来评估当前架构计划与期望值的差距,并提供相应的改进指引和方案。在计划和实施过程中,阿里云提供了专家服务和认证的合作伙伴,帮忙架构的演进。
阿里云卓越架构框架面向的是首席技术官(CTO)、架构师、运维、安全、研发等角色。通过相识卓越架构中定义的最佳实践和解决方案,组织中的这些职能角色可以大概不停的将应用架构和卓越架构中的最佳实践进行比较,并不停进行架构的迭代和改进,从而降低风险、控制成本、提升效率,为业务的高速发展提供坚实的根本。
二、安全合规

2.1 概述

安全管理的目的是风险管理,企业选择将业务迁移到云上,并不意味着安全风险的降低,也并不表示企业的安全要由云供应商来负担。
云安全的责任模型是共担的责任模型,基于云的客户应用,云供应商要保障云平台自身安全并提供相应的安全能力和产品给云上的客户。客户则负责基于云供应商提供的服务或原子化能力构建保障应用系统或业务的安全体系。
随着企业上云的节奏越来越快,以及网络攻击的成本越来越低,安全的建设已经跟不上业务的发展。所以更应该在上云之初就规划安全体系的建设和计划,不要等到业务已经运行起来后在考虑安全建设。
2.2 安全责任模型

基于阿里云的客户应用,其安全责任由双方共同负担:阿里云要保障云平台自身安全并提供安全产品和能力给云上客户,客户负责基于阿里云服务构建的应用系统的安全。
安全责任模型示意如下图所示:
https://img2024.cnblogs.com/other/488581/202403/488581-20240301102745206-649349033.png
阿里云负责根本办法(包括跨地域、多可用区部署的数据中央,以及阿里云骨干传输网络)和物理设备(包括计算、存储和网络设备)的物理和硬件安全,并负责运行在飞天分布式云操作系统之上的虚拟化层和云产品层的安全。同时,阿里云负责平台侧的身份管理和访问控制、监控和运营,从而为客户提供高可用和高安全的云服务平台。
客户负责以安全的方式设置和使用各种云上产品,并基于这些云产品的安全能力以安全可控的方式构建自己的云上应用和业务,保障云上安全。阿里云基于阿里巴巴集团多年攻防技术积累,为客户提供云原生的安全服务,保护客户的云上业务和应用系统。
2.3 云平台数据安全和隐私保障体系

数据安全是为了推动数据可以被高效流动而核心打造的是一套信任机制。不碰用户数据是阿里云的红线,也是最低要求。阿里云数据安全体系的核心是赋予数据权利和义务,让其所有者、共享者、监管者可以基于这些信任,开释数据的价值,这是阿里云数据安全的理念。
阿里云已经完整覆盖了基于地域和可用区概念,构建的根本办法和平台层的数据风险收敛能力。平台之上,围绕安全、合规、隐私三大命题,阿里云为用户提供原生的、高度主动化、高透明度的保护能力,致力构建值得信任的安全计算情况,促进数据在被保护的状态下流动起来、使用起来。信任的根本是明确其中的权利和义务。在分类分级的前提下,我们对数据的所有权、归属权、使用规范、删除权等做了细粒度约定,并通过法律法规、资质认证等多种手段保障权利和义务的履行。因此,阿里云也是亚太区拥有最全合规和隐私资质的云厂商。
https://img2024.cnblogs.com/other/488581/202403/488581-20240301102745829-137537094.png
2.4 规划和计划

安全是需要计划和规划的,应在构建基于云或当地数据中央的同时,建设安全系统和干系控制措施,建立配套安全管理流程和机制,建立安全意识管理体系等。并将技术控制措施、管理流程、职员组织配套的融入云根本办法的构建、业务开辟,应用上线和一样平常运营当中。
https://img2024.cnblogs.com/other/488581/202403/488581-20240301102746347-2021921853.png
三、稳定性

系统稳定性是指系统在运行过程中面对各种非预期事件影响下可以大概连续提供可靠服务的能力,是系统建设的重中之重。但随着各公司业务范围的扩展和软件系统架构连续迭代升级,系统的复杂度随之增加,面对更多的非预期事件风险,如各类软硬件故障、错误的变更、突发流量,甚至到光纤挖断、自然灾害等引起的整个机房不可用情况,怎样保障系统稳定性具有很大挑战。
一个稳定的分布式系统需要可以大概快速适应变革,实时发现和解决问题,并且可以大概保持系统的同等性和可靠性。稳定性通常包罗系统可用性、可靠性、可观测性、可运维性、可扩展性、可维护性等。使用云计算平台服务可以更好的构建系统稳定性,例如云计算平台可以根据系统的现实需求,动态分配和开释计算资源,使得系统更容易扩展,降低系统负载压力,从而进步系统的可扩展性。再者云计算平台会提供冗余存储和备份能力,制止系统因为硬件故障或其他缘故原由导致的停机或数据丢失。这种备份机制可以进步系统的可靠性。
3.1责任共担模型

阿里云平台提供高可用的根本办法,并提供应用稳定性干系工详细系。用户可以基于阿里云提供的产品及本框架中定义的最佳实践入手,来建设云上应用的稳定性。
https://img2024.cnblogs.com/other/488581/202403/488581-20240301102746683-901468221.jpg
在分布式系统中,需要考虑的稳定性问题比较复杂,贯穿软件系统计划态、研发态、运维态、运行态,覆盖从IaaS、PaaS到上层SaaS系统,所有这些都大概会影响系统的稳定性。为了确保系统可以大概连续稳定地工作,建议遵循以下计划原则。
3.2面向失败的架构计划原则

众所周知,系统异常事件是不可制止的,如网络耽误、硬件故障、软件错误、突峰流量等,建议在系统计划阶段就要从这些异常事件引起的系统实行“失败”出发,提供冗余、隔离、降级、弹性等能力,旨在确保系统的高可用性和高可靠性,以应对不可制止的故障和不测发生。
3.3面向精细的运维管控原则

由于业务的扩展和系统服务进一步拆分,分布式系统的复杂度剧增。再加上产品迭代加速,版本繁多,同时某些业务对实时性有较高要求,运维的不确定性和复杂性大幅增加。建议通过精细化的管理和可观测手段,如版本控制、灰度发布、监控诉警、主动巡检等手段,旨在进步运维效率、确定性和稳定性。
3.4面向风险的应急快恢原则

在一些场景下,即使计划了各种技术手段去进步系统的冗余、保持业务的高可用,但还是制止不了生产系统故障的发生,所以需要面对故障建立一个高效的故障应急流程机制和稳定的技术平台,实现故障风险实时发现、应急团队有用协同、处理过程正确记录、故障快速止损和恢复以及后续故障复盘,旨在进步故障应急效率,减小故障影响,降低类似故障的再次发生,提升系统整体高可用性。
基于稳定性支柱计划原则,整体稳定性计划方案可参考如下:
https://img2024.cnblogs.com/other/488581/202403/488581-20240301102747206-540220833.jpg
3.5 架构计划原则

软件系统从所有的功能都在一个应用步伐内运行的单体应用架构,到差别的功能模块分别部署在差别的服务器上的传统分布式应用架构,再到服务细分通过轻量级的通信机制进行互相调用的微服务架构,到现在将云计算、容器化、微服务架构等技术结合起来的云原生架构。在软件系统架构演进中不变的是系统的根本属性,包罗存储、计算和网络,变的是存储、计算和网络的实现方式和规模,往大规模、高性能、高可靠、易扩展等方向迭代演进,所以对架构稳定性提出了更高的要求。
系统可预见的稳定性风险包罗软硬件故障和不可预期的流量,小到线程级风险,大到地域级灾难,从此出发可通过容灾、容错、容量三方面建立系统架构稳定性。
变更计划原则

在企业的运维管理与运行过程中,就会有变更产生。变更是指添加、修改或删除任何大概对服务产生直接或间接影响的内容。当变更失败时大概会带来严重结果:业务停止、客户舆情等等一系列问题。为了降低变更带来的业务风险,需要遵循变更计划原则:可灰度、可监控、可回滚。
应急响应机制

应急响应机制的关键点在于事件发生后,有尺度的操作流程和动作。阿里巴巴在已往十几年的安全生产过程中,沉淀了一套故障应急响应机制,简称应急响应1-5-10。是指在1分钟内发现故障,5分钟内组织干系职员进行初步排查,10分钟内开展故障恢复和处理工作。企业在计划应急响应机制时,可以参考该方式明确响应期间的尺度动作和流程,确保在事件发生时,干系干系人都可以大概明确自身职责和所需要接纳的措施。
演练常态化

故障演练提供了一种端到端的测试理念与工具框架,本质是通过主动引入故障来充实行证软件质量的脆弱性。从提前发现系统风险、提升测试质量、完善风险预案、加强监控诉警、提升故障应急效率等方面做到故障发生前有用预防,故障发生时实时应对,故障恢复后回归验证。基于故障本身打造分布式系统韧性,连续提升软件质量,增强团队对软件生产运行的信心。故障演练可分为方案验证的容灾演练、稳定性验收的红蓝攻防,以及故障应急验证的突袭演练。
四、成本优化

云计算可以大概为企业IT根本办法带来敏捷性和效率提升,随着云上业务体量和业务场景复杂度不停增加,企业在云上资源设置不合理或设置过渡的征象广泛存在。与此同时,企业在多组织成本管理效率、成本可控、平衡业务目标与成本等方面均面临巨大挑战。
成本优化支柱提供了云上成本管理及优化的计划原则和最佳实践,帮助企业高效地使用云服务来构建业务应用,减少不须要的开支并提升运营效率,让企业在云上更具经济效益。成本优化并不意味着只追求低价格,在过程中需要进行须要的衡量取舍,关键在于提升成本管理效率、合理选择云资源及制止成本浪费,并在业务目标、安全合规、稳定性等方面与成本之间达成平衡。
成本优化贯穿企业整个上云用云全生命周期,本支柱从云财政规划及管理、成本可视化及分摊、成本监控、云服务及计费方式选择、应用负载成本优化等方面进行论述,为企业在云上以最优成本达成业务目标提供深入指导。
“云成本管理与优化”不是一蹴而就的项目,是一个涵盖企业上云用云全生命周期,关系到企业内部管理机制的体系化工程,是一个反复迭代和连续运营的过程。
根据FinOps官网《What is FinOps》的描述,“FinOps 是一种不停发展的云财政管理学科和文化实践,通过帮助工程师、财政、技术和业务团队协作制定数据驱动的支出决议,使组织可以大概获得最大的业务价值。”
FinOps 是“Finance”和“DevOps”的合成词,强调业务团队与工程师团队之间的沟通和协作。
FinOps通过Inform、Optimize、Operate三个生命周期阶段实现云成本的可视、优化与连续运营,鼓励实践6大FinOps原则,将众多FinOps能力划分为6大领域,终极通过Crawl(爬行)、Walk(行走)、Run(奔跑)3个程度来衡量实践的成熟度。
“FinOps”在行业中常见的别名有 “云成本管理(cloud cost management)”、“云成本优化(cloud cost optimization) ”、 “云财政管理(cloud financial management)”等。
阿里云云成本管理与优化框架

阿里云在FinOps核心理念根本上,融合自身实践经验,提出更加细化落地的本土化“云上成本管理实施框架”,供企业客户参考实施。
https://img2024.cnblogs.com/other/488581/202403/488581-20240301102748392-756532025.png
云上成本管理贯穿上云用云全生命周期

从企业上云及用云的进程看,大致可以分为用云计划、用云实行、监控分析、成本优化等阶段,成本管理贯穿各个阶段,每个阶段的关注点各有差别。
用云计划阶段:场景包括企业首次上云、增量上云、存量复购。
用云实行阶段:场景包括采购实行、用云管云规则实行(包括财政规则设置、资源配额设置等)、商务履约实行(包括对账、充值、开票等)。在用云实行阶段,从财政管理和资源管理两个视角做好成本管理。
监控分析阶段:对应FinOps的Inform阶段,重要解决成本分摊与成本可视化问题。
成本优化阶段:对应FinOps的Optimize阶段,重要通过计费方式优化、资源使用优化和架构优化来落地实行。
连续运营:云上成本管理是一个反复迭代和连续运营的过程,企业应连续循环以上四个阶段,形成长效运作机制,使云上成本可以有用管控、连续优化。
五、卓越运营

云计算可以大概为企业IT根本办法带来敏捷性和效率提升,随着云上业务体量和业务场景复杂度不停增加,企业在云上资源设置不合理或设置过渡的征象广泛存在。与此同时,企业在多组织成本管理效率、成本可控、平衡业务目标与成本等方面均面临巨大挑战。
成本优化支柱提供了云上成本管理及优化的计划原则和最佳实践,帮助企业高效地使用云服务来构建业务应用,减少不须要的开支并提升运营效率,让企业在云上更具经济效益。成本优化并不意味着只追求低价格,在过程中需要进行须要的衡量取舍,关键在于提升成本管理效率、合理选择云资源及制止成本浪费,并在业务目标、安全合规、稳定性等方面与成本之间达成平衡。
成本优化贯穿企业整个上云用云全生命周期,本支柱从云财政规划及管理、成本可视化及分摊、成本监控、云服务及计费方式选择、应用负载成本优化等方面进行论述,为企业在云上以最优成本达成业务目标提供深入指导。
构建运营模型

运营模型是指组织和业务团队使用云计算平台支持业务的过程中,根据业务需求、企业架构、组织文化、现有的技术水平和工具等构建的模型。每个企业的运营模型都是独特的,本文将介绍四种常见的运营模型以供参考。
构建运营模型的目的是为了实现更高效、更机动的基于云计算平台的管理和运营。详细来说,构建运营模型的目的包括以下几个方面:
1. 实现快速部署和扩容:通过云计算平台构建尺度的发布工程,实现快读部署和扩容,进步服务的响应速度和机动性。
2. 提升决议的有用性:通过构建可观测系统,从而以高度统筹与整合的方式将业务数字化操作所产生的可观测数据进行反馈并创造决议循环,进步组织决议有用性。
3. 优化资源设置和使用效率:通过对云计算平台中各种资源(如计算、存储、网络等)的实时监控,配合一些优化措施,可以大概进步资源的使用效率,降低云服务的成本。
4. 进步业务的稳定性和可靠性:基于云平台提供的监测和专业技术能力,可以帮忙企业提升故障响应速度,缩短故障诊断时间,进步业务的稳定性和可靠性。
云卓越中央CCoE运营模型

云卓越中央CCoE是驱动云转型的最佳实践。企业通常至少有一个云管理团队,或由干系负责人组建一个云卓越中央(Cloud Center of Excellence,简称CCoE)负责规划和对接上云的整体方案,包括在组织层面确认上云的整体计划、步骤,以及收集组织的详细需求。
https://img2024.cnblogs.com/other/488581/202403/488581-20240301102749006-1040806700.png
云卓越中央运营模型组织通常包括:

[*]企业管理层:企业管理层需要明确云在公司的战略职位以及各个团队应该怎样使用云。
[*]云卓越中央:该团队可以是虚拟的组织,计划云服务的供给模式和管理体系,并提供相应的技术准备。其中的成员包括:

[*]架构师和专业技术职员,负责上云架构计划和业务上云迁移工作;
[*]安全、合规等领域专家,负责计划企业IT治理方案、预估风险和制定治理规则;
[*]财政专家,负责制定财政的管理流程和成本分摊规则。

[*]云管理团队:在企业业务全面上云之后,连续优化云上架构,为新业务提供云上情况。建立企业云上运维体系,搭建运维平台,以及通过主动化运维的方式,对云上情况进行连续治理和管理。根据新业务需求,分配所需云资源和所需权限,并对资源进行初始化设置后交付。应用团队只需用云,无需关注根本办法搭建。
六、高效性能

性能度量了系统在单元情况内承载工作负载的效率,系统性能通常可以由 QPS、并发和RT(响应时间)等典范指标来衡量。在传统 IT 情况中,系统的容量评估和规划是系统计划的重要环节,通常会基于系统对峰值负载表现出来的性能承载能力来给系统选择符合的节点数量规划,在双活系统中考虑到 failover 会需要给单节点计划更大的冗余,对于过载的场景也需要有过载控制干系功能模块来制止整体宕机。这个计划的环节是相对固定和长周期的工作,因为往往节点的部署和交付都是相对长周期的工作。
在云的根本办法情况中,机动的弹性功能很好地解决了传统 IT 情况中的痛点,将容量评估和线上扩容变得相对简单,同时也为高性能计划带来了更多选项和复杂性。除了计划层面的容量评估和机动弹性,实现层面的性能测试、性能监控和性能优化之外,充实发挥云产品因为技术迭代带来的性能红利同样成为高性能系统需要考量的重要因素。本章节会全面描述基于云根本办法的高性能系统计划、实施和优化等环节,包括如下重要内容:

[*]高性能架构计划:包括高性能架构常见计划准则、业务适应规格和范例、可伸缩和可扩展、性能层面部分架构计划最佳实践和挑战和注意事项等内容。
[*]性能测试:包括性能测试介绍、性能测试的适用场景和性能测试最佳实践等内容。
[*]性能监控:包括为什么需要性能监控、什么是性能监控和性能监控最佳实践等内容。
[*]常见性能优化手段:包括弹性计算优化、网络优化、数据库优化和架构优化等内容。
性能是系统的一个重要指标,如果性能无法达到用户预期,会造成大量的用户流失。而很多时间性能问题和系统最初的架构计划干系(固然系统架构是可以连续演进和迭代的),任何架构计划都必须考虑大概带来的性能问题。
因为性能问题几乎无处不在,所以优化性能的手段也非常多,从用户浏览器到数据库,影响用户请求的所有应用干系环节都可以进行性能优化。随着云计算在IT支出占比的不停提升,越来越多的用户核心业务系统跑在云上,云的架构计划和选型也对性能非常重要。基于云的特点,云架构中有关性能计划的方面,有以下注意事项和根本原则:
有用的云资源选型

作为一个软件系统,应用层面有很多性能优化和架构计划的考虑点,但是一个系统的性能基石其实是底层计算和存储资源的性能,这个是原子能力。当系统使用的计算和存储资源性能越好,越有利于上层应用进行整体性能调优和优化,所谓“工欲善其事必先利其器”。
在大规模分布式系统不停发展的趋势下,计算场景和对算力的需求越来越丰富。比如在很多通用计算的场景下,最关心的其实是计算集群的规模,对计算节点本身的单节点能力并没有高要求(比如短时大量计算请求的峰值场景);而在现在火热的AI模型训练场景下,则必须使用类似A100 GPU计算卡的裸金属呆板来快速满足大规模AI训练的要求。同时云资源大都是按可用区维度进行部署的,一旦选择可用区进行大量资源部署后迁移和改造成本会很高,因此选择有用的可用区也非常重要。在选择可用区时,需要综合考虑延时,库存,资源范例等因素。
即在场景越来越丰富的情况下,云资源的资源选型从一开始就能很大程度影响终极的系统性能。因此从云架构的现实角度来看,云资源的选型非常重要,详细选型的原则可以参考评估符合的云服务。
可伸缩、可扩展的云架构

大型系统需要面对大量用户的高并发访问和存储海量数据,不大概只用固定数量的服务器来处理全部用户请求,如许既不经济,也没有办法有用应对机动的业务访问。通过集群的方式将计算资源和存储资源等构成一个整体提供服务,在需要的场景下,可以实时通过调整计算和存储资源来缓解高并发带来的计算和存储压力,从而实现在访问峰值场景下可以向用户有用提供稳定的服务,在访问低谷的时期又可以开释不须要的资源或保持系统的低位运行来节省IT支出。
对于一个严格计划的系统来说,存在差别功能的计算节点,如应用服务器集群、缓存服务器集群、数据库集群等。应用服务器集群如果是无状态的场景下(数据生存在别的的节点上),那么伸缩呆板是比较简单直接的;对于缓存服务器集群来说,新到场的计算节点则需要进行干系缓存刷新或预热等来保证数据的可访问性;对于数据库来说,实时的伸缩是比较困难的,需要提前做好数据备份和数据同步等方式,辅助路由手段等提升数据库集群的整体可用性和性能。
云上架构计划的部分最佳实践

在云计算高度发展的今天,公共云上已经运行了大量的核心业务系统。这些业务系统从计划到逻辑等方面都考虑了云本身带来的便利性,同时公共云的发展也不停吸取这些业务系统的需求来不停优化自身的产品计划,并推出更适配业务需求的云产品。因此在一些比较有特点的场景下形成了最佳实践,借助这些最佳实践预期可以有用提升云架构计划初期的架构计划能力,提升系统整体性能,详细可以参考每个云产品文档中的最佳实践干系内容,以及阿里云最佳实践频道。
关注架构计划的注意事项

性能并不需要盲目地追求极致,在高性能架构计划的过程中,还需要关注性能计划中的一些挑战和注意事项,制止引起不须要的资源浪费和研发投入。详细可以参考挑战和注意事项。
关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦呆板人智能实行室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。
如有帮助,请多关注
TeahLead KrisChang,10+年的互联网和人工智能从业经验,10年+技术和业务团队管理经验,同济软件工程本科,复旦工程管理硕士,阿里云认证云服务资深架构师,上亿营收AI产品业务负责人。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 云计算 - 阿里云最佳云上实践介绍 卓越架构