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

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

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

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

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

  1. מידע על Google Distributed Cloud
  2. כדאי להכיר כמה מושגים בסיסיים של Google Cloud , כולל פרויקטים, הרשאות IAM וחשבונות שירות.
  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 API וחשבונות שירות ספציפיים.

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

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

דרישות החומרה

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

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

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

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

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

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

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

  • הגדרת Ubuntu

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

  • התקנת kubectl

  • התקנת bmctl

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

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

  1. משביתים את Uncomplicated Firewall ‏ (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. מריצים את הפקודה הבאה כדי להוריד את הגרסה העדכנית של הקובץ הבינארי bmctl ולהפוך אותו לקובץ שניתן להפעלה:

    gcloud storage cp gs://anthos-baremetal-release/bmctl/1.36.200-gke.118/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. מפעילים אימות סיסמה של root SSH על ידי ביטול ההערה או הוספה של השורות PermitRootLogin ו-PasswordAuthentication בקובץ /etc/ssh/sshd_config, והגדרת הערכים ל-yes:

    # 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 כדי לגשת לשרתי ה-API של Kubernetes, לשרת ה-proxy של Ingress ולשירותים מסוג LoadBalancer
  • פודים ושירותים: צריך טווחי כתובות CIDR כדי להכיל כל פוד ושירות שפועלים באשכולות

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

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

בתרשים הבא מוצג דומיין בשכבה 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 של מישור הבקרה של אשכול האדמין (שרת ה-API של Kubernetes באשכול האדמין) 172.16.20.13
כתובת ה-VIP של מישור הבקרה של אשכול המשתמשים כתובת ה-VIP של מישור הבקרה של אשכול המשתמש (שרת ה-API של Kubernetes באשכול המשתמש) 172.16.20.14
כתובת VIP של Ingress כתובת VIP של Ingress (כלולה בטווח של מאגר הכתובות של MetalLB) 172.16.20.15
כתובות VIP של שירותים ‫10 כתובות לשימוש ככתובות IP חיצוניות לשירותים מסוג LoadBalancer. הכתובות מוקצות לפי הצורך בצומתי אשכולות של משתמשים.

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

172.16.20.15 - 172.16.20.24

כתובות IP לפודים ולשירותים

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

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

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

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

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

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

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

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

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

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

באופן ספציפי, טווחי הכתובות של השירותים וה-Pods לא יכולים לחפוף ל:

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

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

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

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

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

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

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

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

  • 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

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

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