VM Price Info Guide - cloud-barista/cb-spider GitHub Wiki

VM Price Info Guide

Language: English | 한국어

1. CB-Spider VM Price Info Overview

  • CB-Spider provides VM pricing information from various CSPs (Cloud Service Providers) through a unified API.

  • Results are standardized in JSON format with a consistent structure.

  • Users can leverage this for efficient price comparison and VM selection decisions in multi-cloud environments.

  • The scope and validation criteria for the pricing information provided by CB-Spider are as follows:

    Item Description
    Provided Info OnDemand pricing based on VM Spec (USD / Hour) ※ VM Spec Price: inclusion of Root Disk and Network varies per CSP
    Method Latest pricing information based on each CSP's API ※ Exception: GCP provides latest pricing based on Compute Pricing Page (reason)
    Accuracy Price: 100% accurate / Count: slight variance allowed
    Validation Based on each CSP's official website pricing
    Supported CSPs AWS, Azure, GCP, Alibaba, Tencent, IBM, NCP

2. CB-Spider VM Price Info Status

  • Validation status and notes per supported CSP are as follows:

    CSP Price Accuracy Count Official Pricing Notes
    AWS Accurate Same as Web AWS EC2 Pricing
    Azure Accurate ~50 more than Web Azure VM Pricing
    GCP Accurate Some difference from Web GCP Compute Pricing Prices provided based on VM Specs available via API API VM Spec list != Compute Pricing Page VM Spec list
    Alibaba Accurate May vary Alibaba ECS Pricing Count based on Available Instance Types
    Tencent Accurate ~10 more than Web Tencent CVM Pricing
    IBM Accurate ~10 fewer than Web IBM Pricing Some items not provided via API
    NCP Accurate G3 pricing not available NCP Server Pricing Current API does not provide G3 pricing

3. CB-Spider VM Price Info API and Response Examples

  • Users can retrieve VM pricing information in JSON format via the following CB-Spider REST API:

    GET /priceinfo/vm/{RegionName}
    
  • Example API call and response for AWS ap-northeast-2 (Seoul) region:

    [Request Example]

     curl -s 'http://localhost:1024/spider/priceinfo/vm/ap-northeast-2?ConnectionName=aws-config01' | json_pp
    

    [Response Example]

       {
          "CloudName" : "AWS",
          "Meta" : {
             "Description" : "Multi-Cloud Price Info",
             "Version" : "0.5"
          },
          "PriceList" : [
             {
                "PriceInfo" : {
                   "OnDemand" : {
                      "Currency" : "USD",
                      "Description" : "$2.1018 per On Demand Linux m7gd.8xlarge Instance Hour",
                      "Price" : "2.1018",
                      "PricingId" : "SJ7S6NGHJ8HZZW7K.JRTCKXETXF.6YS6EN2CT7",
                      "Unit" : "Hour"
                   },
                   "CSPPriceInfo" : {... omitted ...}
                },
                "ProductInfo" : {
                   "Description" : "productFamily= Compute Instance, version= 20250918064406",
                   "ProductId" : "SJ7S6NGHJ8HZZW7K",
                   "VMSpecInfo" : {
                      "DiskSizeGB" : "-1",
                      "MemSizeMiB" : "131072",
                      "Name" : "m7gd.8xlarge",
                      "Region" : "ap-northeast-2",
                      "VCpu" : {
                         "ClockGHz" : "-1",
                         "Count" : "32"
                      }
                   },
                   "CSPProductInfo" : {... omitted ...}
                },
                "ZoneName" : "NA"
             },
             ...
    
  • Example API call and response using the simple option:
    • simple option: returns only VMSpecName instead of the full VMSpec structure

      [Request Example]

      curl -s 'http://localhost:1024/spider/priceinfo/vm/ap-northeast-2?ConnectionName=aws-config01&simple' | json_pp
      

      [Response Example]

        {
           "CloudName" : "AWS",
           "Meta" : {
              "Description" : "Multi-Cloud Price Info",
              "Version" : "0.5"
           },
           "PriceList" : [
              {
                 "PriceInfo" : {
                    "OnDemand" : {
                       "Currency" : "USD",
                       "Description" : "$2.1018 per On Demand Linux m7gd.8xlarge Instance Hour",
                       "Price" : "2.1018",
                       "PricingId" : "SJ7S6NGHJ8HZZW7K.JRTCKXETXF.6YS6EN2CT7",
                       "Unit" : "Hour"
                    },
                    "CSPPriceInfo" : {... omitted ...}
                 },
                 "ProductInfo" : {
                    "Description" : "productFamily= Compute Instance, version= 20250918064406",
                    "ProductId" : "SJ7S6NGHJ8HZZW7K",
                    "VMSpecName" : "m7gd.8xlarge"
                    },
                    "CSPProductInfo" : {... omitted ...}
                 },
                 "ZoneName" : "NA"
              },
              ...
      

4. CB-Spider VM Price Info AdminWeb Example

  • Navigate to the target CSP and go to the Price page as shown below.

image

  • Select the target Region and request VM Price information.

image

  • Example of AWS VM Price Info provided:

image