File konfigurasi infrastruktur vSphere

Halaman ini menjelaskan kolom dalam file konfigurasi infrastruktur vSphere, yang digunakan dalam penyiapan domain topologi. File ini diperlukan jika infraConfigFilePath di file konfigurasi cluster admin ditetapkan.

Bagian berikut memberikan deskripsi objek dan kolom di resource kustom Secret dan VSphereInfraConfig. Lihat bagian Contoh file konfigurasi yang mengikuti yang menunjukkan contoh nilai untuk kolom.

Semua kolom wajib diisi dalam file konfigurasi kecuali jika ditandai sebagai "Opsional".

Secret

Mendeskripsikan Secret kredensial vSphere yang menyimpan kredensial setiap Server vCenter. Tambahkan atau hapus Secret sesuai kebutuhan berdasarkan jumlah instance Server vCenter yang akan Anda gunakan untuk cluster admin dan cluster pengguna. Setiap objek harus dipisahkan dengan ---. Anda dapat menghapus semua Secret dari file konfigurasi ini setelah cluster admin berhasil dibuat.

Secret.name

Tidak dapat diubah (Immutable)
String

Nama Secret. Nama ini harus cocok dengan salah satu nama di kolom credentials.vCenters[i].secretName dalam resource kustom VSphereInfraConfig.

Secret.namespace

Tidak dapat diubah (Immutable)
String
Sudah diisi: kube-system

Namespace tempat Secret berada. Namespace ini harus cocok dengan kolom credentials.vCenters[i].secretNamespace yang sesuai di resource kustom VSphereInfraConfig.

stringData.admin-username dan stringData.admin-password

Kredensial akun pengguna vCenter yang memiliki peran Administrator vCenter Server atau hak istimewa yang setara. Untuk mengetahui informasi selengkapnya, lihat hak istimewa akun pengguna vCenter.

stringData.ca-crt

Mutable
String multiline

Sertifikat CA yang dienkode Base64 dari vCenter Server.

Ikuti langkah-langkah di Mendapatkan sertifikat root CA vCenter Anda hingga Anda menjalankan perintah yang menampilkan sertifikat berenkode Base64. Salin dan tempelkan seluruh sertifikat ke kolom ini.

VSphereInfraConfig

Konfigurasi infrastruktur vSphere. Konfigurasi ini akan disimpan di cluster admin dan dibagikan oleh cluster admin dan semua cluster pengguna pengelolanya. Setiap cluster admin hanya boleh memiliki satu konfigurasi infrastruktur vSphere.

VSphereInfraConfig.name

Tidak dapat diubah (Immutable)
String
Diisi otomatis: default

Nama konfigurasi infrastruktur vSphere.

credentials

Kredensial yang digunakan oleh konfigurasi infrastruktur vSphere.

credentials.vCenters

Array objek, yang masing-masing berisi referensi Secret untuk setiap Server vCenter. Tambahkan atau hapus entri sesuai kebutuhan. Setelah cluster admin dibuat, Anda dapat menambahkan objek credentials.vCenters baru ke file konfigurasi jika diperlukan, lalu menjalankan gkectl update admin untuk memperbarui konfigurasi di cluster.

credentials.vCenters[i].address

Tidak dapat diubah (Immutable)
String

Alamat IP atau nama host vCenter Server Anda.

Untuk mengetahui informasi selengkapnya, lihat Menemukan alamat vCenter Server Anda.

credentials.vCenters[i].secretName

Tidak dapat diubah (Immutable)
String

Nama Secret. Nama harus cocok dengan name di resource kustom Secret.

credentials.vCenters[i].secretNamespace

Tidak dapat diubah
String
kube-system yang sudah diisi sebelumnya

Namespace tempat Secret berada. Namespace harus cocok dengan namespace yang sesuai di resource kustom Secret.

topologyDomains

Array objek, yang masing-masing menjelaskan konfigurasi domain topologi. Tambahkan atau hapus entri sesuai kebutuhan. Setelah cluster admin dibuat, Anda dapat menambahkan objek topologyDomains baru ke file konfigurasi jika diperlukan, lalu jalankan gkectl update admin untuk memperbarui konfigurasi di cluster.

topologyDomains[i].name

Tidak dapat diubah (Immutable)
String

Nama domain topologi.

topologyDomains[i].topologyLabels

Daftar label yang diterapkan ke node dalam domain topologi ini yang digunakan oleh penjadwal Kubernetes. Setiap label adalah pasangan "key":"value". Sebaiknya Anda hanya menentukan satu label per domain topologi.

Contoh:

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

Untuk kunci, Anda dapat menggunakan batasan default tingkat cluster Kubernetes, "topology.kubernetes.io/zone", seperti yang dijelaskan dalam Batasan default bawaan.

Setelah cluster dibuat, label topologi yang Anda tentukan akan diisi ke label node dalam domain topologi. Jika Anda tidak menggunakan "topology.kubernetes.io/zone" sebagai kunci, Anda harus mengonfigurasi kunci topologi di PodTemplate dalam Deployment, StatefulSet, atau ReplicaSet, sebagaimana berlaku.

Misalnya, Anda menentukan kunci di label topologi sebagai "topology.examplepetstore.com/zone". Di PodTemplate, Anda menentukan kunci sebagai nilai untuk kolom topologySpreadConstraints.topologyKey. Hal ini memungkinkan penjadwal Kubernetes mendistribusikan Pod di seluruh domain topologi untuk memastikan ketersediaan tinggi dan mencegah konsentrasi berlebih di satu area jika terjadi kegagalan.

Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi topologySpreadConstraints, lihat Batasan Penyebaran Topologi Pod dalam dokumentasi Kubernetes.

topologyDomains[i].compute

Resource komputasi yang dialokasikan untuk domain topologi ini.

topologyDomains[i].compute.vcenter

Tidak dapat diubah (Immutable)
String

Alamat IP atau nama host vCenter Server Anda.

Untuk mengetahui informasi selengkapnya, lihat Menemukan alamat vCenter Server Anda.

topologyDomains[i].compute.datacenter

Tidak dapat diubah (Immutable)
String

Jalur relatif pusat data vSphere.

Nilai yang Anda tentukan relatif terhadap folder root bernama /.

Jika pusat data Anda berada di folder root, nilainya adalah nama pusat data.

topologyDomains[i].compute.cluster

Tidak dapat diubah (Immutable)
String

Jalur relatif cluster vSphere yang merepresentasikan host ESXi tempat VM cluster Anda di domain topologi ini akan berjalan. Cluster vSphere ini mewakili subkumpulan host ESXi fisik di pusat data vCenter Anda.

Nilai yang Anda tentukan terkait dengan /.../DATA_CENTER/vm/.

Jika cluster vSphere Anda berada di folder /.../DATA_CENTER/vm/, nilainya adalah nama cluster vSphere.

Jika tidak, nilainya adalah jalur relatif yang mencakup satu atau beberapa folder beserta nama cluster vSphere.

topologyDomains[i].compute.resourcePool

Tidak dapat diubah (Immutable)
String

Kumpulan resource vCenter untuk VM Anda di domain topologi ini.

Jika Anda ingin menggunakan kumpulan resource default, tetapkan ini ke VSPHERE_CLUSTER/Resources.

Contoh:

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

Jika Anda ingin menggunakan kumpulan resource yang telah dibuat, tetapkan ini ke jalur relatif kumpulan resource Anda.

Nilai yang Anda tentukan bersifat relatif terhadap /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/

Jika kumpulan resource Anda adalah turunan langsung dari /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/ nilainya adalah nama kumpulan resource.

Contoh:

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

Jika tidak, nilainya adalah jalur relatif yang memiliki dua atau lebih kumpulan resource.

Contoh:

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

topologyDomains[i].compute.folder

Opsional
Tidak dapat diubah
String

Jalur relatif folder vSphere yang telah Anda buat. Folder ini akan menyimpan semua VM dalam domain topologi ini.

Jika Anda tidak menentukan nilai, semua VM di domain topologi ini akan dimasukkan ke dalam /.../DATA_CENTER/vm/.

Jika Anda menentukan nilai, nilai tersebut relatif terhadap /.../DATA_CENTER/vm/.

Nilainya bisa berupa nama folder.

Contoh:

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

Atau, nilai dapat berupa jalur relatif yang mencakup lebih dari satu folder.

Contoh:

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

topologyDomains[i].storage

Konfigurasi penyimpanan domain topologi ini. Hanya digunakan oleh disk data dan disk boot virtual machine. Volume CNS (disediakan oleh PVC dan PV) tidak disertakan.

Tentukan nilai untuk storage.policyName atau storage.datastore, tetapi jangan tentukan keduanya.

topologyDomains[i].storage.policyName

Wajib jika storage.datastore tidak ditentukan
Tidak dapat diubah
String

Nama kebijakan penyimpanan VM untuk node cluster.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi kebijakan penyimpanan.

Anda harus menentukan nilai untuk storage.datastore atau storage.policyName, tetapi tidak keduanya. Jika Anda menentukan nilai untuk kolom ini, jangan tentukan nilai untuk storage.datastore.

topologyDomains[i].storage.datastore

Wajib jika storage.policyName tidak ditentukan
Tidak dapat diubah
String

Nama datastore vSphere untuk cluster admin Anda.

Nilai yang Anda tentukan harus berupa nama, bukan jalur. Jangan sertakan folder apa pun dalam nilai.

Contoh:

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

Anda harus menentukan nilai untuk storage.datastore atau storage.PolicyName, tetapi tidak keduanya. Jika Anda menentukan nilai untuk kolom ini, jangan tentukan nilai untuk storage.PolicyName.

topologyDomains[i].network

Konfigurasi jaringan domain topologi ini.

topologyDomains[i].network.vsphereNetwork

Tidak dapat diubah (Immutable)
String

Nama jaringan vSphere untuk node cluster Anda.

Contoh:

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

Jika nama berisi karakter khusus, Anda harus menggunakan urutan escape untuk karakter tersebut.

Karakter khusus Urutan escape
Garis miring (/) %2f
Garis miring terbalik (\) %5c
Tanda persen (%) %25

Jika nama jaringan tidak unik di pusat data, Anda dapat menentukan jalur lengkap.

Contoh:

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

topologyDomains[i].network.gateway

Alamat gateway subnet untuk node cluster dalam domain topologi ini. Alamat IP harus sama dengan alamat gateway dalam file blok IP. Sebagai contoh, lihat contoh file pemblokiran IP untuk domain topologi.

topologyDomains[i].network.dnsServers

Tidak dapat diubah
Array string.
Jumlah maksimum elemen dalam array adalah tiga.

Alamat IP server DNS untuk VM.

topologyDomains[i].network.ntpServers

Tidak dapat diubah
Array string

Alamat IP server waktu yang akan digunakan VM.

topologyDomains[i].network.searchDomains

Opsional
Tidak dapat diubah
Array string

Domain penelusuran DNS yang akan digunakan VM. Domain ini digunakan sebagai bagian dari daftar penelusuran domain.

Contoh:

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

topologyDomains[i].defaultTopologyDomain

Tidak dapat diubah
Opsional
String

Nama domain topologi default. Nama ini harus cocok dengan salah satu nama di topologyDomains[i].name. Jika Anda tidak menentukan nama default saat pembuatan cluster, Anda dapat memperbarui file konfigurasi dengan nama jika diperlukan, lalu menjalankan gkectl update admin untuk memperbarui konfigurasi di cluster.

Node akan dialokasikan ke domain topologi default kecuali jika Anda menetapkan domain topologi untuk node bidang kontrol atau node di node pool.

Contoh file konfigurasi

Contoh berikut menunjukkan file konfigurasi dengan nilai yang diisi.

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"