תכנון התקנה בסיסית בציוד

הדף הזה הוא החלק הראשון במדריך בן שני חלקים, שבו מוסבר איך להשתמש ב-Google Distributed Cloud (תוכנה בלבד) כדי ליצור התקנה קטנה של אשכולות GKE בשרת Bare Metal לצורך הוכחת היתכנות. בחלק הראשון של המדריך הזה, תגדירו סביבת חומרה מינימלית ותתכננו את כתובות ה-IP. בחלק השני, יצירת אשכולות בסיסיים, יוצרים אשכול אדמין ואשכול משתמשים.

המדריך הזה מיועד לאדמינים, לארכיטקטים ולמפעילים שמגדירים, מנטרים ומנהלים את מחזור החיים של התשתית. מידע נוסף על תפקידים ומשימות נפוצים זמין במאמר תפקידים ומשימות נפוצים של משתמשי GKE.

יכול להיות שהתשתית שתגדירו באמצעות המדריך הזה לא תתאים לצרכים שלכם בסביבת הייצור. מידע נוסף על התקנות בייצור זמין במאמר בחירת מודל פריסה.

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

  1. מידע על Google Distributed Cloud
  2. כדאי להכיר כמה מושגים בסיסיים, כולל פרויקטים, הרשאות IAM וחשבונות שירות. Google Cloud
  3. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. Verify that billing is enabled for your Google Cloud project.

  8. חשוב לרשום את Google Cloud מזהה הפרויקט, כי תצטרכו אותו בהמשך.

סקירה כללית של התהליך

כדי להגדיר תשתית מינימלית, צריך לבצע את השלבים הבאים:

  1. הגדרת תחנת עבודה לאדמין הגדרת תחנת עבודה של אדמין ב-Linux למשימות ניהול מקומיות. יכול להיות שמדובר במכונה קיימת או במכונה ייעודית שיכולה לנהל כמה אשכולות.

  2. מגדירים את המכונות של צומתי האשכול. מגדירים לפחות שלוש מכונות לצמתים: צומת אחד של אשכול אדמין, צומת אחד של מישור הבקרה של אשכול משתמשים וצומת אחד של צומת עובד באשכול משתמשים.

  3. תכנון הרשת מתכננים את כתובות ה-IP של מכונות הצמתים, כתובות ה-IP הווירטואליות (VIP) וטווחי ה-CIDR של השירותים וה-Pods.

  4. בודקים את המשאבים Google Cloud הנדרשים. כדי ליצור אשכולות,Google Cloud הפרויקט שלכם צריך Google APIs ספציפיים וחשבונות שירות.

1. הגדרת תחנת עבודה לאדמין

תחנת העבודה של האדמין מארחת כלים וקובצי הגדרות ליצירה של אשכולות ולעבודה איתם.

דרישות חומרה

כדי להריץ כלים ולאחסן את המשאבים שקשורים ליצירה ולניהול של אשכולות, תחנת העבודה של האדמין צריכה כוח מחשוב, זיכרון ונפח אחסון משמעותיים.

צריך לוודא שתחנת העבודה של האדמין עומדת בדרישות החומרה הבאות:

  • מעבד עם 2 ליבות לפחות
  • זיכרון RAM בנפח 4GiB לפחות
  • נפח אחסון של 128GiB לפחות

דרישות מערכת ההפעלה

כדי להריץ את bmctl וליצור אשכול, למחשב האדמין צריכות להיות אותן דרישות של מערכת הפעלה (OS) כמו לצמתים. בכל מכונה צריך להפעיל גרסה נתמכת של Ubuntu.

הגדרת מערכת ההפעלה והתוכנה

בתחנת העבודה של האדמין, מתקינים ומגדירים את הרכיבים הבאים:

  • הגדרת Ubuntu

  • התקנת ה-CLI של gcloud

  • התקנה של kubectl

  • התקנה של bmctl

הגדרת מערכת ההפעלה

מריצים את הפקודות הבאות כדי לעדכן את הגדרות חומת האש, להתקין ולהגדיר את Docker ולוודא שכל מכונה משתמשת בסנכרון זמן:

  1. משביתים את חומת האש הפשוטה (UFW) ומאמתים את הסטטוס שלה:

    sudo ufw disable
    sudo ufw status
    
  2. מסירים את כל הגרסאות הקודמות של Docker, מעדכנים את מנהל החבילות ומתקינים את הגרסה האחרונה של Docker:

    sudo apt-get remove docker docker-engine docker.io containerd runc
    sudo apt-get update
    sudo apt-get install \
      apt-transport-https \
      ca-certificates \
      curl \
      gnupg-agent \
      software-properties-common \
      docker.io
    
  3. מוודאים שאתם מריצים עכשיו את גרסה 19.03 ואילך של Docker:

    sudo docker version
    

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

    Client:
     Version:           20.10.21
     API version:       1.41
     Go version:        go1.18.1
     ...
    
    Server:
     Engine:
      Version:          20.10.21
      API version:      1.41 (minimum version 1.12)
      Go version:       go1.18.1
      ...
    
  4. יוצרים את קבוצת docker.

    sudo groupadd docker
    
  5. מוסיפים את עצמכם לקבוצת Docker:

    sudo usermod -aG docker $USER
    
  6. מפעילים את השינויים בקבוצה:

    newgrp docker
    
  7. מוודאים ששעון המערכת מסונכרן:

    timedatectl
    

    הפלט של timedatectl מכיל את הסטטוס הבא:

    System clock synchronized: yes
    

התקנת Google Cloud CLI

כדי להתקין את Google Cloud CLI ב-Ubuntu, פועלים לפי ההוראות במדריך ההתקנה הזה.

כדי להגדיר את ה-CLI של gcloud, מבצעים את השלבים הבאים בתחנת העבודה של האדמין:

  1. נכנסים לחשבון כדי להגדיר את המאפיין account של ה-CLI של gcloud:

    gcloud auth login
    
  2. מגדירים את המאפיין project של ה-CLI של gcloud:

    gcloud config set project PROJECT_ID
    

    מחליפים את PROJECT_ID במזהה שלGoogle Cloud הפרויקט.

  3. מוודאים שהנכסים account ו-project מוגדרים בצורה נכונה:

    gcloud config list
    

    בפלט מוצגים הערכים של המאפיינים account ו-project. לדוגמה:

    [core]
    account = my-name@google.com
    disable_usage_reporting = False
    project = my-project-1234
    Your active configuration is: [default]
    

התקנת kubectl

כדי להתקין את kubectl:

  1. מריצים את הפקודה הבאה בתחנת העבודה של האדמין:

    gcloud components install kubectl
    

התקנת bmctl

bmctl הוא כלי שורת פקודה קנייני ל-Google Distributed Cloud שבעזרתו אפשר ליצור ולנהל אשכולות.

מתקינים את bmctl בתחנת העבודה של האדמין:

  1. יוצרים ספרייה בשם baremetal ומוסיפים אותה לנתיב. אם אתם בספריית הבית, הפקודות הן:

    mkdir baremetal
    export PATH="$HOME/baremetal:$PATH"
    
  2. מריצים את הפקודה הבאה כדי להוריד את הגרסה האחרונה של קובץ ה-bmctlbinary ולהפוך אותו לקובץ הפעלה:

    gcloud storage cp gs://anthos-baremetal-release/bmctl/1.35.100/linux-amd64/bmctl .
    chmod +x ./bmctl
    
  3. מוודאים ש-bmctl מותקן וניתן להפעלה:

    bmctl version
    

    התגובה אמורה להיראות כך:

    [2023-05-12 17:36:16+0000] bmctl version: 1.14.2-gke.11, git commit: 4ff1347446a93925a079000b50437d4ecebcdf3a, build date: Mon Feb 27 14:07:30 PST 2023

קישוריות

למחשב האדמין צריכה להיות גישה ל- Google Cloud ולכל הצמתים באשכול.

גישה אל Google Cloud

תחנת העבודה של האדמין ניגשת אל Google Cloud כדי להוריד ולהתקין כלים ותמונות, לעבד בקשות הרשאה, ליצור חשבונות שירות, לנהל רישום ביומן ומעקב ועוד. אי אפשר ליצור אשכולות בלי גישה ל-Google Cloud.

גישה מתחנת העבודה של האדמין

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

  • קישוריות בשכבה 3 לכל המכונות של צמתי האשכול.
  • גישה ל-VIP של מישור הבקרה.
  • גישת SSH ללא סיסמה לכל המכונות של צומתי האשכול, בתור root או בתור משתמש עם הרשאות sudo ללא סיסמה.

בקטע הבא מפורטות הוראות להגדרת SSH בתחנת העבודה של האדמין ובמכונות הצמתים.

‫2. הגדרה של מכונות צומת באשכול

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

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

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

דרישות חומרה

כל מכונת צומת חייבת לעמוד בדרישות החומרה הבאות:

  • מעבד עם 2 ליבות לפחות
  • זיכרון RAM בנפח 4GiB לפחות
  • נפח אחסון של 128GiB לפחות

דרישות מערכת ההפעלה

בכל מכונת צומת צריך להפעיל גרסה נתמכת של Ubuntu.

הגדרת Ubuntu

מגדירים את Ubuntu בכל צומת באמצעות אותן הוראות שבהן השתמשתם עבור תחנת העבודה של האדמין.

הגדרת גישת SSH לצמתים

למחשב של האדמין צריכה להיות גישת SSH ללא סיסמה לכל המכונות של צומתי האשכול. אפשר להגדיר SSH כroot או עם משתמש שיש לו הרשאות sudo ללא סיסמה.

אלה השלבים הכלליים להגדרת SSH ל-Google Distributed Cloud:

  1. מתקינים ומגדירים SSH בכל המכונות.

  2. יוצרים מפתחות SSH ומעתיקים את המפתח הציבורי לכל מכונת צומת.

  3. השבתת אימות סיסמה במכונות צומת.

  4. מוודאים שיש גישת SSH בין תחנת העבודה של האדמין לבין מכונות הצומת.

התקנה והגדרה של SSH בכל המכונות

ב-Google Distributed Cloud נדרשת תקשורת SSH ללא סיסמה בין תחנת העבודה של האדמין לבין צמתי האשכול. מבצעים את השלבים הבאים בתחנת העבודה של האדמין ובכל מכונת צומת.

כדי להגדיר SSH במכונות שמריצות Ubuntu:

  1. אם עדיין לא מופעל שרת SSH, מתקינים אותו עכשיו:

    sudo apt update
    sudo apt install openssh-server
    sudo systemctl status ssh
    
  2. כדי להפעיל אימות סיסמה של SSH, מבטלים את ההערה בשורות PermitRootLogin ו-PasswordAuthentication בקובץ /etc/ssh/sshd_config או מוסיפים אותן, ומגדירים את הערכים ל-yes:root

    # Authentication:
    
    #LoginGraceTime 2m
    PermitRootLogin yes
    #StrictModes yes
    #MaxAuthTries 6
    #MaxSessions 10
    ...
    PasswordAuthentication yes
    
  3. הגדרת סיסמת שורש:

    sudo passwd root
    
  4. כדי להחיל את השינויים בהגדרות ה-SSH, מפעילים מחדש את שירות ה-SSH:

    sudo systemctl restart ssh.service
    
  5. מפעילים מחדש את המחשב.

  6. כדי לוודא ש-SSH פועל, יוצרים חיבור SSH ממכונה אחרת.

יצירת מפתחות SSH והעתקת המפתח הציבורי לכל מכונת צומת

כדי ליצור חיבורים מאובטחים ללא סיסמה בין תחנת העבודה של האדמין לבין הצמתים, צריך ליצור מפתח SSH בתחנת העבודה של האדמין ולשתף את המפתח הציבורי עם הצמתים.

  1. בתחנת העבודה של האדמין, יוצרים זוג מפתחות פרטיים וציבוריים. לא מגדירים ביטוי גישה למפתחות:

    ssh-keygen -t rsa
    
  2. בתחנת העבודה של האדמין, מעתיקים את המפתח הציבורי שנוצר לכל אחת ממכונות הצומת:

    ssh-copy-id -i PUBLIC_KEY root@CLUSTER_NODE_IP
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PUBLIC_KEY: הנתיב לקובץ שמכיל את המפתח הציבורי של SSH. כברירת מחדל, הנתיב הוא /home/USERNAME/.ssh/id_rsa.pub
    • CLUSTER_NODE_IP: כתובת ה-IP של מכונת הצומת
השבתת אימות באמצעות סיסמה במכונות צמתים

בשלב הזה, כבר לא צריך להפעיל אימות באמצעות סיסמה.

לכל מכונת צומת:

  1. פותחים את /etc/ssh/sshd_config, מגדירים את PasswordAuthentication ל-no ושומרים את הקובץ.

  2. מפעילים מחדש את שירות ה-SSH.

    sudo systemctl restart ssh.service
    
אימות גישת SSH בין תחנת עבודה של אדמין לבין מכונות צמתים

כש-SSH מוגדר בצורה נכונה, אפשר ליצור חיבור SSH למכונת הצומת מתחנת העבודה של האדמין (בתור משתמש root) בלי סיסמה.

מוודאים שאימות באמצעות מפתח ציבורי פועל בין תחנת העבודה של האדמין לבין צמתי האשכול:

  1. בתחנת העבודה של האדמין, מריצים את הפקודה הבאה לכל מכונת צומת:

    ssh -o IdentitiesOnly=yes -i PRIVATE_KEY root@CLUSTER_NODE_IP
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PRIVATE_KEY: הנתיב לקובץ שמכיל את מפתח ה-SSH הפרטי. כברירת מחדל, הנתיב הוא /home/USERNAME/.ssh/id_rsa
    • CLUSTER_NODE_IP: כתובת ה-IP של מכונת הצומת

3. תכנון הרשת

כשמתקינים אשכולות, חשוב לתכנן את כתובות ה-IP, ולוודא שלא נוצרים קונפליקטים בכתובות. יכול להיות שתצטרכו את עזרת האדמין של הרשת כדי למצוא כתובות מתאימות, גם להתקנה הפשוטה הזו. לא כולל CIDR של Pods ו-Services, צריך לפחות 15 כתובות IP ייחודיות להתקנה מינימלית של אדמין קלאסטר וקלאסטר משתמשים.

מתכננים ומציינים כתובות IP לרכיבי האשכול הבאים:

  • צמתי אשכול: צריך כתובת IP לכל מכונת צומת
  • כתובות IP וירטואליות (VIP): אתם צריכים כתובות VIP כדי לגשת לשרתי Kubernetes API, ל-ingress proxy ולשירותים מסוג LoadBalancer
  • ‫Pods ו-Services: אתם צריכים טווחי כתובות CIDR כדי להכיל כל Pod ו-Service שפועלים באשכולות

בהמשך הקטע הזה יש דוגמאות לערכים שמתאימים להתקנה הזו ברשת היפותטית – הערכים שלכם יהיו שונים.

במקרה של התקנה קטנה, צריך למקם את תחנת העבודה של האדמין, את צומת האשכול של האדמין ואת צמתי האשכול של המשתמש באותו דומיין בשכבה 2. לדוגמה, נניח שכל כתובות ה-IP בטווח 172.16.20.0/24 מנותבות לדומיין מסוים בשכבה 2. נניח גם שמנהל הרשת אומר שאפשר להשתמש בכתובות 172.16.20.10 - 172.16.20.12 למכונות צמתים ובכתובות 172.16.0.13 -172.16.20.24 לכתובות IP וירטואליות.

הדיאגרמה הבאה ממחישה דומיין ברמה 2 עם תחנת עבודה של אדמין, אשכול אדמין ואשכול משתמשים:

כתובות IP של אשכול אדמין ואשכול משתמשים.
כתובות IP של אשכול אדמין ואשכול משתמשים (לחיצה להגדלה)

כתובות IP לדוגמה של צומתי אשכול

בטבלה הבאה מופיעה דוגמה לאופן השימוש בכתובות IP לצורך צמתי אשכול:

מכונה תיאור כתובת IP
צומת מישור הבקרה של אשכול אדמין מכונה פיזית שמשמשת כצומת של מישור הבקרה עבור אשכול האדמין 172.16.20.10
צומת של מישור הבקרה באשכול משתמשים מכונה פיזית שמשמשת כצומת של מישור הבקרה עבור אשכול המשתמשים ‫172.16.20.11
צומת עובד באשכול משתמשים מכונה פיזית שמריצה עומסי עבודה של משתמשים 172.16.20.12

דוגמאות לכתובות IP וירטואליות (VIP)

בטבלה הבאה מופיעה דוגמה לאופן שבו אפשר לציין כתובות VIP עבור האשכולות:

VIP תיאור כתובת IP
כתובת ה-VIP של מישור הבקרה של אדמין קלאסטר כתובת ה-VIP של מישור הבקרה של אשכול האדמין (שרת ה-Kubernetes API של אשכול האדמין) 172.16.20.13
כתובת ה-VIP של מישור הבקרה של אשכול המשתמשים כתובת VIP של מישור הבקרה של אשכול משתמשים (שרת Kubernetes API של אשכול משתמשים) 172.16.20.14
כתובת VIP של תעבורת נתונים נכנסת כתובת VIP של Ingress (כלולה בטווח של מאגר הכתובות של MetalLB) 172.16.20.15
כתובות VIP של שירותים עשר כתובות לשימוש ככתובות IP חיצוניות לשירותים מסוג LoadBalancer. הכתובות מוקצות לפי הצורך בצמתים של אשכולות משתמשים.

הטווח הזה כולל את כתובת ה-VIP של הכניסה. חפיפה כזו של כתובות IP היא דרישה ל-MetalLB, מאזן העומסים המצורף שמוגדר כברירת מחדל.

172.16.20.15 - 172.16.20.24

כתובות IP של Pods ושירותים

בנוסף לכתובות ה-IP שציינתם לצמתים של האשכולות ולכתובות ה-VIP, צריך לציין כתובות ל-Pods ולשירותים. מציינים טווח CIDR לשימוש בכתובות IP של Pod וטווח CIDR אחר לשימוש בכתובות ClusterIP של שירותי Kubernetes. משתמשים בכתובות IP במרחב הכתובות הפרטי, כפי שמתואר ב-RFC 1918. הכתובות האלה מצוינות כחלק מהגדרת האשכול, כמו שמוצג בחלק הבא של המדריך הזה.

במסגרת תכנון כתובות ה-IP, צריך להחליט באילו טווחי CIDR רוצים להשתמש עבור Pods ו-Services. אלא אם יש לכם סיבה אחרת, מומלץ להשתמש בטווחים הבאים:

מטרה טווח CIDR שאוכלס מראש
רכיבי Pod באשכול אדמין 192.168.0.0/16
שירותים של אשכול אדמין 10.96.0.0/20
‫Pods באשכול משתמש 192.168.0.0/16
שירותים באשכול משתמש 10.96.0.0/20

הטווחים המוצעים ממחישים את הנקודות הבאות:

  • טווח ה-CIDR של ה-Pod יכול להיות זהה לכמה אשכולות במודל הרשת שמוגדר כברירת מחדל, במצב איים.

  • טווח ה-CIDR של השירות יכול להיות זהה לכמה אשכולות.

  • בדרך כלל צריך יותר פודים משירותים באשכול, ולכן כדאי להשתמש בטווח CIDR של פודים שגדול יותר מטווח ה-CIDR של השירותים. לדוגמה, טווח הפודים המומלץ לאשכול משתמשים הוא 2(32-16) = 216 כתובות, אבל טווח השירותים המומלץ לאשכול משתמשים הוא רק 2(32-20) = 212 כתובות.

הימנעות מחפיפה

כדי למנוע חפיפה עם כתובות IP שאפשר להגיע אליהן ברשת שלכם, יכול להיות שתצטרכו להשתמש בטווחים של CIDR ששונים מההצעות הקודמות. הטווחים של השירות וה-Pod לא יכולים לחפוף לכתובות מחוץ לאשכול שאתם רוצים להגיע אליהן מתוך האשכול.

לדוגמה, נניח שטווח השירות הוא 10.96.232.0/24 וטווח ה-Pod הוא 192.168.0.0/16. תעבורת נתונים שנשלחת מ-Pod לכתובת באחד מהטווחים האלה מטופלת כתעבורת נתונים בתוך האשכול, ולא יכולה להגיע ליעד מחוץ לאשכול.

בפרט, טווחי ה-Service וה-Pod לא יכולים לחפוף ל:

  • כתובות ה-IP של הצמתים בכל אשכול

  • כתובות IP שמשמשות מכונות של מאזן עומסים

  • כתובות VIP שמשמשות צמתים של רמת הבקרה ומאזני עומסים

  • כתובת ה-IP של שרתי DNS או שרתי NTP

4. נדרשת בדיקה Google Cloud משאבים

כדי ליצור אשכולות, צריך להפעיל בפרויקט המשויך ב-Google Distributed Cloud קבוצה ספציפית של ממשקי Google API. Google Cloud כדי להשתמש בממשקי Google API, צריך להגדיר ב-Google Distributed Cloud חשבונות שירות עם תפקידי IAM ספציפיים בפרויקט המשויך שלכם ב- Google Cloud .

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

אלה ממשקי Google API שמופעלים באופן אוטומטי:

  • anthos.googleapis.com
  • anthosaudit.googleapis.com
  • anthosgke.googleapis.com
  • cloudresourcemanager.googleapis.com
  • connectgateway.googleapis.com
  • container.googleapis.com
  • gkeconnect.googleapis.com
  • gkehub.googleapis.com
  • gkeonprem.googleapis.com
  • iam.googleapis.com
  • logging.googleapis.com
  • monitoring.googleapis.com
  • opsconfigmonitoring.googleapis.com
  • serviceusage.googleapis.com
  • stackdriver.googleapis.com
  • storage.googleapis.com

בטבלה הבאה מפורטים חשבונות השירות שנוצרים באופן אוטומטי:

חשבון שירות מטרה תפקידים
anthos-baremetal-gcr ‫Google Distributed Cloud משתמש בחשבון השירות הזה כדי להוריד קובצי אימג' של קונטיינרים מ-Artifact Registry. ללא
anthos-baremetal-connect Connect Agent משתמש בחשבון השירות הזה כדי לשמור על חיבור בין האשכול לבין Google Cloud. כך מקבלים גישה לאשכול ולתכונות של ניהול עומסי עבודה, כולל מסוף Google Cloud ושער חיבור לאינטראקציה עם האשכול. roles/gkehub.connect
anthos-baremetal-register חשבון השירות הזה משמש את Connect Agent כדי לרשום את האשכולות שלכם ב צי. roles/gkehub.admin
anthos-baremetal-cloud-ops סוכן Stackdriver משתמש בחשבון השירות הזה כדי לייצא יומנים ומדדים מאשכולות אל Cloud Logging וCloud Monitoring. roles/logging.logWriter
roles/monitoring.metricWriter
roles/stackdriver.resourceMetadata.writer
roles/opsconfigmonitoring.resourceMetadata.writer
roles/monitoring.dashboardEditor

המאמרים הבאים

יצירת אשכולות בסיסיים