0

背景:我正在尝试构建一个供内部使用的应用程序,以根据某些标准显示 Azure 虚拟机的价格,例如,我想指定我需要一个具有 4GB 内存的 VM,然后查找哪些 VM 大小与基本匹配标准,并显示价格,我将把这些数据与我们内部为本地选项提供的其他数据进行比较。

这一切都需要我们的 EA 特定定价,所以我不能使用匿名零售定价 API。

现在,我可以从https://docs.microsoft.com/en-us/rest/api/consumption/pricesheet/get中记录的消费 > 价格表 API 中提取我们的 EA 特定价格表

这将为我提供 EA 特定价格详细信息和“partNumber”(例如“aad-12345”)以及“meterName”(例如“D2s v3”)以及作为 guid 的“meterid”,但它不包括任何进一步的 VM 详细信息,例如内存 vCPU 等。

没关系,因为我可以从此处记录的资源 SKU api 中提取计算 SKU 数据https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list

这将为我提供虚拟机的规格,包括内存、vCPU 等,它还将为我提供一个“大小”属性,该属性与我上面提到的第一个 API 中的“meterName”属性大致匹配,但不是完全匹配,例如,SKU API 会将尺寸列为“D2s_v3”,而消费 API 会将计量名称列为“D2s v3”。如果这是一致的,那么也许我可以让它工作,只是用下划线替换空格,反之亦然,但我试过了,如果我遵循这种匹配过程,sku 输出中有 80 多种尺寸与价格表尺寸不匹配。

我正在寻找一些独特的标识符来交叉引用这些数据集或寻找匹配的一些技术。我注意到在 sku api doco https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list#resourceskucosts中引用了一个“meterId”属性- 如果我可以使用那就太好了如果它与 pricesheet api 中的meterid 匹配,但我无法让 sku api 返回meter id - 这可能吗?

4

0 回答 0