你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
云就绪情况反模式
客户在云采用就绪阶段经常遇到反模式。 这些反模式可能会导致意外故障时间、灾难恢复问题和可用性问题。
反模式:认为已发布的服务已准备好用于生产
由于云计算发展迅速,公司通常会发布新服务的预览版本。 客户往往认为他们可以在生产环境中使用任何可用的云服务。 但是,导致问题的原因可能有以下几点:
- 预览版服务通常不提供运行时间服务级别协议 (SLA)。
- 新服务通常不及已提供的云服务成熟。
示例:在生产环境中使用预览服务
一家研究院在生产环境中使用预览版云服务。 该服务似乎非常适合其用例。 但是,该研究院不会对该服务执行尽职调查。 该研究院也不遵循其参考体系结构的要求和准则。
预览服务出现问题,导致意外故障时间。 该研究院开始认为云服务通常没有承诺的成熟或复原能力强。
首选结果:在生产环境中使用预批准的云服务
评估预览版的新服务时,只能在概念证明 (POC) 方案中使用这些服务。 请勿在生产环境中使用这些服务,因为它们没有 SLA。 在批准云服务时,在功能和成熟度之间找到适当的平衡。 有关可用于快速评估云服务的已建立框架,请参阅云服务尽职调查清单。
反模式:认为已提高复原能力和可用性
与本地计算相比,云计算通常具有优势。 示例包括:
- “已提高复原能力:”故障后恢复。
- “可用性:”以正常状态运行,且没有明显的故障时间。
由于大多数云服务都具有这些优势,因此许多公司默认所有云服务都具有复原能力和高可用性。 实际上,通常需要付额外费用和使用额外技术工作才能获得这些功能。
示例:认为可用性高
初创企业在基础结构即服务 (IaaS) 服务上运行任务关键型应用程序。 初创企业的开发人员研究了一个运行时间服务级别协议为 99.9% 的虚拟机 (VM)。 由于他们希望降低成本,因此使用单个 VM 和高级存储。
VM 发生故障时,其应用程序无法恢复。 导致意外故障时间 他们假设云默认提供高可用性。 他们不知道性能保证在下列情况中可能有所不同:
- 服务模型,例如平台即服务 (PaaS) 和软件即服务 (SaaS)。
- 技术体系结构,例如负载均衡可用性集和可用性区域。
首选结果:在平衡复原能力和成本的同时减少故障
有关可以减少故障范围的体系结构最佳做法的信息,请参阅受信任的成熟资源:
确定成本和功能(如高弹性和可用性)之间的适当平衡。 提高复原能力和可用性通常会导致成本增加。 例如:
- 单个 VM 可能有一个保证运行时间为 99.9% 的 SLA。
- 运行相同工作负载的两个 VM 将提供一个运行时间介于 99.95 和 99.99% 之间的 SLA。
在设计基于云的解决方案时,参与“要求工程”的基本过程。
反模式:成为云提供商
一些公司尝试使其内部 IT 部门成为云提供商。 然后,IT 部门将负责参考体系结构。 IT 部门还需要向业务部门提供 IaaS 和 PaaS。 由于此类工作通常不属于 IT 部门的核心业务,因此生成的服务产品/服务可能缺少可用性、复原能力、效率和安全性。
示例:提供整体式托管云服务
公司的 IT 部门建立卓越云中心 (CCoE),充当 IT 部门与业务部门之间的中转站。 为了确保公司符合云,管理板向 CCoE 分配了提供整体端到端服务的任务。 CCoE 设置内部云采购门户,业务部门可以使用该门户订购完全托管的云虚拟机作为服务。 但是,IT 部门控制谁可以访问和使用整个平台。 因此,IT 部门会主动阻止业务部门利用 Azure 提供的全部服务。 业务部门无法访问云门户。 他们只能通过安全外壳 (SSH) 和远程桌面协议 (RDP) 访问他们订购的服务器。
出于多种原因,CCoE 在提供整体式托管服务以包装云中可用的每个服务时遇到问题:
- 云在多个解决方案领域提供大量服务。 与开发 IaaS 解决方案相比,设计以及制造物联网 (IoT) 和 AI 解决方案需要不同的专业知识和技能集。
- 云服务经常更改。
- 尝试提供整体式服务会显著增加上市时间,IT 部门可以管理此过程,而非业务部门。
首选结果:提供护栏
采用云技术时,请从 IT 工作负载开始,使 IT 部门获得云的第一手经验。 使用适用于 Azure 的 Microsoft 云采用框架来确定你的第一个采用项目。
使用成熟的云运营模型,例如集中运营,让 IT 部门负责定义平台防护措施(如治理)。 然后,业务部门可以在 IT 定义的防护措施内以安全且一致的方式采用云项目。
一开始就考虑只采用一个主要公有云提供商,因为所有主要平台在设置、管理和使用方面都有显著差异。
尽量将 SaaS 解决方案用于 IT 工具,例如:
- 代码存储库。
- 持续集成和持续交付 (CI/CD)。
- 协作系统。
对于云工作负载,建议 IT 使用熟悉的过程,这些过程可安全可靠地大规模运行。