你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

估算初始成本

在将工作负载部署到云之前,很难确定成本。 如果使用本地估算方法或直接将本地资产映射到云资源,则估算值将不准确。 例如,如果构建自己的数据中心,则成本可能与云相当。 大多数本地估算值不计算冷却、电力、IT 和设施人工、安全和灾难恢复等成本。

下面是一些最佳做法:

  • 使用概念证明部署来帮助优化成本估算。
  • 选择可处理工作负载性能的合适资源。 例如,便宜的虚拟机一开始可能意味着较低成本,但最终可能更加昂贵,因为要保持特定的性能级别。
  • 准确反映与正确的存储类型相关的成本。
  • 增加隐藏成本,例如大型数据下载的网络成本。

迁移工作负载

通过计算总拥有成本 (TCO) 和投资回报率 (ROI),量化在 Azure 中运营业务的成本。 将这些指标与现有的本地等效项进行比较。

在迁移到云之前,很难确定成本。

使用本地计算可能无法准确反映云资源的成本。 下面是一些挑战:

  • 本地 TCO 可能无法准确计算隐藏费用。 这些费用包括购买的硬件利用率不足或网络维护成本,包括人工和设备故障。
  • 云 TCO 可能无法准确说明组织运营工时数的下降。 云服务定价中包括:云提供商的基础结构、平台管理服务和其他运营效率。 尤其是在较小的规模下,云提供商的服务不会减少 IT 人工数量。
  • 由于云功能,ROI 可能无法准确考虑新的组织优势。 很难量化改进的协作、缩短的客户服务时间,以及以最少或零停机时间实现快速缩放。
  • ROI 可能无法准确考虑完全采用云优势所需的业务流程重组。 在某些情况下,此重组完全不可能进行,组织始终处于新技术使用效率低下的状态。

Azure 提供这些工具来确定成本。

  • Microsoft Azure 总拥有成本 (TCO) 计算器用于反映所有成本。

    对于迁移项目,TCO 计算器可能会提供帮助,因为它会预先填充一些常见成本,但允许修改成本假设。

  • Azure 定价计算器用于评估计划在解决方案中使用的服务的成本。
  • Azure Migrate 用于评估组织在本地数据中心中的当前工作负载。 它建议 Azure 替换解决方案,例如基于工作负载的虚拟机大小。 它还提供成本估算。

微服务工作负载的估算示例

让我们以此方案为例。 在部署工作负载之前,我们将使用 Azure 定价计算器来估算初始成本。 成本按月或 730 小时计算。

本示例选择了微服务模式。 对于容器业务流程协调程序,一个选项可能是管理 Pod 群集的 Azure Kubernetes 服务 (AKS)。 我们选择 NGINX 入口控制器,因为它是适用于此类工作负载的知名控制器。

该示例基于当前价格,可能会发生变化。 显示的计算仅供参考。

计算

对于 AKS,群集管理不收取任何费用。

对于 AKS 代理节点,有许多实例大小和 SKU 选项。 我们的示例工作负载预计将遵循长期运行的模式,我们可承诺三年。 因此,符合预留实例条件的实例是一个不错的选择。 可以通过选择 3 年预留计划来降低成本。

工作负载需要两个虚拟机。 一个用于后端服务,另一个用于实用工具服务。

具有 2 个虚拟机的 B12MS 实例足以进行此初始估算。 可以通过选择预留实例来降低成本。

估计总数:每月 327.17 美元,预付金额 11,778.17 美元。

应用程序网关

对于此方案,我们考虑 Azure 应用程序网关的“Standard_v2 层”,因为它具有自动缩放功能和性能优势。 我们还选择基于使用量的定价,该定价按容量单位 (CU) 计算。 每个容量单位基于计算、持久连接或吞吐量计算。 对于 Standard_v2,每个计算单位每秒能够处理大约 50 个连接(使用 RSA 2048 位密钥 TLS 证书)。 对于此工作负载,我们估计有 10 个容量单位。

估计总数:每月 248.64 美元。

负载均衡器

NGINX 入口控制器将部署一个负载均衡器,后者会将 Internet 流量路由到入口。 大约需要 15 个负载均衡器规则。 NAT 规则免费。 主要成本驱动因素是独立于规则处理的入站和出站已处理数据量。 我们估计(入站和出站)流量为 1 TB。

估计总数:每月 96.37 美元。

带宽

我们估计出站流量为 2 TB。 在区域 1(区域 1 包括北美、欧洲和澳大利亚),每月前 5 GB 是免费的。 5 GB 至 10 TB/月,按每 GB 0.087 美元收费。

估计总数:每月 177.74 美元

外部数据源

由于工作负载处理的数据的架构上读取性质,我们选择 Azure Cosmos DB 作为外部数据存储。 通过使用 Azure Cosmos DB 容量计算器,我们可以计算要保留的吞吐量。

Azure Cosmos DB 容量计算器

成本变量

  • 为了降低延迟,在此方案中,我们使用多区域写入功能来启用异地复制。 默认情况下,Azure Cosmos DB 使用一个区域进行写入,其余区域用于读取。

  • 会话的一致性模型中的默认选项和索引策略为“自动”。 自动索引使 Azure Cosmos DB 能够为所有项中的所有属性编制索引,以便灵活高效的查询。 使用自定义索引策略,可以将属性包括到索引中/从中排除属性,从而降低写入 RU 和存储大小。 因此,上传自定义索引策略可以降低成本。

  • 总数据存储不是重要的成本驱动因素,此处设置为 500 GB。

  • 吞吐量是指示峰值的变量。 峰值时间百分比设置为 10%。

  • 项大小的平均值为 90k。 通过使用容量计算器,可以上传示例 json 文件,其中包含文档的数据结构、平均文档大小、每秒读取/写入次数。 这些变量对成本的影响最大,因为它们用于计算吞吐量。 吞吐量值如图所示。

现在,我们在 Azure 定价计算器中使用这些值。

Azure Cosmos DB 的 Azure 定价计算器

基于这些设置的平均吞吐量为 20,000 RU/秒,这是 3 年预留容量计划所需的最小吞吐量。

下面是使用三年预留计划的总成本:

每月平均 1,635.20 美元(预付 58,867.20 美元)

选择 3 年预留容量比即用即付价格节省 700.00 美元。

CI/CD 管道

在 Azure DevOps 中,Visual Studio Enterprise、Visual Studio Professional、Visual Studio Test Professional 和 MSDN 平台订阅者都包含基本计划。 无需任何费用,为利益干系人添加或编辑工作项和 bug、查看仪表板、积压工作 (backlog) 和看板。

基本计划许可证可供五位用户免费使用。

其他服务

对于 Microsoft 托管管道,免费层包括一个并行 CI/CD 作业,每月 1800 分钟(30 小时)。 但是,可以选择付费层,并拥有一个 CI/CD 并行作业(40.00 美元),在此层中,每个并行 CI/CD 作业包括无限分钟数。

对于此成本估计阶段,不需要自承载管道,因为工作负载没有在生成过程中运行的自定义软件,而该软件未包含在 Microsoft 托管选项中。

Azure Artifacts 是一项服务,可在其中创建包源以发布和使用 Maven 包、npm 包、NuGet 包、Python 包和通用包。 Azure Artifacts 按使用量计费,前 2 GB 存储免费。 对于此方案,我们估计项目数为 56 GB(56.00 美元)

Azure DevOps 提供了一种基于云的解决方案,用于对应用进行负载测试。 负载测试以虚拟用户分钟数 (VUM) 度量和计费。 对于此方案,我们估计为 200,000 VUM(72.00 美元)。

估计总数:每月 168.00 美元