Mengonfigurasi kebijakan penyimpanan

Dokumen ini menunjukkan cara mengonfigurasi kebijakan penyimpanan VM untuk cluster Google Distributed Cloud.

Ringkasan

Di vSphere, Pengelolaan Berbasis Kebijakan Penyimpanan (SPBM) membantu menyelaraskan penyimpanan dengan permintaan aplikasi virtual machine. Solusi ini menyediakan framework kebijakan penyimpanan yang berfungsi sebagai panel kontrol tunggal terpadu untuk berbagai layanan data dan solusi penyimpanan.

Dalam cluster Anthos di VMware, Anda dapat menentukan kebijakan penyimpanan sebagai alternatif untuk menentukan datastore. Anda menentukan kebijakan penyimpanan berdasarkan persyaratan aplikasi Anda, kemudian vSphere akan memilih dan mengelola datastore secara otomatis. Hal ini dapat mengurangi overhead dan pemeliharaan yang terkait dengan penyimpanan.

Pewarisan

Anda dapat menentukan kebijakan penyimpanan untuk cluster pengguna, kumpulan node di cluster pengguna, atau kumpulan node bidang kontrol dalam cluster pengguna. Anda juga dapat menetapkan kebijakan penyimpanan untuk cluster admin selama cluster admin memiliki bidang kontrol ketersediaan tinggi dan tidak memiliki kumpulan node Windows.

Jika Anda menetapkan kebijakan penyimpanan untuk cluster pengguna, kebijakan tersebut akan diwarisi oleh kumpulan node dalam cluster pengguna. Jika Anda menentukan kebijakan penyimpanan untuk kumpulan node individual, kebijakan tersebut yang akan digunakan, bukan kebijakan penyimpanan tingkat cluster. Demikian pula jika Anda menentukan datastore untuk setiap kumpulan node, datastore tersebut akan digunakan, bukan kebijakan penyimpanan level cluster.

Dalam cluster pengguna yang mengaktifkan Controlplane V2, kebijakan penyimpanan tingkat cluster diwariskan oleh node bidang kontrol. Jika Anda menentukan kebijakan penyimpanan atau datastore untuk node bidang kontrol, kebijakan penyimpanan atau datastore tersebut yang akan digunakan, bukan kebijakan penyimpanan tingkat cluster.

Menerapkan kebijakan penyimpanan ke datastore

Anda dapat menerapkan kebijakan penyimpanan ke satu datastore atau ke beberapa datastore. Jika Anda menerapkan kebijakan penyimpanan ke beberapa datastore, resource penyimpanan untuk cluster admin, cluster pengguna, atau kumpulan node dapat tersebar di antara datastore.

Contoh: Membuat kebijakan penyimpanan dan cluster pengguna

Bagian ini memberikan contoh pembuatan kebijakan penyimpanan dan cluster pengguna. Contoh ini menggambarkan ide bahwa kebijakan penyimpanan dapat diterapkan ke dua datastore.

Menerapkan tag ke datastore

Untuk melakukan langkah-langkah dalam contoh ini, lingkungan vSphere Anda harus memiliki setidaknya dua datastore.

Cluster vSphere yang akan menghosting node untuk cluster pengguna Anda harus memiliki akses ke datastore yang akan Anda gunakan untuk latihan ini. Ada pemeriksaan preflight yang memverifikasi hal ini.

Akun vCenter yang Anda gunakan untuk menerapkan tag harus memiliki hak istimewa hak istimewa pemberian tag vSphere berikut di Server root vCenter:

  • Tag vSphere.Buat Tag vSphere
  • Kategori Tag vSphere Tagging.Create vSphere
  • Pemberian Tag vSphere.Tetapkan atau Batalkan Penetapan Tag vSphere

Di vSphere Client, tetapkan tag yang sama ke setiap datastore yang telah Anda pilih untuk digunakan dalam latihan ini. Untuk mengetahui petunjuknya, lihat Menetapkan Tag ke Datastore.

Untuk informasi tambahan, lihat Tag dan Atribut vSphere.

Membuat kebijakan penyimpanan

Di Klien vSphere, buat kebijakan penyimpanan VM untuk penempatan berbasis tag. Dalam kebijakan penyimpanan, tentukan tag yang Anda terapkan ke datastore yang Anda pilih. Untuk mendapatkan petunjuk, lihat artikel Membuat kebijakan penyimpanan VM untuk Penempatan Berbasis Tag.

Untuk mengetahui informasi tambahan, lihat Kebijakan penyimpanan VM.

Jika Anda menggunakan datastore vSAN, lihat kebijakan penyimpanan vSAN.

Membuat cluster pengguna

Dalam latihan ini, Anda akan membuat cluster pengguna yang memiliki bidang kontrol ketersediaan tinggi, sehingga terdapat tiga node bidang kontrol. Selain node bidang kontrol, ada enam node pekerja, tiga dalam satu kumpulan node dan tiga dalam kumpulan node kedua. Semua node menggunakan alamat IP statis.

Mulailah dengan mengikuti petunjuk di Membuat cluster pengguna.

Saat Anda mengisi file konfigurasi cluster pengguna:

  • Tetapkan nilai vCenter.storagePolicyName ke nama kebijakan penyimpanan yang sudah ada. Jangan menetapkan nilai untuk vCenter.datastore.

  • Tentukan dua kumpulan node. Untuk kumpulan node pertama, jangan tentukan datastore, dan jangan tentukan kebijakan penyimpanan. Untuk kumpulan node kedua, tetapkan nilai vsphere.datastore ke nama datastore yang ada.

Contoh file konfigurasi cluster

Berikut adalah contoh file blok IP dan bagian dari file konfigurasi cluster pengguna.

user-ipblock.yaml

blocks:
  - netmask: 255.255.255.0
    gateway: 172.16.21.1
    ips:
    - ip: 172.16.21.2
    - ip: 172.16.21.3
    - ip: 172.16.21.4
    - ip: 172.16.21.5
    - ip: 172.16.21.6
    - ip: 172.16.21.7
    - ip: 172.16.21.8

user-cluster-yaml

apiVersion: v1
kind: UserCluster
...
vCenter:
  storagePolicyName: "my-storage-policy"
network:
  hostConfig:
    dnsServers:
    - "203.0.113.2"
    - "198.51.100.2"
    ntpServers:
    - "216.239.35.4"
  ipMode:
    type: "static"
    ipBlockFilePath: "user-ipblock.yaml"
  controlPlaneIPBlock:
    netmask: "255.255.255.0"
    gateway: "172.16.21.1"
    ips:
    - ip: "172.16.21.9"
      hostname: "cp-vm-1"
    - ip: "172.16.21.10"
      hostname: "cp-vm-2"
    - ip: "172.16.21.11"
      hostname: "cp-vm-3"
loadBalancer:
  vips:
    controlPlaneVIP: "172.16.21.40"
    ingressVIP: "172.16.21.30"
  kind: MetalLB
  metalLB:
    addressPools:
    - name: "address-pool-1"
      addresses:
    - "172.16.21.30-172.16.21.39"
...
enableControlplaneV2: true
masterNode:
  cpus: 4
  memoryMB: 8192
  replicas: 3
nodePools:
- name: "worker-pool-1"
  enableLoadBalancer: true
- name: "worker-pool-2"
  vSphere:
    datastore: "my-np2-datastore"
...

Berikut ini adalah poin-poin penting yang harus dipahami dalam contoh sebelumnya:

  • Alamat IP statis untuk worker node ditentukan dalam file blok IP. File blok IP memiliki tujuh alamat meskipun hanya ada enam node pekerja. Alamat IP tambahan diperlukan selama upgrade, update, dan perbaikan otomatis cluster.

  • Alamat IP statis untuk tiga node bidang kontrol ditentukan di bagian network.controlPlaneIPBlock pada file konfigurasi cluster pengguna. Tidak diperlukan alamat IP tambahan di blok ini.

  • Kolom masterNode.replicas disetel ke 3, sehingga akan ada tiga node bidang kontrol. Pada masterNode, tidak ada yang ditentukan untuk vsphere.datastore atau vsphere.storagePolicyName. Jadi, node bidang kontrol akan menggunakan kebijakan penyimpanan yang ditentukan dalam vCenter.storagePolicyName.

  • File konfigurasi cluster pengguna menyertakan nilai untuk vCenter.storagePolicy, tetapi tidak menyertakan nilai untuk vCenter.datastore. Kebijakan penyimpanan yang ditentukan akan digunakan oleh node dalam kumpulan mana pun yang tidak menentukan kebijakan penyimpanannya sendiri atau datastore-nya sendiri.

  • Di bagian node-pool-1, tidak ada yang ditentukan untuk vsphere.datastore atau vsphere.storagePolicyName. Jadi, node dalam node-pool-1 akan menggunakan kebijakan penyimpanan yang ditentukan dalam vCenter.storagePolicyName.

  • Pada bagian node-pool-2, nilai vsphere.datastore adalah my-np2-datastore, sehingga node dalam node-pool-2 menggunakan satu datastore tersebut, dan tidak menggunakan kebijakan penyimpanan.

Lanjutkan membuat cluster pengguna seperti yang dijelaskan dalam Membuat cluster pengguna.

Membuat cluster pengguna di pusat data terpisah dari cluster admin

Cluster pengguna dapat berada di pusat data terpisah dari cluster admin. Kedua pusat data tersebut dapat menggunakan instance vCenter Server yang sama atau instance vCenter Server yang berbeda.

Bagian ini memberikan contoh cara membuat cluster pengguna yang menggunakan instance Server vCenter terpisah dari cluster admin. Karena cluster pengguna dan admin menggunakan instance vCenter Server yang terpisah, cluster tersebut juga berada di pusat data terpisah.

Mulailah dengan mengikuti petunjuk di Membuat cluster pengguna.

Saat Anda mengisi file konfigurasi cluster pengguna:

  • Tetapkan nilai vCenter.storagePolicyName ke nama kebijakan penyimpanan yang sudah ada. Jangan menetapkan nilai untuk vCenter.datastore.

  • Di bagian vCenter, tentukan nilai untuk address, datacenter, cluster, dan resourcePool.

  • Tentukan nilai untuk network.vCenter.networkName.

  • Tentukan dua kumpulan node. Untuk kumpulan node pertama, jangan tentukan datastore, dan jangan tentukan kebijakan penyimpanan. Untuk kumpulan node kedua, tetapkan nilai vsphere.datastore ke nama datastore yang ada.

Contoh file konfigurasi cluster

Berikut adalah contoh file blok IP dan bagian dari file konfigurasi cluster pengguna.

user-ipblock.yaml

blocks:
  - netmask: 255.255.255.0
    gateway: 172.16.21.1
    ips:
    - ip: 172.16.21.2
    - ip: 172.16.21.3
    - ip: 172.16.21.4
    - ip: 172.16.21.5
    - ip: 172.16.21.6
    - ip: 172.16.21.7
    - ip: 172.16.21.8

user-cluster-yaml

apiVersion: v1
kind: UserCluster
...
vCenter:
  address: "my-vcenter-server-2.my-domain.example"
  datacenter: "my-uc-data-center"
  cluster: "my-uc-vsphere-cluster"
  resourcePool: "my-uc-resource-pool"
  storagePolicyName: "my-storage-policy"
network:
  vCenter:
    networkName: "my-uc-network"
  hostConfig:
    dnsServers:
    - "203.0.113.2"
    - "198.51.100.2"
    ntpServers:
    - "216.239.35.4"
  ipMode:
    type: "static"
    ipBlockFilePath: "user-ipblock.yaml"
  controlPlaneIPBlock:
    netmask: "255.255.255.0"
    gateway: "172.16.21.1"
    ips:
    - ip: "172.16.21.9"
      hostname: "cp-vm-1"
    - ip: "172.16.21.10"
      hostname: "cp-vm-2"
    - ip: "172.16.21.11"
      hostname: "cp-vm-3"
loadBalancer:
  vips:
    controlPlaneVIP: "172.16.21.40"
    ingressVIP: "172.16.21.30"
  kind: MetalLB
  metalLB:
    addressPools:
    - name: "address-pool-1"
      addresses:
    - "172.16.21.30-172.16.21.39"
...
enableControlplaneV2: true
masterNode:
  cpus: 4
  memoryMB: 8192
  replicas: 3
nodePools:
- name: "worker-pool-1"
  enableLoadBalancer: true
- name: "worker-pool-2"
  vSphere:
    datastore: "my-np2-datastore"
...

Berikut ini adalah poin-poin penting yang harus dipahami dalam contoh sebelumnya:

  • File konfigurasi cluster pengguna menyertakan nilai untuk vCenter.storagePolicy, tetapi tidak menyertakan nilai untuk vCenter.datastore. Kebijakan penyimpanan yang ditentukan akan digunakan oleh node dalam kumpulan node mana pun yang tidak menentukan kebijakan penyimpanannya sendiri atau datastore-nya sendiri.

  • Di bagian vCenter, ada nilai yang ditentukan untuk address, datacenter, cluster, dan resourcePool. Jadi, cluster pengguna akan menggunakan Server vCenter, pusat data, cluster vSphere, dan kumpulan resource yang berbeda dari cluster admin.

  • Ada nilai yang ditentukan untuk network.vCenter.networkName.

  • Kolom masterNode.replicas disetel ke 3, sehingga akan ada tiga node bidang kontrol. Pada masterNode, tidak ada yang ditentukan untuk vsphere.datastore atau vsphere.storagePolicyName. Jadi, node bidang kontrol akan menggunakan kebijakan penyimpanan yang ditentukan dalam vCenter.storagePolicyName.

  • Di bagian node-pool-1, tidak ada yang ditentukan untuk vsphere.datastore atau vsphere.storagePolicyName. Jadi, node dalam node-pool-1 akan menggunakan kebijakan penyimpanan yang ditentukan dalam vCenter.storagePolicyName.

  • Pada bagian node-pool-2, nilai vsphere.datastore adalah my-np2-datastore, sehingga node dalam node-pool-2 menggunakan satu datastore tersebut, dan tidak menggunakan kebijakan penyimpanan.

Lanjutkan membuat cluster pengguna seperti yang dijelaskan dalam Membuat cluster pengguna.

Menggunakan vMotion penyimpanan

Bagian ini menunjukkan cara menggunakan penyimpanan vMotion di cluster yang menggunakan SPBM. Jika Anda ingin menggunakan penyimpanan vMotion di cluster yang tidak menggunakan SPBM, lihat Menggunakan alat migrasi datastore.

Ikuti langkah-langkah berikut:

  1. Migrasikan semua VM cluster ke datastore target. Untuk mengetahui petunjuknya, lihat Memigrasikan Virtual Machine ke Resource dan Penyimpanan Compute Baru.

  2. Pastikan VM telah berhasil dimigrasikan ke datastore baru.

    Dapatkan objek Machine di cluster:

    kubectl --kubeconfig CLUSTER_KUBECONFIG get machines --output yaml
    

    Dalam output, di bagian status.disks, Anda dapat melihat disk yang terpasang ke VM. Contoh:

    status:
    addresses:
    – address: 172.16.20.2
      type: ExternalIP
    disks:
    – bootdisk: true
      datastore: pf-ds06
      filepath: ci-bluecwang-head-xvz2ccv28bf9wdbx-2/ci-bluecwang-head-xvz2ccv28bf9wdbx-2.vmdk
      uuid: 6000C29d-8edb-e742-babc-9c124013ba54
    – datastore: pf-ds06
      filepath: anthos/gke-admin-nc4rk/ci-bluecwang-head/ci-bluecwang-head-2-data.vmdk
      uuid: 6000C29e-cb12-8ffd-1aed-27f0438bb9d9
    

    Pastikan semua disk dari semua mesin dalam cluster telah dimigrasikan ke datastore target.

  3. Jalankan gkectl diagnose untuk memverifikasi bahwa cluster responsif.

  4. Perbarui kebijakan penyimpanan untuk mengecualikan datastore lama. Jika tidak, volume baru dan VM yang dibuat ulang mungkin akan ditetapkan ke datastore lama.