卓越运营支柱 - AWS 规范性指导

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

卓越运营支柱

Well-Architect AWS ed Framework 的卓越运营支柱侧重于运行和监控系统,以及不断改进流程和程序。它包括能够有效地支持开发和运行工作负载,深入了解其运行情况,并不断改进支持流程和程序以实现业务价值。您可以通过自我修复工作负载降低运营复杂性,这些工作负载无需人工干预即可检测和修复大多数问题。您可以按照本节所述的最佳实践努力实现这一目标,并使用 Amazon Neptune Analytics 指标和机制在工作负载偏离预期行为时做出正确响应。 APIs

本次对卓越运营支柱的讨论侧重于以下关键领域:

  • 基础设施即代码(IaC)

  • 变更管理

  • 弹性策略

  • 事件管理

  • 合规审计报告

  • 日志记录和监控

使用 IaC 方法自动部署

使用 IaC 在 Neptune 上自动部署的最佳实践包括以下内容:

运营设计

采用各种方法来改进 Neptune Analytics 图表的操作方式:

  • 维护单独的 Neptune Analytics 图表,以供开发、测试和生产使用。这些图表可能具有不同的数据集、用户和操作控件。

  • 为不同的用途保留单独的 Neptune Analytics 图表。例如,如果两组分析用户需要不同的图表,这些图表具有不同的时间表、模型、性能和可用性以及使用模式 SLAs,则为每组用户保留单独的图表。

  • 让用户和操作人员做好准备,了解 Neptune Analytics 的维护更新

进行频繁的、微小的、可逆的更改

以下建议侧重于您可以进行的微小、可逆的更改,以最大限度地降低复杂性并降低工作负载中断的可能性:

  • 将 IaC 模板和脚本存储在源代码控制服务(例如 GitHub 或 GitLab)中。

    重要

    不要在源代码管理中存储 AWS 凭据。

  • 要求部署 IaC 才能使用持续集成和持续交付 (CI/CD) 服务,例如或。AWS CodeDeployAWS CodeBuild在将代码提升到生产图表之前,在非生产版 Neptune Analytics 环境中编译、测试和部署代码。

实现可观察性以获得可操作的见解

全面了解工作负载行为、性能、可靠性、成本和运行状况。以下建议可帮助你在 Neptune Analytics 中获得这种程度的理解:

  • 监控 Neptune Analytics 的亚马逊 CloudWatch 指标。根据这些指标,您可以确定图表的大小(节点、边和向量的数量,加上总字节大小)、CPU 利用率以及查询请求和错误率。

  • 为关键指标(例如NumQueuedRequestsPerSec、、NumOpenCypherRequestsPerSecGraphStorageUsagePercentGraphSizeBytes、和)CPUUtilization以及应用程序日志中的 Neptune 客户端响应创建 CloudWatch 仪表板和警报。

  • 设置通知以监控 Neptune Analytics 图表的运行状况,例如图表大小、请求速率或 CPU 利用率何时超过您的阈值。例如,如果您打算大幅增长的图表上GraphStorageUsagePercent已攀升至90%,请决定是否增加内存优化的 Neptune 容量单位 (m-nCU) 容量。如果当前的 m-ncU 为 128,则将其增加到 256 将减少大约 45% 的存储空间。如果通常大于零,NumQueuedRequestsPerSec则可以考虑增加 m-ncU 容量以提供更多的计算容量。或者,您可以减少客户端的并发性。

从所有操作失败中吸取教训

自我修复基础设施是一项长期的工作,在出现罕见问题或响应效果不如预期时,它会不断迭代发展。采用以下做法可以推动将注意力集中在实现该目标上:

  • 通过从所有失败中吸取教训来推动改进。

  • 跨团队和组织分享所学知识。如果您的组织中有多个团队使用 Neptune,请创建一个公共聊天室或用户群组来分享经验和最佳实践。

使用日志记录功能监控未经授权或异常的活动

使用日志记录来观察异常的性能和活动模式。考虑下面的最佳实践:

  • Neptune Analytics 支持使用记录控制平面动作。 AWS CloudTrail有关更多信息,请参阅使用记录 Neptune Analytics API 调用。 AWS CloudTrail通过此功能,您可以跟踪 Neptune Analytics 资源的创建、更新和删除。为了实现强大的监控和警报,您还可以将 CloudTrail 事件与 Amazon CloudWatch 日志集成。为了增强您对 Neptune Analytics 服务活动的分析并识别活动的变化 AWS 账户,您可以使用 Amazon Athen CloudTrail a 查询日志。例如,可以使用查询确定趋势,并根据属性(如源 IP 地址或用户)进一步隔离活动。

  • 您还可以使用 CloudTrail 来启用 Neptune Analytics 数据平面活动的日志记录,例如查询执行。您可以查看正在运行哪些查询、其频率和来源。默认情况下, CloudTrail 不记录数据事件。记录数据事件将收取额外费用。有关更多信息,请参阅 AWS CloudTrail 定价

  • 您还可以在控制平面或数据平面中记录对 Neptune Analytics 的应用程序调用。例如,如果您使用适用于 Python (Boto3) 的 AWS SDK进行查询,则可以启用调试级别的日志记录以获取对控制台或文件的查询跟踪。这在开发过程中很有用。我们还建议您捕获并记录应用程序中的异常。