קובץ התצורה של תשתית vSphere

בדף הזה מתוארים השדות בקובץ תצורה של תשתית vSphere, שמשמש להגדרה של דומיינים של טופולוגיה. הקובץ הזה נדרש אם infraConfigFilePath מוגדר בקובץ התצורה של אשכול האדמין.

בקטעים הבאים מפורטים האובייקטים והשדות במשאבים המותאמים אישית Secret ו-VSphereInfraConfig. בקטע קובץ הגדרה לדוגמה שבהמשך מוצגים ערכים לדוגמה בשדות.

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

Secret

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

Secret.name

בלתי ניתן לשינוי
מחרוזת

השם של הסוד. השם הזה צריך להיות זהה לאחד מהשמות בשדה credentials.vCenters[i].secretName במשאב המותאם אישית VSphereInfraConfig.

Secret.namespace

Immutable
String
Prepopulated: kube-system

מרחב השמות שבו נמצא הסוד. מרחב השמות הזה צריך להיות זהה לשדה credentials.vCenters[i].secretNamespace המתאים במשאב המותאם אישית VSphereInfraConfig.

stringData.admin-username וגם stringData.admin-password

פרטי הכניסה של חשבון המשתמש ב-vCenter שיש לו תפקיד אדמין ב-vCenter Server או הרשאות שוות ערך. מידע נוסף זמין במאמר בנושא הרשאות של חשבון משתמש ב-vCenter.

stringData.ca-crt

‫Mutable
Multiline string

אישור ה-CA של שרת vCenter בקידוד Base64.

פועלים לפי השלבים במאמר בנושא קבלת אישור הבסיס של CA ב-vCenter עד שמריצים את הפקודה שמציגה את האישור בקידוד Base64. מעתיקים את האישור כולו ומדביקים אותו בשדה הזה.

VSphereInfraConfig

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

VSphereInfraConfig.name

בלתי ניתן לשינוי
מחרוזת
מאוכלס מראש: ברירת מחדל

השם של הגדרת התשתית של vSphere.

credentials

פרטי הכניסה שמשמשים להגדרת תשתית vSphere.

credentials.vCenters

מערך של אובייקטים, שכל אחד מהם מכיל את ההפניות ל-Secret עבור כל שרת vCenter. מוסיפים או מוחקים רשומות לפי הצורך. אחרי שיוצרים את אשכול האדמין, אפשר להוסיף אובייקט credentials.vCenters חדש לקובץ התצורה, אם צריך, ואז להריץ את הפקודה gkectl update admin כדי לעדכן את התצורה באשכול.

credentials.vCenters[i].address

בלתי ניתן לשינוי
מחרוזת

כתובת ה-IP או שם המארח של שרת vCenter.

מידע נוסף זמין במאמר איך מוצאים את הכתובת של vCenter Server.

credentials.vCenters[i].secretName

בלתי ניתן לשינוי
מחרוזת

שם הסוד. השם חייב להיות זהה לname בSecret המותאם אישית.

credentials.vCenters[i].secretNamespace

בלתי ניתן לשינוי
מחרוזת
מאוכלס מראש kube-system

מרחב השמות שבו נמצא הסוד. מרחב השמות צריך להיות זהה לערך namespace המתאים במשאב המותאם אישית Secret.

topologyDomains

מערך של אובייקטים, שכל אחד מהם מתאר הגדרה של דומיין טופולוגי. מוסיפים או מוחקים רשומות לפי הצורך. אחרי שיוצרים את אשכול האדמין, אפשר להוסיף אובייקט topologyDomains חדש לקובץ התצורה אם צריך, ואז להריץ את הפקודה gkectl update admin כדי לעדכן את התצורה באשכול.

topologyDomains[i].name

בלתי ניתן לשינוי
מחרוזת

השם של דומיין הטופולוגיה.

topologyDomains[i].topologyLabels

רשימת התוויות שמוחלות על הצמתים בדומיין הטופולוגיה הזה, שמשמשות את מתזמן Kubernetes. כל תווית היא צמד "key":"value". מומלץ לציין רק תווית אחת לכל דומיין טופולוגי.

דוגמה:

topologyDomains:
- name: "td-01"
  topologyLabel: "topology.examplepetstore.com/zone": "zone-1"

למפתח, אפשר להשתמש באילוץ ברירת המחדל ברמת אשכול Kubernetes,‏ "topology.kubernetes.io/zone", כפי שמתואר במאמר אילוצי ברירת מחדל מובנים.

אחרי שיוצרים את האשכול, התווית של הטופולוגיה שציינתם מאוכלסת בתוויות של הצמתים בדומיין הטופולוגי. אם לא משתמשים ב-"topology.kubernetes.io/zone" כמפתח, צריך להגדיר את מפתח הטופולוגיה ב-PodTemplate בפריסה, ב-StatefulSet או ב-ReplicaSet, בהתאם לצורך.

לדוגמה, נניח שהגדרתם את המפתח בתווית הטופולוגיה כ-"topology.examplepetstore.com/zone". ב-PodTemplate, מציינים את המפתח כערך בשדה topologySpreadConstraints.topologyKey. כך מתזמן Kubernetes יכול לפזר את ה-Pods על פני תחום הטופולוגיה כדי להבטיח זמינות גבוהה ולמנוע ריכוז יתר באזור מסוים במקרה של כשל.

מידע נוסף על הגדרת topologySpreadConstraints זמין במאמר Pod Topology Spread Constraints במסמכי Kubernetes.

topologyDomains[i].compute

משאבי מחשוב שהוקצו לדומיין הטופולוגיה הזה.

topologyDomains[i].compute.vcenter

בלתי ניתן לשינוי
מחרוזת

כתובת ה-IP או שם המארח של שרת vCenter.

מידע נוסף זמין במאמר איך מוצאים את הכתובת של vCenter Server.

topologyDomains[i].compute.datacenter

בלתי ניתן לשינוי
מחרוזת

הנתיב היחסי של מרכז נתונים של vSphere.

הערך שאתם מציינים הוא יחסי לתיקיית הבסיס שנקראת /.

אם מרכז הנתונים נמצא בתיקיית הבסיס, הערך הוא שם מרכז הנתונים.

topologyDomains[i].compute.cluster

בלתי ניתן לשינוי
מחרוזת

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

הערך שאתם מציינים הוא ביחס ל-/.../DATA_CENTER/vm/.

אם אשכול vSphere נמצא בתיקייה /.../DATA_CENTER/vm/, הערך הוא השם של אשכול vSphere.

אחרת, הערך הוא נתיב יחסי שכולל תיקייה אחת או יותר יחד עם השם של אשכול vSphere.

topologyDomains[i].compute.resourcePool

בלתי ניתן לשינוי
מחרוזת

מאגר משאבים של vCenter למכונות הווירטואליות בדומיין הטופולוגיה הזה.

אם רוצים להשתמש במאגר ברירת המחדל של המשאבים, צריך להגדיר את האפשרות הזו לערך VSPHERE_CLUSTER/Resources.

דוגמה:

topologyDomains:
- name: "td-01"
  compute:
    resourcePool: "my-vsphere-cluster/Resources"

אם רוצים להשתמש במאגר משאבים שכבר יצרתם, צריך להגדיר את הנתיב היחסי של מאגר המשאבים.

הערך שאתם מציינים הוא ביחס ל-/.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/

אם מאגר המשאבים הוא צאצא ישיר של /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/, הערך הוא שם מאגר המשאבים.

דוגמה:

topologyDomains:
- name: "td-01"
  compute:
    resourcePool: "my-resource-pool"

אחרת, הערך הוא נתיב יחסי עם שני מאגרי משאבים או יותר.

דוגמה:

topologyDomains:
- name: "td-01"
  compute:
    resourcePool: "resource-pool-1/resource-pool-2"

topologyDomains[i].compute.folder

אופציונלי
בלתי ניתן לשינוי
מחרוזת

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

אם לא מציינים ערך, כל המכונות הווירטואליות בדומיין הטופולוגי הזה יועברו אל /.../DATA_CENTER/vm/.

אם מציינים ערך, הוא יחסי ל-/.../DATA_CENTER/vm/.

הערך יכול להיות שם של תיקייה.

דוגמה:

topologyDomains:
- name: "td-01"
  compute:
    folder: "my-folder"

או שהערך יכול להיות נתיב יחסי שכולל יותר מתיקייה אחת.

דוגמה:

topologyDomains:
- name: "td-01"
  compute:
    folder: "folders/folder-1"

topologyDomains[i].storage

הגדרות האחסון של דומיין הטופולוגיה הזה. הוא משמש רק לדיסקים של נתונים ולדיסקים של אתחול במכונות וירטואליות. נפחי CNS (שמוקצים על ידי PVC ו-PV) לא נכללים.

מציינים ערך למאפיין storage.policyName או למאפיין storage.datastore, אבל לא לשניהם.

topologyDomains[i].storage.policyName

חובה אם לא מציינים את storage.datastore
אי אפשר לשנות
מחרוזת

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

מידע נוסף מופיע במאמר בנושא הגדרת מדיניות אחסון.

חובה לציין ערך למאפיין storage.datastore או למאפיין storage.policyName, אבל לא לשניהם. אם מציינים ערך בשדה הזה, לא מציינים ערך במאפיין storage.datastore.

topologyDomains[i].storage.datastore

חובה אם לא מציינים את storage.policyName
אי אפשר לשנות
מחרוזת

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

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

דוגמה:

topologyDomains:
- name: "td-01"
  storage:
    datastore: "my-datastore"

חובה לציין ערך למאפיין storage.datastore או למאפיין storage.PolicyName, אבל לא לשניהם. אם מציינים ערך בשדה הזה, לא מציינים ערך בשדה storage.PolicyName.

topologyDomains[i].network

הגדרות הרשת של דומיין הטופולוגיה הזה.

topologyDomains[i].network.vsphereNetwork

בלתי ניתן לשינוי
מחרוזת

השם של רשת vSphere עבור צמתי האשכול.

דוגמה:

topologyDomains:
- name: "td-01"
  network:
    vsphereNetwork: "my-network"

אם השם מכיל תו מיוחד, עליך להשתמש ברצף בריחה עבורו.

תווים מיוחדים רצף בריחה
לוכסן (/) %2f
לוכסן הפוך (\) %5c
סימן אחוז (%) %25

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

דוגמה:

topologyDomains:
- name: "td-01"
  network:
    vsphereNetwork: "/data-centers/data-center-1/network/my-network"

topologyDomains[i].network.gateway

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

topologyDomains[i].network.dnsServers

Immutable
מערך של מחרוזות.
המספר המקסימלי של רכיבים במערך הוא שלושה.

כתובות ה-IP של שרתי ה-DNS למכונות הווירטואליות.

topologyDomains[i].network.ntpServers

Immutable
Array of strings

כתובות ה-IP של שרתי הזמן שהמכונות הווירטואליות ישתמשו בהם.

topologyDomains[i].network.searchDomains

אופציונלי
בלתי ניתן לשינוי
מערך של מחרוזות

דומיינים לחיפוש DNS לשימוש במכונות הווירטואליות. הדומיינים האלה משמשים כחלק מרשימת חיפוש דומיינים.

דוגמה:

topologyDomains:
- name: "td-01"
  network:
    hostConfig:
      searchDomainsForDNS:
      - "my.local.com"

topologyDomains[i].defaultTopologyDomain

בלתי ניתן לשינוי
אופציונלי
מחרוזת

השם של דומיין הטופולוגיה שמוגדר כברירת מחדל. השם הזה חייב להיות זהה לאחד השמות שמופיעים ב-topologyDomains[i].name. אם לא מציינים שם ברירת מחדל בזמן יצירת האשכול, אפשר לעדכן את קובץ התצורה עם שם אם צריך, ואז להריץ את הפקודה gkectl update admin כדי לעדכן את התצורה באשכול.

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

קובץ תצורה לדוגמה

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

apiVersion: v1
kind: Secret
metadata:
  namespace: kube-system
  name: "vsphere-auth-0"
stringData:
  admin-username: "example-admi1n@vsphere.local"
  admin-password: "GltFl4@5f"
  ca-crt: |
    -----BEGIN CERTIFICATE-----
    MIIEITCCAwmgAwIBAgIJAPFVaTIKdyCbMA0GCSqGSIb3DQEBCwUAMIGbMQswCQYD
    VQQDDAJDQTEXMBUGCgmSJomT8ixkARkWB3ZzcGhlcmUxFTATBgoJkiaJk/IsZAEZ
    FgVsb2NhbDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExHTAbBgNV
    BAoMFGF0bC1xdWFsLXZjMDMuYW50aG9zMRswGQYDVQQLDBJWTXdhcmUgRW5naW5l
    ZXJpbmcwHhcNMjIwODA3MDIzNTQ4WhcNMzIwODA0MDIzNTQ4WjCBmzELMAkGA1UE
    AwwCQ0ExFzAVBgoJkiaJk/IsZAEZFgd2c3BoZXJlMRUwEwYKCZImiZPyLGQBGRYF
    bG9jYWwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMR0wGwYDVQQK
    DBRhdGwtcXVhbC12YzAzLmFudGhvczEbMBkGA1UECwwSVk13YXJlIEVuZ2luZWVy
    aW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz5MOjTQ4FHcIYjzo
    bcIFJmnVDjSnLGYDdVayhmUo1+CC5RqJRuAnJmDYt9PY/lJhVDVUSFHWJdvRjeAP
    0+xjRs33VJctzjDqwy2xRMVxoA+c8DfvALHIK+rHwIidGNt5eb2HOrB1MSCB5KFi
    gkXhJf/2kiEPiTMqbu2nWySdBfZRVSYs1jSiAuz/cgyglfVUcRFn4oRhR35QZ8gj
    t54IGY9atzKCYuvFAgeTCGBxI30cZRQDCtkWyWHPdK3GniNW/qh4C7gC+VI+Pnh+
    fUGtAx3Px/O5h5RpHDmvuSqMNoWEsChKGgbrbkZGB9OWL8OsVAUnz8TXC6s4/AG1
    0GGDGQIDAQABo2YwZDAdBgNVHQ4EFgQUM8RXjNIlar+S6uZBSH+3oVkUdGwwHwYD
    VR0RBBgwFoEOZW1haWxAYWNtZS5jb22HBH8AAAEwDgYDVR0PAQH/BAQDAgEGMBIG
    A1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEBABIO4RO3Jk6PaDyt
    +PGP1ng5fpcKbwCi90KfEkfAd/HV3YM6suEhCar6azKXJutL9gGzidi9NvKv43Pg
    hOOuTQWbdwuhqgF3YPKZ1HJWSV0NR5J9WFjp9rk1EdM6NApUwmy7EIbo8TY7M6SL
    jaR8VgaelG2PSf2S4ybxKdJ2gx2pPTcoYpd/+d9qaDFLNWa4irzB6sqBUVlkAMX+
    JW4FmMs8ym4aLzlFBzG5gjK1PCsBugbVRSAbF+Y8LwnMoe2WMiF1nNXoKSiaQm0A
    Z0psC1b37G9dKzr9soLS5OENFrAEClfVD5luETvUHo51VhanetWbZmL5dK8iGAuj
    otykS2w=
    -----END CERTIFICATE-----

---
apiVersion: v1
kind: Secret
metadata:
  namespace: kube-system
  name: "vsphere-auth-1"
stringData:
  admin-username: "example-admin2@vsphere.local"
  admin-password: "xuBAcK5lT@uq2Ix"
  ca-crt: |
    -----BEGIN CERTIFICATE-----
    MIIEITCCAwmgAwIBAgIJAMJPzGX27yKBMA0GCSqGSIb3DQEBCwUAMIGbMQswCQYD
    VQQDDAJDQTEXMBUGCgmSJomT8ixkARkWB3ZzcGhlcmUxFTATBgoJkiaJk/IsZAEZ
    FgVsb2NhbDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExHTAbBgNV
    BAoMFGF0bC1xdWFsLXZjMTMuYW50aG9zMRswGQYDVQQLDBJWTXdhcmUgRW5naW5l
    ZXJpbmcwHhcNMjMxMjAzMjM0NDM5WhcNMzMxMTMwMjM0NDM5WjCBmzELMAkGA1UE
    AwwCQ0ExFzAVBgoJkiaJk/IsZAEZFgd2c3BoZXJlMRUwEwYKCZImiZPyLGQBGRYF
    bG9jYWwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMR0wGwYDVQQK
    DBRhdGwtcXVhbC12YzEzLmFudGhvczEbMBkGA1UECwwSVk13YXJlIEVuZ2luZWVy
    aW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6d2PidzORMEOuIKa
    XOXB4nB7ukYGOeju1nKJ90KnvKfZBNjN1JKuNPQcZelFyEcUEHnI18cA2VGbpXbF
    O9jMlxu5VlhPepjEPAgtcAuCZNlxzRDip9u9ar3ma2SxMCogz91qDZKSE/PQpqNI
    Ozpus6YsHmK3jzAUq/Zs1+wl9HFot0e5kPf79oqQC8gPxJqmFQyGm50SdOMwj5sD
    pYm/3TZZ1gw4WftBhDecO9hKwcReCVjeVgp5omMcFHwIhqUBqZM3qX5gJaxE7ELO
    xu66VibA1g70Xzso2hGVQ13ruGjgUAjDsICOTpHHcT33KoMRzn2BWlKtmsnThIrE
    nbR9QQIDAQABo2YwZDAdBgNVHQ4EFgQUI84+93Iniliyzs3HSDatbYGsiJ4wHwYD
    VR0RBBgwFoEOZW1haWxAYWNtZS5jb22HBH8AAAEwDgYDVR0PAQH/BAQDAgEGMBIG
    A1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEBAIIihWWIcl+sKRmS
    QB4wkjR9UA7QV96lbm+HFE5qvP5xVXss+PmSjLjeNZFfX65tGlKXWDmYstcw/jon
    hnJVe/jxjIZ3GddrVfHdwOEQ+FORQyfxkLAQuHKvm/2PobGNsU0rOw14Ur4Eea6P
    pIl70eJhRX22dkOhb+y6jz+k+L52HbzMz/X6yUnTFAJzobJD0C1vGAx3FgPdbUqF
    fXYO/Q8NNrk+4561eT3x9T4RIj/0ZkBal0yQEdYnd+lOIkEmk7vmO1/eyb6+66rs
    3wz4DIxtfhJIUlj0mBL0KkyDDDoc0oFTf5V/xrYls1dJ35DNFoG/KBJGgGbaW41t
    vTz+0JA=
    -----END CERTIFICATE-----

---
apiVersion: v1
kind: Secret
metadata:
  namespace: kube-system
  name: "vsphere-auth-2"
stringData:
  admin-username: "example-admin3@vsphere.local"
  admin-password: "nWKCITwqKTaY5@M5"
  ca-crt: |
    -----BEGIN CERTIFICATE-----
    MIIEITCCAwmgAwIBAgIJAN4alqihWQukMA0GCSqGSIb3DQEBCwUAMIGbMQswCQYD
    VQQDDAJDQTEXMBUGCgmSJomT8ixkARkWB3ZzcGhlcmUxFTATBgoJkiaJk/IsZAEZ
    FgVsb2NhbDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExHTAbBgNV
    BAoMFGF0bC1xdWFsLXZjMDcuYW50aG9zMRswGQYDVQQLDBJWTXdhcmUgRW5naW5l
    ZXJpbmcwHhcNMjMwMzI2MTc0NjE1WhcNMzMwMzIzMTc0NjE1WjCBmzELMAkGA1UE
    AwwCQ0ExFzAVBgoJkiaJk/IsZAEZFgd2c3BoZXJlMRUwEwYKCZImiZPyLGQBGRYF
    bG9jYWwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMR0wGwYDVQQK
    DBRhdGwtcXVhbC12YzA3LmFudGhvczEbMBkGA1UECwwSVk13YXJlIEVuZ2luZWVy
    aW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuvM3aSemSrBxWVei
    6pYlRvLWaCva2Q0MQvmUdVISa9uul/PHE2lwAcTAAr3Sayat2D5IRjd7NWbzaLVQ
    Sxel0TINpMfITDT0x6lZ8FfKgrRpY30CPZQlgVo16rGKE0V+wHTkGYIzRITETzuu
    z6nkpzvryh6JadSf4wrGj1TmrYpqYEmdzf7bLmz4Rql5PgVco7z+pqo0BA+UU/Uc
    /OtEcVKAyaifHzZwPlscOpKpskQrP4Ke6i3iuyrEmaDH+4sQ1TDrcYpUBfqkl+xT
    0G6ZKHs6KP18x0Xg4ifeC8x7sgajJ20TpbkDY4KtBdraj3HB4gZCxg7qY/0G75yF
    C2bZ4wIDAQABo2YwZDAdBgNVHQ4EFgQUeE+R+gRo1oU578dyiyq4tPYefpIwHwYD
    VR0RBBgwFoEOZW1haWxAYWNtZS5jb22HBH8AAAEwDgYDVR0PAQH/BAQDAgEGMBIG
    A1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEBADzBUXsxICPGxt1o
    wPrbmWhkrPy2pNr9unP/d+Py20groZ/KQ/d6dzDN7pxc6BtQbMfho7pij+mf3aHq
    oBo+J80Ha/vZExMMwYrp/OTlxy2Jdb5pzxZQtWqNVS5SkzNtDs7DhXDTY19TBZhZ
    4d+/g2eSq2/dRT7zF8q3LH6mmq0EbSRSDOm8r6AUdWt+Ov7YKTYk9c+5UTL9M9u4
    1+VBkF34hB/xc1fsFSPHTQQDOlAy5HTZgM3ygtuhmAY+UUQVLZf+8sJh+5zqc6gw
    Ecnz7HRcRPUitKACsxUm4f5VHiKUMrIBP5U1dovl4kUN8Ue0e+KnIjIGKjp4wrHi
    UtQboUw=
    -----END CERTIFICATE-----

---
apiVersion: vmware.cluster.gke.io/v1alpha1
kind: VSphereInfraConfig
metadata:
  name: default
credentials:
  vCenters:
  - address: "vc03.example"
    secretName: "vsphere-auth-0"
    secretNamespace: "kube-system"
  - address: "vc13.example"
    secretName: "vsphere-auth-1"
    secretNamespace: "kube-system"
  - address: "vc07.example"
    secretName: "vsphere-auth-2"
    secretNamespace: "kube-system"
topologyDomains:
- name: "topology-domain-0"
  topologyLabels:
    "topology.kubernetes.io/zone": "zone-0"
  compute:
    vcenter: "vc03.example"
    datacenter: "vc03"
    cluster: "workloads3"
    resourcePool: "vc03-default-pool"
  storage:
    datastore: "vsanDatastore"
  network:
    vsphereNetwork: "qual-343"
    gateway: "203.0.113.1"
    dnsServers:
    - "192.0.2.1"
    - "192.0.2.2"
    ntpServers:
    - "203.0.113.50"
- name: "topology-domain-1"
  topologyLabels:
    "topology.kubernetes.io/zone": "zone-1"
  compute:
    vcenter: "vc13.example"
    datacenter: "vc13-dc1"
    cluster: "workloads13-1"
    resourcePool: "vc13-dc1-default-pool"
  storage:
    datastore: "vsanDatastore-1c"
  network:
    vsphereNetwork: "scale-332"
    gateway: "203.0.113.2"
    dnsServers:
    - "192.0.2.10"
    - "192.0.2.11"
    ntpServers:
    - "203.0.113.51"
- name: "topology-domain-2"
  topologyLabels:
    "topology.kubernetes.io/zone": "zone-2"
  compute:
    vcenter: "vc07.example"
    datacenter: "vc07"
    cluster: "workloads7"
    resourcePool: "vc07-default-pool"
  storage:
    datastore: "vsanDatastore"
  network:
    vsphereNetwork: "qual-323"
    gateway: "203.0.113.3"
    dnsServers:
    - "192.0.2.21"
    - "192.0.2.22"
    ntpServers:
    - "203.0.113.52"