01
回顾上云成功的旅程
在前两篇文章中,详细讨论了两个主题:
第一篇《奇瑞捷豹路虎上云历程和深度优化之道 1 – 合理精简》主要介绍了奇瑞捷豹路虎汽车有限公司(以下简称: 奇瑞捷豹路虎)SAP 系统迁移上云过程中面临的最主要困惑 —— 如何确定和选择云上资源?以及具体如何做正确选择的历程。
第二篇《奇瑞捷豹路虎上云历程和深度优化之道 2 – 清理和标准化》主要聚焦奇瑞捷豹路虎 SAP 系统迁移上云之后的情景,以及面对新的资源管理模式,奇瑞捷豹路虎团队展开深度优化工作,通过一系列实践,深刻体会云财务管理带来的灵活性和经济性。
02
经验总结:流程优化
在 SAP 系统上云工作完成后,奇瑞捷豹路虎团队针对云上环境和资源做了相应的优化工作(具体在第二篇《奇瑞捷豹路虎上云历程和深度优化之道 2 – 清理和标准化》中),随后转入日常运维阶段。在这一系列实践工作中,团队总结出以下管理流程:
1. 建立组织
创建虚拟的云上运维组织,该组织的划分主要基于云上功能模块。
云运维组织包括账号与权限管理、计算资源与网络管理、数据存储管理、安全管理及监控管理。
2. 精细管理
为进一步优化成本,团队实施了精细化管理。云上运维团队成员不仅各自负责特定功能模块,还负责特定应用系统。
团队通过标签(Tag)对系统资源按应用以及应用模块来区分,实现精细管理。例如,团队区分出 Datalake,SAP,并在 SAP 内部进一步细分子系统及模块。
各应用负责人定期进行成本分析,例如,根据数据增量情况评估归档策略,有效管理对数据生命周期,并与云运营团队协作进行持续优化。
3. 能力提高
进入运维阶段后,云运营团队需要具备更高的技能和能力。
团队通过定期会议、分析及追踪行动计划,以及与内外部资源协作,实现了更高效的管理和沟通。其中,周会主要分析现状,找出原因及制定行动计划,并把问题及行动计划记录到 GitLab 进行追踪,形成知识库;月会主要根据月度账单分析报告找到潜在的优化项,分析可能的优化措施,跟踪实施并检验结果。利用内部资源分析完毕后,如需外部资源提供更加专业的技术支持时,邀请外部云技术顾问核实并一起确定方案。在此过程中,云运营团队的能力持续提升。
4. 规范流程
完善并规范系统上云流程,具体如下:
4.1 信息收集及研讨
收集需要上云的应用系统的相关信息,包括系统的整体架构、系统的运行环境(操作系统,网络环境,数据库)、备份、容灾、RTO/RPO 等
组织系统上云研讨会,讨论系统上云的可行性。需要出席的人员包括应用系统 Owner、应用系统架构师、云架构及运维团队、信息安全负责人等
输出研讨会议初步结论,若应用无法满足上云条件,制约因素能否解决
4.2 云上架构设计
根据应用系统的需求设计应用系统的云上架构,给出相关的云上架构图
根据云上架构列出初步的云上资源清单
负责人:云架构及运维团队
4.3 云上费用预估
根据资源清单预估云上资源及服务的费用
负责人:云架构及运维人员,云成本负责人
4.4 会议及审批流程
走公司内部会议及审批
4.5 应用团队资源申请
应用团队根据应用需求提交云上资源申请包含EC2资源清单,RDS资源清单,数据备份需求清单
4.6 云运营团队资源评估
云运营团队根据应用团队提供的资源清单结合亚马逊云科技最佳实践给出推荐的资源配置
设计完整的系统云上架构,给出详细的资源清单
负责人:云运营团队
4.7 Cloud SA会议
审核亚马逊云科技资源清单及系统云上架构
4.8 亚马逊云科技资源创建
申请亚马逊云科技账号,一般申请两个亚马逊云科技账号分别用于系统的 DEV 和 PRD
新的亚马逊云科技账号加入现有亚马逊云科技 Landing Zone(遵循统一的安全策略)
网络资源的创建包括 VPC,子网,路由表,TGW Attachment,安全组等
计算资源的创建 EC2
存储资源的创建 S3,EFS
RDS 资源的创建
数据备份及生命周期管理
Cloud Watch 配置
4.9 系统服务创建及开启
基于云上资源搭建应用系统并开启相关服务,对于迁移上云或在云环境搭建的应用系统,云上资源创建完成后需要开启支撑应用的相关服务
负责人:系统上云 PM
4.10 亚马逊云科技成本优化
购买预留实例(EC2,RDS)
定期云财务管理会议,讨论及跟踪需要优化的事项
负责人:云架构及运维团队
03
经验总结:团队
企业上云从来就不是一个团队或者一个人可以实现的任务。奇瑞捷豹路虎最初萌生上云想法时,各个 IT 子团队有各自不同的上云策略和目标。因此,当 SAP 上云计划真正进入日程,几乎涵盖了所有 IT 子团队的虚拟云团队才真正成立。这个团队汇集了来自于基础设施的架构师、网络专家、应用团队的产品经理、数据和中间件平台的专家、信息安全团队的顾问,以及制造和供应链 IT、企业应用和数据等 IT 团队的精兵强将。
在亚马逊云科技原厂顾问和技术专家的指导下,奇瑞捷豹路虎 IT 组建了一个专业技术能力齐全、配合默契的云虚拟团队,团队包含业务需求分析和云方案评估人员、上云实施人员、云运维和成本控制人员。团队人员各自在云战略制定、平台选型、需求评估、应用迁移、运维和成本优化等领域充分发挥各自的专业能力和热情;将企业上云、用云、管云等工作和职责与各自的专业优势完美地集合,成功地实现了奇瑞捷豹路虎 SAP 系统的上云目标并保持成本优化工作持续进行。
经历了 SAP 上云、Data lake 云迁移以及更多应用上云的实战,奇瑞捷豹路虎 IT 团队成功打造了一支松耦合、高敏捷、兼顾成本、安全和效率的企业云团队。团队中有一些成员在项目期间还获得了原厂的专业认证,并持续不断地挑战自我,为企业云战略的实现保驾护航。
04
经验总结:工具
1. 使用 GitLab 进行项目管理
随着企业对于快速、高效、创新的追求,项目管理的重要性也日益凸显。奇瑞捷豹路虎团队来分享在奇瑞捷豹路虎内部是如何进行与云有关的项目管理和任务跟踪的。
在卓越运维的大前提下,奇瑞捷豹路虎选择了安全性强、功能强大同时开源的 GitLab 作为他们的云项目管理与任务跟踪的工具。GitLab 提供了问题跟踪和看板功能,可以帮助团队更好地管理项目及任务。大家会及时将本周议题的进展更新至 GitLab 所对应的任务中,同时大家会在 GitLab 的 Issues 中新增一些运维过程中遇到的问题,这些问题根据分类和所属模块派送给具体的团队成员分析和跟踪,其中 Issues 包括五类状态标签,分别为:Open、Doing、Pending、To Do 和 Close,大家只需将任务根据完成进度填入相应的标签中,大家可以在任务列表中轻松知道该任务的当前状态,GitLab 的看板功能可以很好对任务进行分类,方便管理。
2. 使用 GitLab 进行团队协作
GitLab 同时也是一个功能强大的团队协作平台,通过项目概览中的详情和动态功能,可以了解一个项目的背景、目标、状态以及动态;通过项目议题,可以帮助团队更好地进行协作和知识分享。
在 GitLab 中,项目议题是集中管理和任务跟踪的重要功能。团队成员可以创建、分配和标记项目议题。通过议题的任务状态标签,团队可以清晰地了解任务的进度、任务的责任人以及工作的优先级。此外,还可以利用里程碑、定义议题到期日期和过滤器等功能来组织和筛选任务,可以更好地跟踪项目进度。
问题跟踪是 GitLab 中另一个关键的协作工具。它用于收集、记录和解决团队在云上遇到的问题或错误。团队成员可以提交问题,并为每个问题指定负责人和截止日期。问题跟踪还支持附加说明、注释、文件附件和标签等功能,以便团队成员之间更好地协作解决问题。
通过 GitLab 的问题跟踪功能,团队能够有效地管理问题进度、分配任务,通过问题跟踪,及时解决问题。一个问题的解决有时候需要跨团队、跨资源的协助才能完成,问题跟踪需要及时记录并更新每一个分析细节,团队协作的过程被 GitLab 的项目动态记录下来,这其中保留了问题解决过程的点点滴滴,对于问题总结、回溯和推演提供了充足的依据。
在每周的周会上,大家会利用上述一系列功能,一一讲解各自的任务进度与遇到的问题,寻找解决办法。会后大会根据会上建议与领导要求进行下一步工作,并将完成的工作再更新到 GitLab 中,这样不断循环就可以完成云端的项目管理与任务跟踪。其次,GitLab 还促进了团队成员之间的协作和沟通,提高了整个团队的工作效率和运维质量,促使团队更加卓越。
3. 使用 GitLab 进行费用持续优化
在当前降本增效的大背景下,针对云费用持续优化,奇瑞捷豹路虎正在努力寻求合适的方法,其中亚马逊云科技原生态的 Cost Explorer 就是一个很好的工具,它和 GitLab 结合在一起使用,可以帮助奇瑞捷豹路虎团队分析成本和资源使用情况,预测支出并检测异常情况,后续通过异常记录、问题跟踪,合理优化,实现了云资源的合理精简(Right Sizing)和减少开支的目的。
为了更准确的了解到每月各个应用实际的花费情况(税前),奇瑞捷豹路虎云团队会在 Payer 账号的 Billing Dashboard 中分别下载每月 10 号、20 号和一整月的消费明细,但是下载的文件为 CSV 格式且内容过于复杂,不适合负责计算、网络、存储等应用的同事快速获取各自负责的 services 的花费情况。因此,奇瑞捷豹路虎会根据下载的文件自己制作出一份消费明细,其中包括账号、应用名称、花费等,这样可以定期与之前同时期的消费进行对比,找出其中花费升高或者降低的应用,并对花费波动比较大的资源和服务进行针对性的记录和分析,找出花费波动的原因,通过优化手段干预费用的继续增长,达到降费的目标,这些优化过程会详细记录在 GitLab 仓库内,作为知识库的一部分供团队内部分享,大家一起总结经验和教训,避免踩坑。
SAP 上云的一年多时间里,在 GitLab 上,奇瑞捷豹路虎团队已经创建了 72 个议题,其中项目管理相关议题 20 个,问题跟踪相关议题 11 个,云资源优化及降费相关议题 41 个,已完成项目 56 个,open 中的议题 16 个。已经将云成本(Average Cost per Day)减少了 43%。
总而言之,云财务管理和优化是一种运营方案,并非一朝一夕之功,也并非是购买一款产品就可以一劳永逸,奇瑞捷豹路虎将 Cloud FinOps 的理念和适合自己的运维工具相结合,正在不断地探索和学习云财务管理和优化的解决方案。合适的工具可以给团队运营、管理和运维过程带来事半功倍的效果。
05
经验总结:策略
针对 SAP 上云项目,奇瑞捷豹路虎云运营团队借鉴了亚马逊云科技的上云策略评估方法论(7R),并结合当前 SAP 系统现状,制定了合理的各类服务和相关系统的迁移方案。7R 方法论主要从以下几个方面来进行分析评估:
1. 系统信息收集、分析:
系统的基本信息,例如使用的平台、软件框架、服务器使用情况等;
系统的架构信息及云环境适应情况;
系统的软硬件依赖;
系统在技术、安全、灾备和业务等方面的痛点和需求。
2. 系统上云策略确定
亚马逊云科技根据云迁移的最佳实践,将系统上云迁移分为 7 种策略(7 Rs)。
2.1 Retire:希望退役或归档的应用程序的迁移策略。退役应用程序意味着可以关闭该应用程序的服务器。以下是退役策略的常见用例:
保留应用程序或将其迁移到云中没有业务价值。
希望消除维护和托管应用程序的成本。
希望降低使用不再支持的操作系统版本或组件的安全风险。
希望根据应用程序的性能将其停用。例如,停用 CPU 和内存平均使用率低于 5% 的应用程序(称为僵尸应用程序)。也可以选择停用一些在 90 天内 CPU 和内存平均使用率在 5% 到 20% 之间的应用程序(闲置应用程序)。可以使用监控工具识别僵尸和闲置应用程序。
在过去 90 天内,应用程序没有入站连接。
2.2 Retain:希望保留在源环境中的应用程序或尚未准备好迁移的应用程序,可能会选择在将来迁移这些应用程序。以下是保留策略的常见用例:
安全性和合规性,希望保留应用程序,以便继续遵守数据驻留要求。
高风险,决定保留应用程序,因为它需要在迁移之前进行详细的评估和计划。
依赖性,如果需要先迁移一个或多个其他应用程序,则可能决定保留该应用程序。
最近升级过的应用程序,希望推迟迁移应用程序,直到下一次技术更新,因为最近投资升级了当前系统。
迁移没有商业价值,将某些应用迁移到云中没有商业价值,例如只有少数内部用户的应用。
计划迁移到软件即服务(SaaS),保留应用程序,直到供应商发布 SaaS 版本。这是基于供应商的应用程序的常见策略。
未解决的物理依赖性,依赖于专用硬件的应用,而这些硬件并不具备与云相当的功能。
大型机或中档应用以及非 x86 Unix 应用,在将这些应用迁移到云之前,需要对其进行仔细评估和规划。中档应用的例子包括 IBM AS/400 和 Oracle Solaris。
性能,根据性能保留应用程序。例如,希望在源环境中保留僵尸或闲置应用。
2.3 Rehost:将应用程序从源环境迁移到亚马逊云科技 云,而无需对应用程序进行任何更改。例如,您将应用堆栈从内部环境迁移到亚马逊云。
通过重托管,可以将大量服务器从多个源平台(物理、虚拟或其他云)迁移到 亚马逊云科技 云,而无需担心兼容性、性能中断、较长的切换窗口或远距离数据复制。
工作负载迁移期间,应用程序将继续为用户提供服务,从而最大限度地减少中断和停机时间(停机时间取决于您的切换策略)。
这种策略可帮助企业在不实施任何云优化的情况下扩展应用,从而节省时间或金钱。当应用程序已经在云中运行时,更容易优化或重新架构,因为它更容易集成到亚马逊云科技服务并管理企业的工作负载。
2.4 Relocate:使用此策略,可以在给定时间内将包含一个或多个应用程序的大量服务器从内部部署平台转移到云平台版本。还可以使用此策略将实例或对象移动到不同的虚拟私有云(VPC)、亚马逊云科技 区域或 亚马逊云科技 帐户。例如,您可以使用此策略将服务器从 VMware 软件定义的数据中心(SDDC)批量转移到亚马逊云科技上的 VMware Cloud,或者将 Amazon Relational Database Service(Amazon RDS)DB 实例转移到另一个 VPC 或亚马逊云科技帐户。
2.5 Repurchase:用不同的版本或产品替换现有应用程序。与现有的内部部署应用程序相比,新的应用程序应能提供更多的业务价值,包括可随时随地访问、无需维护基础设施以及 “即用即付 “定价模式等功能。重新购买应用程序通常会降低与维护、基础设施和许可相关的成本。以下是重购迁移策略的常见用例:
从传统的 license 迁移到 SaaS,这消除了管理和维护基础设施的负担,并有助于减少 license 问题。
版本升级或第三方同等产品,通过将现有的内部部署应用程序替换为供应商的最新版本或第三方云同等产品,可以利用新功能,与云服务集成,并更轻松地扩展应用程序。
替换自定义应用程序,通过重新购买基于供应商的 SaaS 或基于云的应用程序,避免重新编码和重新架构自定义应用程序。
2.6 Replatform:将应用迁移到云中,并进行一定程度的优化,以便高效运行应用、降低成本或利用云功能。例如,您可以将 Microsoft SQL Server 数据库 Replatform 到 Amazon RDS for SQL Server。使用该策略,可能会根据业务目标和目标平台对应用程序进行少量或多次更改。以下是替换平台迁移策略的常见用例:
通过迁移到亚马逊云科技云中的完全托管服务或无服务器服务来节省时间和降低成本。
通过将操作系统升级到最新版本来提高安全性和合规性。
通过使用亚马逊云科技 Graviton Processors(亚马逊云科技开发的 ARM 定制处理器)来降低成本。
通过从 Microsoft Windows 操作系统迁移到 Linux 操作系统来降低成本。例如将 .NET Framework 应用程序移植到 .NET Core,后者可以在 Linux 操作系统上运行。
通过将虚拟机迁移到容器中来提高性能,而无需更改任何代码。可以使用亚马逊云科技 App2Container 迁移工具将您的 .NET 和 Java 应用程序现代化为容器化应用程序。
2.7 Refactor:将应用程序迁移到云中,并通过充分利用云原生功能来修改其架构,从而提高敏捷性、性能和可扩展性。通常是由扩展、加快产品和功能发布以及降低成本的强烈业务需求驱动的。以下是重构迁移策略的常见用例:
传统大型机应用程序因其局限性或昂贵的维护费用而无法满足业务需求。
已经阻碍了快速交付产品或满足客户需求的单体应用程序。
没有人知道如何维护的遗留应用程序,或者源代码不可用。
应用程序难以测试,或者测试覆盖率非常低。这影响了新应用功能和修复的质量和交付。
出于安全性和合规性的考虑,在将数据库迁移到云中时,可能需要提取某些表(如客户信息表、患者表或患者诊断表),并将这些表保留在本地。在这种情况下,您需要重构数据库,以便将迁移的表与保留在本地的表分开。
06
展望
随着服务驱动业务和自动化运维的深入应用,企业上云已经成为了获取竞争优势和优化运营的重要手段。通过将业务迁移到云端,企业可以降低成本,提高运营效率,并快速响应市场变化。同时,借助自动化运维工具,企业可以有效地管理和维护其复杂的 IT 环境,提高系统的可用性和稳定性。
服务驱动业务的核心在于,通过提供高质量的服务来满足客户需求,并以此推动业务增长。在云计算环境下,这种模式更加得以强化,因为云服务可以快速、灵活地提供丰富的服务,满足不断变化的市场需求。此外,自动化运维工具能够自动化许多手动过程,使得 IT 团队可以专注于解决业务问题,而不是繁琐的技术任务。
展望未来,随着云计算技术的不断发展和创新,以及奇瑞捷豹路虎云运营团队的不懈努力,我们可以预见到更多的机会和优势,推动企业的数字化转型和创新发展,助力奇瑞捷豹路虎更好地应对市场变化,并提供高质量的产品和服务。
在整个历程中特别感谢亚马逊云科技高级客户解决方案经理-倪晓峻的全力支持。
参考材料
https://www.amazonaws.cn/en/newsroom/2022/0927-Qirui/
https://aws.amazon.com/aws-cost-management/aws-cost-optimization/right-sizing/
https://docs.aws.amazon.com/cost-management/latest/userguide/ce-rightsizing.html
https://www.wellarchitectedlabs.com/cost/100_labs/100_aws_resource_optimization/1_intro_right_sizing/
https://aws.amazon.com/sap/
https://docs.aws.amazon.com/sap/latest/general/welcome.html
https://www.sap.com/dmc/exp/2014-09-02-hana-hardware/enEN/#/solutions?filters=v:deCertified;ve:23
https://www.sap.com/dmc/exp/2018-benchmark-directory/#/sd
https://docs.aws.amazon.com/sap/latest/general/sap-hana-aws-ec2.html
上下滑动获取完整地址
了解所有 re:Invent 2023 热门发布产品,
请扫描下方二维码:
本篇作者
奇瑞捷豹路虎云运营团队
奇瑞捷豹路虎云运营团队是奇瑞捷豹路虎 IT 负责云上环境日常架构及运维管理的一只虚拟组织,其成员来自 IT 各职能板块。他们全程参与并与亚马逊云科技团队协同交付了 SAP 上云及数据湖的迁移等项目,在项目交付的同时也逐渐成长起来,并在项目上线后顺利完成了内部自主运维及持续优化的一系列转换。目前团队不仅负责云上资源管理、服务运维和技术支持等工作,确保各系统平台及相关服务的稳定运营,同时也持续推动奇瑞捷豹路虎的数字化转型赋能工作,助力奇瑞捷豹路虎“数智”化发展。
金忠敏
亚马逊云科技高级解决方案架构师,现在专注于云计算解决方案和架构的工作。具有超过 17 年的 IT 从业经验,曾从事软件开发,售后支持,系统交付,售前等工作。参与过很多大型项目架构设计和实施交付。目前专注于汽车行业。
星标不迷路,开发更极速!
关注后记得星标「亚马逊云开发者」
听说,点完下面4个按钮
就不会碰到bug了!