零基础5分钟上手亚马逊云科技AWS核心云开发/云架构知识 - 成本分析篇

简介:

欢迎来到小李哥全新亚马逊云科技AWS云计算知识学习系列,适用于任何无云计算或者亚马逊云科技技术背景的开发者,让大家零基础5分钟通过这篇文章就能完全学会亚马逊云科技一个经典的服务开发架构方案。

我将每天介绍一个基于亚马逊云科技AWS云计算平台的全球前沿云开发/架构技术基础解决方案,帮助大家快速了解国际上最热门的云计算平台亚马逊云科技AWS最佳实践,并应用到自己的日常工作里。本次我将介绍如何分析和预估再亚马逊云科技上的成本,利用Price Calculator和AWS的成本模型合理评估所需云资源价格、发现降本机会并采购。

方案所需基础知识

什么是亚马逊云科技 Price Calculator?

亚马逊云科技 Price Calculator(AWS Pricing Calculator)是亚马逊云科技提供的一个网页工具,帮助用户估算使用 AWS 服务的成本。用户可以根据自己计划使用的服务,输入相关配置和使用量,生成详细的成本预估报告,包括计算、存储、数据库、网络等,可以为企业和个人用户提供准确的成本预测。

为什么需要对云资源成本进行预估?

成本管理

预算控制

通过预估云资源的使用成本,企业可以更好地制定和控制预算,避免超支情况的发生。了解不同配置和使用量对成本的影响,可以帮助企业优化资源配置。

费用分摊

对于需要在不同部门或项目之间分摊云资源成本的企业,预估成本可以提供准确的费用分摊依据,确保各部门或项目的成本负担合理、公正。

资源规划

资源优化

通过预估不同配置和使用模式的成本,企业可以优化资源使用,选择性价比最高的配置和服务,提升资源利用率,降低不必要的开支。

规划与调整

预估成本可以帮助企业在实施云迁移或扩展计划时进行科学规划。了解不同方案的成本,可以帮助企业在规划阶段做出更明智的决策,并在需要时及时调整资源配置。

投资回报分析

预估成本是进行投资回报分析的重要步骤。企业可以通过比较预估成本和预期收益,评估云项目的经济效益,做出更有价值的投资决策。

风险管理

规避风险

通过详细的成本预估,企业可以提前识别和规避潜在的成本风险,避免由于资源使用过度或不合理配置带来的高额费用。

决策支持

预估成本提供了决策支持的数据基础,帮助企业在进行云服务选择、配置调整和扩展计划时做出更稳妥的决策,降低决策风险。

本方案包括的内容:

1. 创建Price Group成本单元,对某一类的成本统一预估和计算

2. 预估EC2服务器的周成本、月成本和年成本

项目搭建具体步骤:

  1. 首先我们在网页打开AWS Pricing Calculator, 创建一个成本预估Estimate
  1. 接下来我们创建一个Price Group, 用来对同一类的一组服务资源成本统一分析
  1. 接下来我们为这个Group添加服务资源。
  1. 以我们添加EC2服务为例,我们点击配置我们要添加的EC2信息
  1. 我们先选择我们EC2所在的区域,如"US East (Virginia)".

6. 接下来我们添加我们要创建的EC2服务器配置。如操作系统为"Linux", WorkLoad类型为"每日会流量突增",EC2开启的日期为每周周一到周五。

  1. 添加EC2自动扩容的信息,平常为2台,高峰期为4台,高峰期持续8小时,

8. 接下来配置服务器的大小类型,2核CPU,4GiB内存,类型为t2.medium。

  1. 付款类型选用即用即付,用多少交多少的On Demand形式。

10. 服务器硬盘类型为gp3,IOPS为30。

  1. 由于在亚马逊云科技上,出系统的流量请求需要收费,我们这里需要添加出系统每月的流量大小。如 1TB per month。
  1. 最终我们即可看到最后的计算结果,总成本为每个月99.33刀美元

代码创建Pricing Calculator Estimator

我们利用AWS boto3 SDK同样可以利用Python调用Pricing Calculator API进行成本的预估。示例代码如下:

python 复制代码
import json
import boto3

def handler(event, context):
    instance_type = event['queryStringParameters']['instance_type']
    region = event['queryStringParameters']['region']
    hours = int(event['queryStringParameters']['hours'])

    pricing_client = boto3.client('pricing', region_name='us-east-1')

    response = pricing_client.get_products(
        ServiceCode='AmazonEC2',
        Filters=[
            {'Type': 'TERM_MATCH', 'Field': 'instanceType', 'Value': instance_type},
            {'Type': 'TERM_MATCH', 'Field': 'location', 'Value': region}
        ]
    )

    price_per_hour = json.loads(response['PriceList'][0])['terms']['OnDemand'][list(json.loads(response['PriceList'][0])['terms']['OnDemand'].keys())[0]]['priceDimensions'][list(json.loads(response['PriceList'][0])['terms']['OnDemand'][list(json.loads(response['PriceList'][0])['terms']['OnDemand'].keys())[0]]['priceDimensions'].keys())[0]]['pricePerUnit']['USD']

    total_cost = float(price_per_hour) * hours

    return {
        'statusCode': 200,
        'body': json.dumps({'total_cost': total_cost})
    }

以上就是在亚马逊云科技上利用Price Calculator对于云平台上的服务器成本进行预估的全部步骤。欢迎大家关注0基础5分钟上手AWS系列,未来获取更多国际前沿的AWS云开发/云架构方案!

相关推荐
gyx_这个杀手不太冷静3 小时前
大人工智能时代下前端界面全新开发模式的思考(二)
前端·架构·ai编程
不是书本的小明4 小时前
阿里云专有云网络架构
网络·阿里云·架构
财迅通Ai7 小时前
逆周期研发筑壁垒 舜宇光学科技以技术突围手机存量竞争市场
科技·智能手机·舜宇光学科技
Reart7 小时前
从0解构tinyWeb项目--(Day:2)
javascript·后端·架构
提子拌饭1337 小时前
生命组学架构下的细胞分化与基因突变生存模拟器:基于鸿蒙Flutter的情景树渲染与状态溢出防御
flutter·华为·架构·开源·harmonyos
豆豆8 小时前
如何用PageAdmin CMS和阿里云快速搭建一个网站?完整步骤教程
阿里云·云计算·cms·网站建设·网站制作·网站开发·建站
code_pgf8 小时前
Mamba-2 / Jamba / DeepSeek-V2 高效架构
架构·transformer
CoovallyAIHub8 小时前
ICLR 2026 | VLM自己学会调检测器:VTool-R1用强化学习教视觉模型使用工具推理
算法·架构·github
CoovallyAIHub8 小时前
RK3588上111 FPS:轻量YOLOv8+异步视频处理系统实现无人机自主电力巡检
算法·架构·github
好家伙VCC9 小时前
# 发散创新:基于事件驱动架构的实时日志监控系统设计与实现在现代分布式系统中,**事件驱动编程模型**正
java·python·架构