有关在您的工作负载中启用自动化的建议
适用于此 Power Platform Well-Architected 卓越运营清单建议:
OE:09 | 提前为生命周期问题等操作设计和实施自动化,并应用治理和合规性护栏。 以后不要尝试改造自动化。 选择平台提供的自动化功能。 |
---|
本指南介绍有关设计和实现工作负载以实现自动化的建议。 在设计工作负载时考虑到自动化,以确保快速可靠地执行预配资源、缩放和部署等常规任务。 自动化简化了维护任务,并允许更高效地更新、修补和升级系统。
关键设计策略
在开发工作负载时,请考虑以下关键策略来启用自动化。
工作负载设计
您可以设计工作负载以支持从构思阶段到持续改进阶段的自动化。 首先,考虑如何在工作负载中应用自动化,以帮助确保准备好必要的部分。 根据 Well-Architected 支柱考虑您的工作负载 Power Platform ,以帮助规划您将使用的自动化类型。 可以自动执行安全性、可靠性、性能、操作和成本控制等许多功能。
在设计时考虑到自动化,以最大程度地减少工作负载运行后的重构。 在决定使用哪些自动化工具时,请考虑工作负载要求。 您的团队可能已经熟悉现成的或开源的自动化工具。 采用这些工具可以更轻松地实现工作负载自动化,但要注意它们的局限性。 始终调查云平台提供的工具,以确保它们兼容并提供所需的功能。 可以主动规划自动化的方法示例包括:
- 部署:自动执行应用程序部署,以确保可预测的标准。 通过制定部署标准、培训您的团队使用的工具以及实施必要的基础结构来规划自动部署。
- 验证:使用编排或策略工具自动验证工作负载的合规性要求。 为您的工作负载确定适当的验证工具,并计划实施所需的系统,例如编排服务器。
权衡:在设计工作负载以实现自动化时,请考虑您希望保持的控制程度与通过自动化可以获得的效率。 在某些情况下,您的工作负载可能不够成熟,无法自动执行某些功能,或者您可能需要自动化无法提供的一定程度的灵活性。
在设计工作负载时,还要考虑团队的技能组合。 如果高度自动化需要您的团队无法支持的工具,那么您可能需要使用不太全面的设计作为中间步骤。
持续的工作负载改进
观察生产中的工作负载,分析使用模式,并审查与您的工作负载相关的用户行为和反馈,以确定可以改进自动化的领域。 寻找增强现有自动化或引入新自动化以改进客户体验的方法。
本指南的以下部分提供了针对特定自动化领域的建议,这些建议可以帮助您进行工作负载设计和实施。
身份验证和授权
在设计身份验证和授权策略时,将自动化考虑在内。 在生产工作负载中保持最高级别的安全性非常重要,但这种策略可能会影响自动化。 例如,多因素身份验证的使用会增加自动化设计中必须考虑的复杂性。 使用非人的安全帐户进行自动身份验证,例如托管标识、工作负载标识或证书。 确保已在自动化中包含机密和密钥管理,以提高身份验证安全性。
设计工作负载的可变性
通过在项目中构建灵活性,避免在进行小的更改时不必要地部署新的解决方案。 例如,您可以在解决方案中使用环境变量来更新应用程序配置,而不是在功能标志更改时重新部署解决方案。 请务必清楚地定义和记录如何使用可变性来避免过度使用和配置偏差。
生成控制平面
控制平面是用于通过统一接口管理应用程序及其依赖项的后端系统或工具套件。 构建控制平面(如 REST 接口、CLI 或 Webhook),以支持外部工具的自动化。
通过控制平面公开维护操作,允许您协调工作负载组件,例如有序备份和还原、引导、配置、导入/导出和批处理操作。 在决定通过 control plane 公开哪些操作时,请小心选择正确的粒度级别。
监控和记录
制定监控策略来获取推动您所需的自动化类型的指标。 使用结构化日志记录和自定义指标,以自动化工具易于识别的格式提供自动化所需的信息。 捕获的指标应与监视系统中定义的阈值配对,以触发警报和自动操作。
用户生命周期
将工作负载设计为允许用户自动加入和离开。 规划用于更新权限、共享资源以及提供凭据和机密管理的自动化脚本。
流程编排和策略使用
作为持续工作负载管理的一部分,可以在资源中自动 Desired State Configuration (DSC),以帮助确保它们满足合规性和业务需求。 DSC 自动化有助于确保快速发现和修正配置偏差。
您可以使用编排工具或策略管理工具来自动执行 DSC。 将编排工具(如 Azure DevOps Jenkins)视为基于推送的机制。 编排工具允许通过工作流事件(例如手动或自动部署)推送配置更新。 这些更新作为部署脚本中定义的任务序列的一部分运行。 策略管理工具使用基于拉取的机制,这意味着系统在工作负载的基础级别运行,该机制会定期轮询工作负载,以根据 DSC 检查其状态。 如果轮询发现不一致或配置偏移,该工具将采取纠正措施。
在选择流程编排和策略管理工具时,请考虑以下因素:
流程编排工具没有内置的功能,无法主动轮询工作负载以查找配置偏差。 流程编排工具应该集成到您的持续集成和持续交付 (CI/CD) 管道中,以维护基础结构即代码 (IaC) 部署和管理的标准。。 使用编排工具的一个优点是,部署时始终完全配置资源。
使用策略管理工具可以定义影响一个或多个资源组的策略。 当资源签入策略管理系统时,将强制实施这些策略。 使用策略管理的一个优点是这些系统不是代码驱动的,因此您团队中的操作员可能更容易采用它们。
此外,还要考虑您计划对新资源进行的配置更新是否必须在部署时进行,在代码中定义更新是否适合您的操作实践,以及您计划部署多少种资源类型。 如果跨资源类型存在许多不同的配置,则策略工具可能是管理更新的更简单方法。
Power Platform 简化
环境组 旨在帮助管理员根据不同的标准(如业务部门、项目和位置)将其环境平面列表组织到结构化组中。 管理员可以将规则应用于组以批量管理环境,从而减少手动工作并确保一致性。
可编程性和可扩展性 工具可供管理员为其租户编排和自动化日常活动。 可用的工具包括连接器、Power Platform CLI、PowerShell cmdlets 和 API。
解决方案 中的环境变量支持工作负载中的设计可变性;例如,存储参数键和值,然后将其用作其他应用程序对象的输入。 将参数与使用的对象分开可以在同一环境中或在将解决方案迁移到其他环境时更改值。
条件访问 是 ID 的一项 Microsoft Entra 功能,可用于控制用户访问应用程序和服务的方式和时间。 使用 Power Automate 实现流程自动化时,请遵循条件访问和多因素身份验证的建议。