אפשר לשלב את נתוני החיוב ב-Cloud שמיוצאים ל-BigQuery עם Looker Studio כדי להציג מידע עדכני לגבי העלויות שלכם ב-Google Cloud.
בדף הזה מוסבר איך מגדירים את מרכז הבקרה לנתוני חיוב ותובנות לגבי עלויות לנתוני החיוב שלכם ב-Cloud. בלוח הבקרה תוכלו לענות על שאלות לגבי ההוצאות שלכם ב-Google Cloud. למשל, מה גובה ההוצאות שלי על משאבים של Compute Engine?
כדי להגדיר את מרכז הבקרה צריך לפעול לפי ההנחיות במדריך הזה, או לצפות בסרטון הבא:
מטרות
במדריך הזה תלמדו:
איך ליצור עותק משלכם של מרכז הבקרה לנתוני חיוב ותובנות לגבי עלויות באמצעות Cloud Shell.
איך לשנות את התצוגות במרכז הבקרה כדי להציג מקרים מיוחדים, למשל, אם יש לכם מספר חשבונות לחיוב ב-Cloud או אם יש לכם חשבון לחיוב ב-Cloud שמוגדר למטבע שאינו דולר ארה"ב.
עלויות
במסמך הזה משתמשים ברכיבים הבאים של Google Cloud, והשימוש בהם כרוך בתשלום:
בדרך כלל העלות של אחסון נתוני החיוב ב-BigQuery היא מינימלית, או שהשירות מוצע בחינם. יכול להיות שהרצת שאילתות על הנתונים לצורך ניתוח ייצר לכם עלויות, בהתאם לגודל מערך הנתונים ב-BigQuery.
תוכלו להשתמש במחשבון התמחור כדי ליצור הערכת עלויות בהתאם לשימוש החזוי.
לפני שמתחילים
הגדרת ייצוא של נתוני החיוב ב-Cloud אל BigQuery.
כדי להשתמש במרכז הבקרה, צריך להפעיל את ייצוא הנתונים ל-BigQuery לנתוני השימוש הסטנדרטיים והמפורטים בחיוב ב-Cloud.
לאחר הפעלת ייצוא הנתונים, יחלוף בערך יום עד שמערך הנתונים יאוכלס בנתוני החיוב ב-Cloud. יכול להיות שקודם תראו מעט תעבורת נתונים יוצאת (egress), לאחר מכן כמה חיובי VM, לאחר מכן נתוני שימוש ב-Pub/Sub וכן הלאה. אחרי שתצברו נתונים במערך הנתונים תוכלו להריץ עליהם שאילתות.
אם בארגון שלכם כבר הוגדר ייצוא ל-BigQuery, אתם צריכים הרשאות ליצירת תצוגות ב-BigQuery בפרויקט שמארח את מערכי הנתונים.
לחלופין, אם אתם רוצים ליצור מערך נתונים חדש לתצוגות של BigQuery, צריכות להיות לכם הרשאות ליצירת מערכי נתונים של BigQuery.
עליכם לקבל את המידע הבא על סביבת Google Cloud:
- מזהה הפרויקט שבו מתארח מערך הנתונים של BigQuery עם נתוני החיוב ב-Cloud.
- השמות של מערכי הנתונים שמכילים את ייצוא נתוני העלות הסטנדרטיים והמפורטים. בדרך כלל, נתוני העלות מיוצאים לאותו מערך נתונים.
יצירת עותק של מרכז הבקרה
כדי ליצור עותק משלכם של מרכז הבקרה, קודם כול צריך לשכפל את מאגר GitHub שבו המערכת מבצעת אוטומציה של התהליך. בשלב הזה משתמשים ב-Cloud Shell, שהיא סביבת מעטפת אינטראקטיבית של Google Cloud שניתן להשתמש בה מהדפדפן.
ככלל, סקריפט ההגדרה של המאגר:
- יוצר מערך נתונים חדש ב-BigQuery, עם תצוגות שמאחזרות את הנתונים מהייצוא של נתוני העלות הסטנדרטיים והמפורטים.
- מעתיק את התבנית של מרכז הבקרה ומקשר את העותק לתצוגות של הנתונים שלכם ב-BigQuery.
- יוצר קישור של Looker Studio לעותק של מרכז הבקרה. את הקישור אפשר לשמור במרכזי הבקרה של Looker Studio.
כך יוצרים עותק:
פותחים את מאגר הנתונים של GitHub ב-Cloud Shell:
מנווטים לספרייה
billboard
:cd examples/billboard
מריצים את הפקודות הבאות כדי להגדיר את סביבת Python לסקריפט:
rm -rf bill-env pip install virtualenv virtualenv bill-env source bill-env/bin/activate pip install -r requirements.txt
מריצים את הסקריפט שיוצר את מרכז הבקרה. יכול להיות שתצטרכו לאשר ל-Cloud Shell לבצע בשמכם קריאות ל-API:
python billboard.py \ -pr 'PROJECT_ID' \ -se 'STANDARD_BILLING_EXPORT_DATASET' \ -de 'DETAILED_BILLING_EXPORT_DATASET' \ -bb 'BILLBOARD_DATASET'
כאשר אלה המשתנים:
- PROJECT_ID: מזהה הפרויקט שמארח את מערכי הנתונים של החיוב ב-Cloud.
- STANDARD_BILLING_EXPORT_DATASET: מערך הנתונים ב-BigQuery שמכיל את הייצוא של נתוני עלות השימוש הסטנדרטיים.
- DETAILED_BILLING_EXPORT_DATASET: מערך הנתונים ב-BigQuery שמכיל את הייצוא של נתוני עלות השימוש המפורטים.
- BILLBOARD_DATASET: השם של מערך הנתונים ב-BigQuery, שבו יוצרים את התצוגות של BigQuery במרכז הבקרה. למשל,
example_dashboard_views
. אם עדיין אין לכם מערך נתונים עבור התצוגות, הסקריפט יוצר מערך נתונים חדש בשם הזה.
כשהרצת הסקריפט תסתיים, תקבלו קישור של Looker Studio למרכז הבקרה.
לוחצים על הקישור ל-Looker Studio כדי לפתוח את מרכז הבקרה.
ב-Looker Studio, לוחצים על Edit and share כדי לשמור את מרכז הבקרה. כשמופיעה הודעה שבה אתם מתבקשים להוסיף מקורות נתונים לדוח, לוחצים על Add to report.
עכשיו אתם יכולים לגשת למרכז הבקרה דרך דף הבית של Looker Studio.
(מתקדם) שינוי הנתונים למספר חשבונות לחיוב ב-Cloud
אם אתם רוצים שמרכז הבקרה יכלול נתונים ממספר חשבונות לחיוב ב-Cloud, אתם יכולים לשנות את התצוגות של BigQuery כך שיכללו את הייצוא של נתוני החיוב של כל החשבונות לחיוב ב-Cloud.
לפני שמתחילים
פועלים לפי כל השלבים בקטע הדרישות המוקדמות במדריך זה עבור כל חשבון לחיוב ב-Cloud שרוצים לכלול.
עדכון התצוגות ב-BigQuery כך שיכללו נתוני ייצוא נוספים של החיוב ב-Cloud
במסוף Google Cloud, פותחים את הדף ב-BigQuery.
בוחרים את הפרויקט שמכיל את מערך הנתונים שיצרתם עבור מרכז הבקרה.
בחלונית Explorer מרחיבים את הפרויקט ואז מרחיבים את מערך הנתונים.
לוחצים על התצוגה billboard כדי לראות את הפרטים שלה. בתצוגה מוצגת שאילתה על ייצוא נתוני העלות ונתוני השימוש הסטנדרטיים.
לוחצים על הכרטיסייה Details ואז על Edit Query. השאילתה על התצוגה דומה לשאילתה הבאה:
SELECT *, COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) AS credits_sum_amount, COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) + cost as net_cost, PARSE_DATE("%Y%m", invoice.month) AS Invoice_Month, _PARTITIONDATE AS date from `PROJECT_ID.BILLING_ACCOUNT_EXPORT` s WHERE _PARTITIONDATE > DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
כאשר PROJECT_ID הוא שם הפרויקט ב-BigQuery שמכיל את ייצוא נתוני העלות הסטנדרטיים של החיוב ב-Cloud, ו-BILLING_ACCOUNT_EXPORT הוא השם של טבלת BigQuery שמכילה את נתוני העלות הסטנדרטיים שלכם.
משכפלים את השאילתה הקיימת, ובקטע
FROM
מחליפים את מזהה הפרויקט ואת טבלת BigQuery במידע של החשבון הנוסף לחיוב ב-Cloud.מוסיפים את האופרטור
UNION ALL
בין שתי השאילתות כדי לשלב בין הנתונים. השאילתה הסופית תיראה בערך כמו בדוגמה הבאה, שמשלבת את ייצוא הנתונים של הפרויקטים BILLING_ACCOUNT_1 ו-BILLING_ACCOUNT_2 שנמצאים בטבלאות PROJECT_ID_1 ו-PROJECT_ID_2, בהתאמה.SELECT *, --query for BILLING_ACCOUNT_1 COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) AS credits_sum_amount, COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) + cost as net_cost, EXTRACT(DATE FROM _PARTITIONTIME) AS date FROM `PROJECT_ID_1.BILLING_ACCOUNT_1_EXPORT` s WHERE _PARTITIONTIME >"2021-01-01" UNION ALL SELECT *, --query for BILLING_ACCOUNT_2 COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) AS credits_sum_amount, COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) + cost as net_cost, PARSE_DATE("%Y%m", invoice.month) AS Invoice_Month, _PARTITIONDATE AS date from `PROJECT_ID_2.BILLING_ACCOUNT_2_EXPORT` s WHERE _PARTITIONDATE > DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
חוזרים על השלבים האלה עבור התצוגה billboard_detail, שבה המערכת מבצעת שאילתה על נתוני העלות ונתוני השימוש המפורטים.
אם אחד מהחשבונות מוגדר למטבע שאינו דולר ארה"ב, חוזרים על השלבים האלה ומשתמשים בעמודה
currency_conversion_rate
כדי להמיר לדולר ארה"ב, בדומה לדוגמה הבאה:select *, (COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0))/currency_conversion_rate AS credits_sum_amount, (COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0))/currency_conversion_rate + cost/currency_conversion_rate as net_cost, 'USD' as net_cost_currency, PARSE_DATE("%Y%m", invoice.month) AS Invoice_Month, _PARTITIONDATE AS date from `PROJECT_ID.BILLING_ACCOUNT_DATASET` s WHERE _PARTITIONDATE > DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
הסרת המשאבים
אם אתם רוצים להפסיק להשתמש במרכז הבקרה, תוכלו לשכפל את המאגר של GitHub ולהריץ את הסקריפט של מרכז הבקרה עם האפשרות -clean
. הסקריפט ימחק את התצוגות ב-BigQuery, אבל ישאיר את מערך הנתונים של הייצוא ב-BigQuery ללא שינוי.
פותחים את מאגר הנתונים של GitHub ב-Cloud Shell:
מנווטים לספרייה
billboard
:cd examples/billboard
מריצים את הפקודות הבאות כדי להגדיר את סביבת Python לסקריפט:
pip install virtualenv virtualenv bill-env source bill-env/bin/activate pip install -r requirements.txt
מריצים את הפקודה להסרת המשאבים:
python billboard.py \ -pr 'PROJECT_ID' \ -se 'STANDARD_BILLING_EXPORT_DATASET' \ -de 'DETAILED_BILLING_EXPORT_DATASET' -bb 'BILLBOARD_DATASET' \ -clean yes
כאשר אלה המשתנים:
- PROJECT_ID: מזהה הפרויקט שמארח את מערכי הנתונים של החיוב ב-Cloud.
- STANDARD_BILLING_EXPORT_DATASET: מערך הנתונים ב-BigQuery שמכיל את הייצוא של נתוני עלות השימוש הסטנדרטיים.
- DETAILED_BILLING_EXPORT_DATASET: מערך הנתונים ב-BigQuery שמכיל את הייצוא של נתוני עלות השימוש המפורטים.
- BILLBOARD_DATASET: מערך הנתונים ב-BigQuery שבו יצרתם את התצוגות של BigQuery עבור מרכז הבקרה.
כדי למחוק את מרכז הבקרה ב-Looker Studio, פותחים את Looker Studio, מאתרים את מרכז הבקרה הרצוי ובתפריט לוחצים על Remove.