קבלת הערכת עלויות של עומסי העבודה ב-Google Cloud

בדף הזה מוסבר איך להתחיל להשתמש ב-Cost Estimation API, ומוצגות בו דוגמאות לבקשות API בתרחישי עלות נפוצים.

תוכלו להשתמש ב-Cost Estimation API כדי לקבל מושג לגבי העלויות של עומסי עבודה משוערים. לדוגמה, אם רוצים להגדיר תקציב לאפליקציה חדשה, אפשר להיעזר ב-API כדי להעריך את עלות התשתית של האפליקציה לאורך זמן. תוכלו גם לקבל הערכה שכוללת זיכויים של הנחה תמורת התחייבות לשימוש (CUD).

ה-API תומך בהערכות לשירותים הבאים:

  • Compute Engine
  • Cloud Storage
  • CDN Interconnect
  • Cloud CDN
  • VPC

אם יש לכם חוזה עם מחירים מוסכמים, אתם יכולים גם להעריך את העלויות לפי המחירים המוסכמים.

לפני שמתחילים

  • כדי להפעיל את ה-API, צריך ליצור מפתח API.

  • כדי לקבל הערכות בהתאם למחירים שסוכמו בחוזה, נדרשת ההרשאה billing.accounts.getPricing. אם מפעילים את ה-API באמצעות חשבון שירות, לחשבון השירות צריכה להיות ההרשאה הזו.

    התפקידים המוגדרים מראש שיש להם את ההרשאה billing.accounts.getPricing:

    • אדמין של חשבון לחיוב
    • צפייה בחשבון לחיוב
  • לחלופין, אפשר להפעיל את האפשרות של חלוקת הנחות ל-CUDs. אם לא מפעילים האפשרות הזו והשימוש מתבצע בפרויקט שלא משויך להתחייבות כלשהי, יכול להיות שיהיה הבדל בין העלויות המשוערות לבין העלויות בפועל.

הסבר על הרכיבים של הערכה

כשמגדירים את עומסי העבודה כדי לקבל הערכה של העלות, צריך להתחשב בגורמים האלה:

  • עומס עבודה: מייצג את השימוש במוצר אחד של Google Cloud במסגרת הזמן שהוגדרה בהערכה. דוגמה לעומס עבודה: ‎n2 Compute Engine virtual machine for 1 week.

    בבקשת ה-API, מגדירים רשימה של עומסי עבודה באובייקט workloads.

  • תרחיש עלות: אוסף של עומסי עבודה, שמייצג את מוצרי Google Cloud הדרושים להפעלת האפליקציה. דוגמה לתרחיש עלות: ‎5 n2 virtual machines and 4 Gibibytes (GiB) of Cloud Storage for one week‎.

    בבקשת ה-API, מגדירים את תרחיש העלות באובייקט costScenario, שכולל את מסגרת הזמן ואת רשימת עומסי העבודה.

  • מסגרת זמן: משך הזמן שרוצים לקבל עבורו הערכה של העלויות. אפשר לקבל הערכות לפרקי זמן שבין שעה ל-10 שנים.

    בבקשת ה-API, מגדירים את מסגרת הזמן באמצעות האובייקט estimateDuration.

  • מקטעי זמן: אפשר לפצל את האומדן למקטעי זמן, שבהם משך השימוש משתנה במהלך תקופת זמן מסוימת. לדוגמה, אפשר לבקש הערכה למסגרת זמן של ארבעה שבועות, שמתחילה בשימוש ב-5 מכונות וירטואליות למשך שבוע, ואז מגדילים את מספר המכונות הווירטואליות ל-8 למשך שבועיים ובשבוע האחרון מפחיתים ל-3 מכונות וירטואליות.

    בבקשת ה-API, מגדירים מקטעי זמן באמצעות האובייקט usageRateTimeline, ומגדירים את התחלת המקטע באמצעות estimationTimeFrameOffset.

  • שימוש: מייצג את כמות השימוש במהלך מקטע זמן. לדוגמה, אפשר להגדיר מקטע זמן של 5 ימים, שבמהלכו רוצים להשתמש ב-‎6 Gibibytes (GiB)‎ בקטגוריה של Cloud Storage.

    בבקשת ה-API, קובעים את השימוש באובייקט usage. כששולחים בקשת API, אם מציינים יחידת שימוש שגויה, בהודעת השגיאה תצוין היחידה הנכונה.

מגבלות

  • עומסי העבודה שאפשר ליצור מהם מודל באמצעות ה-API לא יכולים לשקף בצורה מושלמת את דפוסי השימוש האמיתיים שלכם. לדוגמה, תוכלו להשתמש ב-API כדי ליצור מודלים של עומסי עבודה שמשתנים מדי שעה, אבל השימוש ב-Compute Engine מתועד ברמת המיקרו-שנייה.

  • ההערכות של מודל השימוש מתייחסות לשימוש בפרויקט אחד. אם יש לכם הנחות תמורת התחייבות לשימוש (CUDs) והפעלתם את האפשרות של חלוקת ההנחות לכמה פרויקטים, החיובים והזיכויים של ה-CUD ישויכו לכל הפרויקטים שמשתמשים בשירות. לדוגמה, אם בפרויקט א' השימוש היה בשווי 75$‎ ובפרויקט ב' השימוש היה בשווי 25$‎, עד 75% מהזיכויים הזמינים יחולו על פרויקט א' ועד 25% מהזיכויים הזמינים יחולו על פרויקט ב'.

    מידע נוסף על שיוך החיובים והזיכויים במסגרת הנחות תמורת התחייבות לשימוש

  • אם השימוש התרחש בסוף החודש, יכול להיות שהוא יתועד בחשבונית של החודש העוקב.

  • ההערכות בתרחיש העלות לא כוללות את עלות השימוש ברשת שנלווה למכונות הווירטואליות ב-Compute Engine.

  • ההערכות לא כוללות הנחות על שימוש קבוע (SUDs).

  • ההערכות לא כוללות זיכויים בחשבון, כמו שוברי פרסום או הנחות מ-Private Offers ב-Cloud Marketplace.

  • ההערכות לא כוללות שינויים עתידיים במחירים של מוצרי Google Cloud.

תרחישי עלות לדוגמה

בדוגמאות הבאות מוצגות קריאות ל-API לצורך קבלת הערכות של עלויות. למידע מפורט על פורמט הבקשות, ראו הפניית API.

בתגובה מה-API, העלויות המשוערות (נטו) נמצאות באובייקטים האלה:

  • segmentTotalCostEstimate: העלות המשוערת של מקטע זמן.
  • workloadTotalCostEstimate: העלות המשוערת של עומס עבודה.

הערכת העלות של מכונות וירטואליות לפי מחיר מחירון

בתגובה לבקשת ה-API הבאה מתקבלת ההערכה ל-‎5 custom n1 virtual machines (VMs)‎ במחיר מחירון, ל-100 שעות שימוש.

בבקשה, הערך usageRate מציין כמה משאבים נכללים בתרחיש העלות.

POST https://cloudbilling.googleapis.com/v1beta:estimateCostScenario?key=BILLING_ACCOUNT_ID HTTP/1.1

Accept: application/json
Content-Type: application/json

{
  "costScenario": {
    "scenarioConfig": {
      "estimateDuration": "360000s"
    },
    "workloads": [
      {
        "name": "vm-example",
        "computeVmWorkload": {
          "instancesRunning": {
            "usageRateTimeline": {
              "usageRateTimelineEntries": [
                {
                  "usageRate": 5
                }
              ]
            }
          },
          "machineType": {
            "customMachineType": {
              "machineSeries": "n1",
              "virtualCpuCount": 4,
              "memorySizeGb": 4
            }
          },
          "region": "us-central1"
        }
      }
    ]
  }
}

התגובה הצפויה תהיה:

כדי להרחיב את התשובה לדוגמה צריך ללחוץ כאן.

{
  "costEstimationResult": {
    "segmentCostEstimates": [
      {
        "segmentStartTime": {
          "estimationTimeFrameOffset": "0s"
        },
        "workloadCostEstimates": [
          {
            "name": "vm-example",
            "skuCostEstimates": [
              {
                "sku": "services/6F81-5844-456A/skus/ACBC-6999-A1C4",
                "usageAmount": 2000,
                "usageUnit": "h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "66",
                    "nanos": 348000000
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "66",
                    "nanos": 348000000
                  }
                }
              },
              {
                "sku": "services/6F81-5844-456A/skus/51E2-59BD-7A6E",
                "usageAmount": 2000,
                "usageUnit": "GiBy.h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "8",
                    "nanos": 892000000
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "8",
                    "nanos": 892000000
                  }
                }
              }
            ],
            "workloadTotalCostEstimate": {
              "preCreditCostEstimate": {
                "currencyCode": "USD",
                "units": "75",
                "nanos": 240000000
              },
              "netCostEstimate": {
                "currencyCode": "USD",
                "units": "75",
                "nanos": 240000000
              }
            }
          }
        ],
        "segmentTotalCostEstimate": {
          "preCreditCostEstimate": {
            "currencyCode": "USD",
            "units": "75",
            "nanos": 240000000
          },
          "netCostEstimate": {
            "currencyCode": "USD",
            "units": "75",
            "nanos": 240000000
          }
        }
      }
    ],
    "skus": [
      {
        "sku": "services/6F81-5844-456A/skus/ACBC-6999-A1C4",
        "displayName": "Custom Instance Core running in Americas",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 33174000
                  }
                }
              ],
              "unit": "h",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/51E2-59BD-7A6E",
        "displayName": "Custom Instance Ram running in Americas",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 4446000
                  }
                }
              ],
              "unit": "GiBy.h",
              "unitCount": 1
            }
          }
        ]
      }
    ],
    "currencyCode": "USD"
  }
}
  

הערכה של עלות השימוש ב-Cloud Storage לפי מחיר מוסכם בחוזה

בתגובה לבקשת ה-API הבאה מתקבלת ההערכה לחודש אחד של ‎500 GibiBytes (GiB)‎ ב-asia-southeast2, במחיר מוסכם בחוזה:

POST https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID:estimateCostScenario HTTP/1.1

Authorization: Bearer API_ACCESS_TOKEN
Accept: application/json
Content-Type: application/json

{
  "costScenario": {
    "workloads": [
      {
        "name": "storage-example",
        "cloudStorageWorkload": {
          "storageClass": "archive",
          "dataStored": {
            "usageRateTimeline": {
              "unit": "GiBy",
              "usageRateTimelineEntries": [
                {
                  "usageRate": 500
                }
              ]
            }
          },
          "region": {
            "name": "asia-southeast2"
          }
        }
      }
    ],
    "scenarioConfig": {
      "estimateDuration": "2628000s"
    }
  }
}

התגובה הצפויה תהיה:

כדי להרחיב את התשובה לדוגמה צריך ללחוץ כאן.

{
  "costEstimationResult": {
    "segmentCostEstimates": [
      {
        "segmentStartTime": {
          "estimationTimeFrameOffset": "0s"
        },
        "workloadCostEstimates": [
          {
            "name": "storage-example",
            "skuCostEstimates": [
              {
                "sku": "services/95FF-2EF5-5EA1/skus/62E5-3AA6-3149",
                "usageAmount": 493.15068493150687,
                "usageUnit": "GiBy.mo",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "1",
                    "nanos": 232876712
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "1",
                    "nanos": 232876712
                  }
                }
              }
            ],
            "workloadTotalCostEstimate": {
              "preCreditCostEstimate": {
                "currencyCode": "USD",
                "units": "1",
                "nanos": 232876712
              },
              "netCostEstimate": {
                "currencyCode": "USD",
                "units": "1",
                "nanos": 232876712
              }
            }
          }
        ],
        "segmentTotalCostEstimate": {
          "preCreditCostEstimate": {
            "currencyCode": "USD",
            "units": "1",
            "nanos": 232876712
          },
          "netCostEstimate": {
            "currencyCode": "USD",
            "units": "1",
            "nanos": 232876712
          }
        }
      }
    ],
    "skus": [
      {
        "sku": "services/95FF-2EF5-5EA1/skus/62E5-3AA6-3149",
        "displayName": "Archive Storage Jakarta",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 2500000
                  }
                }
              ],
              "unit": "GiBy.mo",
              "unitCount": 1
            }
          }
        ]
      }
    ],
    "currencyCode": "USD"
  }
}
    

הערכת העלות של עומסי עבודה שמשתנים לאורך זמן

בתגובה לבקשת ה-API הבאה מתקבלת ההערכה לחודש שימוש אחד במחירים מותאמים אישית שסוכמו בחוזה במשאבים הבאים:

  • אחסון בנפח ‎7,000GiB
  • 8 מכונות וירטואליות מסוג n2-standard-4
  • 3 מכונות וירטואליות מסוג n2-standard-4 שנוספות 14 ימים אחרי תחילת החודש
POST https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID:estimateCostScenario HTTP/1.1

Authorization: Bearer API_ACCESS_TOKEN
Accept: application/json
Content-Type: application/json

{
  "costScenario": {
    "workloads": [
      {
        "name": "combined-example-storage",
        "cloudStorageWorkload": {
          "region": {
            "name": "us-central1"
          },
          "storageClass": "archive",
          "dataStored": {
            "usageRateTimeline": {
              "unit": "GiBy",
              "usageRateTimelineEntries": [
                {
                  "usageRate": 7000
                }
              ]
            }
          }
        }
      },
      {
        "name": "combined-example-compute",
        "computeVmWorkload": {
          "machineType": {
            "predefinedMachineType": {
              "machineType": "n2-standard-4"
            }
          },
          "region": "us-central1",
          "instancesRunning": {
            "usageRateTimeline": {
              "usageRateTimelineEntries": [
                {
                  "usageRate": 8
                },
                {
                  "usageRate": 11,
                  "effectiveTime": {
                    "estimationTimeFrameOffset": "1209600s"
                  }
                }
              ]
            }
          }
        }
      }
    ],
    "scenarioConfig": {
      "estimateDuration": "2628000s"
    }
  }
}

בדוגמה הזו נעשה שימוש בשדה estimationTimeFrameOffset כדי לקבוע מתי מתחיל מקטע זמן חדש. מספר המכונות הווירטואליות משתנה מ-8 ל-11 ‏(usageRate) אחרי 1,209,600 שניות (14 יום), כפי שמוצג בקטע הקוד הזה:

"usageRateTimeline": {
  "usageRateTimelineEntries": [
    {
      "usageRate": 8
    },
    {
      "usageRate": 11,
      "effectiveTime": {
        "estimationTimeFrameOffset": "1209600s"
      }
    }
  ]

באופן דומה, אם רוצים להעריך את העלות כשעומס העבודה יורד ל-3 מכונות וירטואליות אחרי 20 יום מתחילת מקטע הזמן, אפשר להוסיף עוד מקטע ל-usageRateTimelineEntries לפי הדוגמה הבאה:

"usageRateTimeline": {
  "usageRateTimelineEntries": [
    {
      "usageRate": 8
    },
    {
      "usageRate": 11,
      "effectiveTime": {
        "estimationTimeFrameOffset": "1209600s"
      }
    }
    {
      "usageRate": 3,
      "effectiveTime": {
        "estimationTimeFrameOffset": "1728000s"
      }
    }
  ]

התגובה הצפויה תהיה:

כדי להרחיב את התשובה לדוגמה צריך ללחוץ כאן.

{
  "costEstimationResult": {
    "segmentCostEstimates": [
      {
        "segmentStartTime": {
          "estimationTimeFrameOffset": "0s"
        },
        "workloadCostEstimates": [
          {
            "name": "combined-example-storage",
            "skuCostEstimates": [
              {
                "sku": "services/95FF-2EF5-5EA1/skus/EC4B-C190-470D",
                "usageAmount": 6904.1095890410961,
                "usageUnit": "GiBy.mo",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "8",
                    "nanos": 284931506
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "8",
                    "nanos": 284931506
                  }
                }
              }
            ],
            "workloadTotalCostEstimate": {
              "preCreditCostEstimate": {
                "currencyCode": "USD",
                "units": "8",
                "nanos": 284931506
              },
              "netCostEstimate": {
                "currencyCode": "USD",
                "units": "8",
                "nanos": 284931506
              }
            }
          },
          {
            "name": "combined-example-compute",
            "skuCostEstimates": [
              {
                "sku": "services/6F81-5844-456A/skus/BB77-5FDA-69D9",
                "usageAmount": 27648,
                "usageUnit": "h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "873",
                    "nanos": 980928000
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "873",
                    "nanos": 980928000
                  }
                }
              },
              {
                "sku": "services/6F81-5844-456A/skus/5B01-D157-A097",
                "usageAmount": 110592,
                "usageUnit": "GiBy.h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "468",
                    "nanos": 578304000
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "468",
                    "nanos": 578304000
                  }
                }
              }
            ],
            "workloadTotalCostEstimate": {
              "preCreditCostEstimate": {
                "currencyCode": "USD",
                "units": "1342",
                "nanos": 559232000
              },
              "netCostEstimate": {
                "currencyCode": "USD",
                "units": "1342",
                "nanos": 559232000
              }
            }
          }
        ],
        "segmentTotalCostEstimate": {
          "preCreditCostEstimate": {
            "currencyCode": "USD",
            "units": "1350",
            "nanos": 844163506
          },
          "netCostEstimate": {
            "currencyCode": "USD",
            "units": "1350",
            "nanos": 844163506
          }
        }
      }
    ],
    "skus": [
      {
        "sku": "services/95FF-2EF5-5EA1/skus/EC4B-C190-470D",
        "displayName": "Archive Storage Iowa",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 1200000
                  }
                }
              ],
              "unit": "GiBy.mo",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/BB77-5FDA-69D9",
        "displayName": "N2 Instance Core running in Americas",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 31611000
                  }
                }
              ],
              "unit": "h",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/5B01-D157-A097",
        "displayName": "N2 Instance Ram running in Americas",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 4237000
                  }
                }
              ],
              "unit": "GiBy.h",
              "unitCount": 1
            }
          }
        ]
      }
    ],
    "currencyCode": "USD"
  }
}

  

הערכת העלות של עומסי עבודה עם הנחה תמורת התחייבות לשימוש (CUD)

בדוגמה הבאה מוצגת בקשת API ל-‎a2-megagpu VM, with an NVIDIA Tesla A100 GPU and an Extreme persistent disk‎ למשך 5 שעות (18,000 שניות), במחיר מוסכם בחוזה והתחייבות לשנה.

POST https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID:estimateCostScenario HTTP/1.1

Authorization: Bearer API_ACCESS_TOKEN
Accept: application/json
Content-Type: application/json

{
  "costScenario": {
    "workloads": [{
      "computeVmWorkload": {
        "region": "us-central1",
        "machineType": {
          "predefinedMachineType": {
            "machineType": "a2-megagpu-16g"
          }
        },
        "guestAccelerator": {
          "acceleratorType": "nvidia-tesla-a100",
          "acceleratorCount": "1"
        },
        "persistentDisks": [{
          "diskType": "pd-extreme",
          "scope": "SCOPE_ZONAL",
          "diskSize": {
            "usageRateTimeline": {
              "unit": "GiBy",
              "usageRateTimelineEntries": [{
                "usageRate": 1000.0
              }]
            }
          },
          "provisionedIops": {
            "usageRateTimeline": {
              "usageRateTimelineEntries": [{
                "usageRate": 15000.0
              }]
            }
          }
        }],
        "instancesRunning": {
          "usageRateTimeline": {
            "usageRateTimelineEntries": [{
              "usageRate": 1.0
            }]
          }
        }
      }
    }],
    "commitments": [{
      "vmResourceBasedCud": {
        "region": "us-central1",
        "virtualCpuCount": "48",
        "memorySizeGb": 680.0,
        "plan": "TWELVE_MONTH",
        "machineSeries": "a2"
      }
    }],
    "scenarioConfig": {
      "estimateDuration": "18000s"
    }
  }
}

זו תהיה התגובה הצפויה. ההערכה לחיסכון מה-CUD נמצאת באובייקט commitmentCostEstimates:

כדי להרחיב את התשובה לדוגמה צריך ללחוץ כאן.

{
  "costEstimationResult": {
    "segmentCostEstimates": [
      {
        "segmentStartTime": {
          "estimationTimeFrameOffset": "0s"
        },
        "workloadCostEstimates": [
          {
            "name": "workload",
            "skuCostEstimates": [
              {
                "sku": "services/6F81-5844-456A/skus/2922-40C5-B19F",
                "usageAmount": 533.33333333333337,
                "usageUnit": "h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "16",
                    "nanos": 859200000
                  },
                  "creditEstimates": [
                    {
                      "creditAmount": {
                        "currencyCode": "USD",
                        "units": "-8",
                        "nanos": -429600000
                      },
                      "creditType": "Committed Use Discount"
                    }
                  ],
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "8",
                    "nanos": 429600000
                  }
                }
              },
              {
                "sku": "services/6F81-5844-456A/skus/2390-DCAF-DA38",
                "usageAmount": 7555.5555555555557,
                "usageUnit": "GiBy.h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "32",
                    "nanos": 12888888
                  },
                  "creditEstimates": [
                    {
                      "creditAmount": {
                        "currencyCode": "USD",
                        "units": "-7",
                        "nanos": -344133333
                      },
                      "creditType": "Committed Use Discount"
                    }
                  ],
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "24",
                    "nanos": 668755555
                  }
                }
              },
              {
                "sku": "services/6F81-5844-456A/skus/039F-D0DA-4055",
                "usageAmount": 5.5555555555555554,
                "usageUnit": "h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "16",
                    "nanos": 299488888
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "16",
                    "nanos": 299488888
                  }
                }
              },
              {
                "sku": "services/6F81-5844-456A/skus/165B-942F-F345",
                "usageAmount": 7.6103500761035008,
                "usageUnit": "GiBy.mo",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "nanos": 951293759
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "nanos": 951293759
                  }
                }
              },
              {
                "sku": "services/6F81-5844-456A/skus/DCA4-F1BE-57C4",
                "usageAmount": 114.15525114155251,
                "usageUnit": "mo",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "7",
                    "nanos": 420091324
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "7",
                    "nanos": 420091324
                  }
                }
              }
            ],
            "workloadTotalCostEstimate": {
              "preCreditCostEstimate": {
                "currencyCode": "USD",
                "units": "73",
                "nanos": 542962859
              },
              "creditEstimates": [
                {
                  "creditAmount": {
                    "currencyCode": "USD",
                    "units": "-15",
                    "nanos": -773733333
                  },
                  "creditType": "Committed Use Discount"
                }
              ],
              "netCostEstimate": {
                "currencyCode": "USD",
                "units": "57",
                "nanos": 769229526
              }
            }
          }
        ],
        "segmentTotalCostEstimate": {
          "preCreditCostEstimate": {
            "currencyCode": "USD",
            "units": "83",
            "nanos": 479896191
          },
          "creditEstimates": [
            {
              "creditAmount": {
                "currencyCode": "USD",
                "units": "-15",
                "nanos": -773733333
              },
              "creditType": "Committed Use Discount"
            }
          ],
          "netCostEstimate": {
            "currencyCode": "USD",
            "units": "67",
            "nanos": 706162858
          }
        },
        "commitmentCostEstimates": [
          {
            "name": "test1",
            "skuCostEstimates": [
              {
                "sku": "services/6F81-5844-456A/skus/3A31-931E-6360",
                "usageAmount": 266.66666666666669,
                "usageUnit": "h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "5",
                    "nanos": 310666666
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "5",
                    "nanos": 310666666
                  }
                }
              },
              {
                "sku": "services/6F81-5844-456A/skus/220C-35D0-70E0",
                "usageAmount": 1733.3333333333333,
                "usageUnit": "GiBy.h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "4",
                    "nanos": 626266666
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "4",
                    "nanos": 626266666
                  }
                }
              }
            ],
            "commitmentTotalCostEstimate": {
              "preCreditCostEstimate": {
                "currencyCode": "USD",
                "units": "9",
                "nanos": 936933332
              },
              "netCostEstimate": {
                "currencyCode": "USD",
                "units": "9",
                "nanos": 936933332
              }
            }
          }
        ]
      }
    ],
    "skus": [
      {
        "sku": "services/6F81-5844-456A/skus/3A31-931E-6360",
        "displayName": "Commitment v1: A2 Cpu in Americas for 1 Year",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 19915000
                  }
                }
              ],
              "unit": "h",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/220C-35D0-70E0",
        "displayName": "Commitment v1: A2 Ram in Americas for 1 Year",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 2669000
                  }
                }
              ],
              "unit": "GiBy.h",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/039F-D0DA-4055",
        "displayName": "Nvidia Tesla A100 GPU running in Americas",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "units": "2",
                    "nanos": 933908000
                  }
                }
              ],
              "unit": "h",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/165B-942F-F345",
        "displayName": "Extreme PD Capacity",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 125000000
                  }
                }
              ],
              "unit": "GiBy.mo",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/DCA4-F1BE-57C4",
        "displayName": "Extreme PD IOPS",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 65000000
                  }
                }
              ],
              "unit": "mo",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/2922-40C5-B19F",
        "displayName": "A2 Instance Core running in Americas",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 31611000
                  }
                }
              ],
              "unit": "h",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/2390-DCAF-DA38",
        "displayName": "A2 Instance Ram running in Americas",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 4237000
                  }
                }
              ],
              "unit": "GiBy.h",
              "unitCount": 1
            }
          }
        ]
      }
    ],
    "currencyCode": "USD"
  }
}
    

הערכת העלות של מכונה וירטואלית בתוכנית פרימיום, במחיר מחירון

בדוגמה הבאה מוצגת בקשת API ל-‎5 custom n1 virtual machines with a premium license of Windows Server 2022 DC‎ במחיר מחירון, למשך 100 שעות.

POST https://cloudbilling.googleapis.com/v1beta:estimateCostScenario?key=[YOUR_API_KEY] HTTP/1.1

Accept: application/json
Content-Type: application/json

{
  "costScenario": {
    "scenarioConfig": {
      "estimateDuration": "360000s"
    },
    "workloads": [
      {
        "name": "vm-example",
        "computeVmWorkload": {
          "instancesRunning": {
            "usageRateTimeline": {
              "usageRateTimelineEntries": [
                {
                  "usageRate": 5
                }
              ]
            }
          },
          "machineType": {
            "customMachineType": {
              "machineSeries": "n1",
              "virtualCpuCount": 4,
              "memorySizeGb": 4
            }
          },
          "region": "us-central1",
          "licenses": "projects/windows-cloud/global/licenses/windows-server-2022-dc"
        }
      }
    ]
  }
}

התגובה הצפויה תהיה:

כדי להרחיב את התשובה לדוגמה צריך ללחוץ כאן.

{
  "costEstimationResult": {
    "segmentCostEstimates": [
      {
        "segmentStartTime": {
          "estimationTimeFrameOffset": "0s"
        },
        "workloadCostEstimates": [
          {
            "name": "vm-example",
            "skuCostEstimates": [
              {
                "sku": "services/6F81-5844-456A/skus/ACBC-6999-A1C4",
                "usageAmount": 2000,
                "usageUnit": "h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "66",
                    "nanos": 348000000
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "66",
                    "nanos": 348000000
                  }
                }
              },
              {
                "sku": "services/6F81-5844-456A/skus/51E2-59BD-7A6E",
                "usageAmount": 2000,
                "usageUnit": "GiBy.h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "8",
                    "nanos": 892000000
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "8",
                    "nanos": 892000000
                  }
                }
              },
              {
                "sku": "services/6F81-5844-456A/skus/92D2-8A8F-DF54",
                "usageAmount": 2000.0,
                "usageUnit": "h",
                "costEstimate": {
                  "preCreditCostEstimate": {
                    "currencyCode": "USD",
                    "units": "92"
                  },
                  "netCostEstimate": {
                    "currencyCode": "USD",
                    "units": "92"
                  }
                }
              }
            ],
            "workloadTotalCostEstimate": {
              "preCreditCostEstimate": {
                "currencyCode": "USD",
                "units": "167",
                "nanos": 240000000
              },
              "netCostEstimate": {
                "currencyCode": "USD",
                "units": "167",
                "nanos": 240000000
              }
            }
          }
        ],
        "segmentTotalCostEstimate": {
          "preCreditCostEstimate": {
            "currencyCode": "USD",
            "units": "167",
            "nanos": 240000000
          },
          "netCostEstimate": {
            "currencyCode": "USD",
            "units": "167",
            "nanos": 240000000
          }
        }
      }
    ],
    "skus": [
      {
        "sku": "services/6F81-5844-456A/skus/92D2-8A8F-DF54",
        "displayName": "Licensing Fee for Windows Server 2022 Datacenter Edition on VM",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 46000000
                  }
                }
              ],
              "unit": "GiBy.h",
              "unitCount": 1.0
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/51E2-59BD-7A6E",
        "displayName": "Custom Instance Ram running in Americas",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 4446000
                  }
                }
              ],
              "unit": "GiBy.h",
              "unitCount": 1
            }
          }
        ]
      },
      {
        "sku": "services/6F81-5844-456A/skus/ACBC-6999-A1C4",
        "displayName": "Custom Instance Core running in Americas",
        "prices": [
          {
            "priceType": "RATE",
            "rate": {
              "tiers": [
                {
                  "price": {
                    "currencyCode": "USD",
                    "nanos": 33174000
                  }
                }
              ],
              "unit": "h",
              "unitCount": 1
            }
          }
        ]
      }
    ],
    "currencyCode": "USD"
  }
}