ציון תיקיות vSphere בהגדרת האשכול

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

בהנחה שהגדרת vCenter הבאה מציינת את הנתיב משורש vCenter לאובייקט הספציפי

מארחים ואשכולות

מכונות וירטואליות ותבניות

אחסון

רשת

my-vcenter
  my-datacenter-folder
    my-datacenter
      my-cluster-folder
        my-cluster
          my-resourcepool
        
my-vcenter
  my-datacenter-folder
    my-datacenter
      my-vm-folder
        
my-vcenter
  my-datacenter-folder
    my-datacenter
      my-storage-folder
        my-datastore
        
my-vcenter
  my-datacenter-folder
    my-datacenter
      my-network-folder
        my-portgroup
        

כדי ליצור אשכול Anthos ב-my-resource-pool וב-my-vm-folder באמצעות my-datastore ו-my-portgroup, מציינים את ההגדרה הבאה של אשכול האדמין:

    vCenter:
      address: "my-vcenter"
      datacenter: "my-datacenter-folder/my-datacenter"
      cluster: "my-cluster-folder/my-cluster"
      resourcePool: "my-resourcepool"
      datastore: "my-datastore"
      folder: "my-vm-folder"
    network:
      vCenter:
        networkName: "my-network-folder/my-portgroup"

  

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

    vCenter:
      address: "my-vcenter"
      datacenter: "my-datacenter-folder/my-datacenter"
      cluster: "my-cluster-folder/my-cluster"
      resourcePool: "my-cluster-folder/my-cluster/Resources/my-resourcepool/my-nested-resourcepool"
      datastore: "my-datastore"
      folder: "my-vm-folder"
    network:
      vCenter:
        networkName: "my-network-folder/my-portgroup"
  

כדי ליצור אשכול ניהול של Anthos במאגר המשאבים שמוגדר כברירת מחדל באמצעות my-datastore ו-my-portgroup, מציינים את הגדרת האשכול הבאה:

    vCenter:
      address: "my-vcenter"
      datacenter: "my-datacenter-folder/my-datacenter"
      cluster: "my-cluster-folder/my-cluster"
      resourcePool: "my-cluster-folder/my-cluster/Resources"
      datastore: "my-datastore"
      folder: "my-vm-folder"
    network:
      vCenter:
        networkName: "my-network-folder/my-portgroup"
  

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

    vCenter:
      address: "my-vcenter"
      datacenter: "my-datacenter-folder/my-datacenter"
      cluster: "my-cluster-folder/my-cluster"
      resourcePool: "my-resourcepool"
      datastore: "my-datastore"
      folder: "/my-datacenter-folder/my-datacenter/vm/my-vm-folder/my-nested-vm-folder"
    network:
      vCenter:
        networkName: "my-network-folder/my-portgroup"
  

שימו לב: צריך לכלול את התו '/' הראשון בנתיב המלא של תיקיית המכונה הווירטואלית.

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

כללים למתן שמות

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

  Datastore name 'storage-folder/my-datastore' should not contain parent folders

בכל שאר סוגי האובייקטים של vSphere, צריך לציין את תיקיית ההורה אם ההגדרה של vCenter מכילה תיקיות הורה. אם תיקיות ההורה הנדרשות לא צוינו בהגדרת האשכול אבל הן קיימות בהגדרת vCenter, השגיאה הבאה מוחזרת:

 Parent folder is not specified for cluster, you must specify the full path 'clusters/my-cluster' in the cluster field  
החל מגרסה Anthos Clusters on VMware 1.13.0, שמות של אובייקטים ב-vSphere עוברים אימות בהתאם לכללים שלמעלה בפעולות הבאות:

  • ‫gkectl create
  • gkectl check-config

עדיין יש סיכוי שפתרון של אובייקט vSphere יהיה דו-משמעי במצבים הבאים לדוגמה

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

לדוגמה, נניח שזו ההגדרה של vCenter:

 
my-vcenter
  my-datacenter-folder
    my-datacenter
      my-cluster-folder
        my-cluster
          my-resourcepool
  

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

my-vcenter
  my-datacenter-folder
    my-datacenter
      my-cluster
        my-resourcepool
  

הרזולוציה של my-resourcepool לא ברורה אם קובצי התצורה לא ציינו את my-cluster-folder במהלך יצירת האשכול

יכול להיות שתיתקלו בשגיאה הבאה: path 'my-resourcepool' resolves to multiple resource pools

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

 path xxx resolves to multiple objects 

כדי לתקן את השגיאה, מוודאים שהנתיב לא מכיל שמות אובייקטים שמתנגשים (למשל, אובייקט בתוך תיקייה ואובייקט מחוץ לתיקייה). מסירים או משנים את השם של האובייקט שלא שייך לאשכול וגורם להתנגשות. השדות של vSphere הם קבועים אחרי שיוצרים את האשכול, ולכן אם אי אפשר לפתור את הבעיה על ידי שינוי ההגדרה של vCenter, צריך ליצור אשכול חדש.