Referensi driver CSI

Manifes berikut menjelaskan kolom driver CSI yang didukung di resource Storage Class dan Persistent Volume.

Kelas Penyimpanan

Manifes berikut menyertakan semua kolom yang didukung di Class Penyimpanan.

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: parallelstore-csi-sc
provisioner: parallelstore.csi.storage.gke.io
parameters:
  network: VPC_NETWORK_NAME # optional
  labels: KEY: VALUE # optional
  description: DESCRIPTION # optional
  reserved-ip-range: IP_RANGE_NAME # optional
  file-stripe-level: FILE_STRIPE_LEVEL # optional
  directory-stripe-level: DIRECTORY_STRIPE_LEVEL # optional
volumeBindingMode: VOLUME_BINDING_MODE # default is "immediate"; or "waitForFirstConsumer"
allowedTopologies: # optional
- matchLabelExpressions:
  - key: topology.gke.io/zone
    values:
    - ZONE
mountOptions:
  -  DFUSE_MOUNT_OPTIONS # disable-caching, enable-wb-cache, thread-count, eq-count

Semua kolom berikut bersifat opsional:

  • network: Jaringan VPC tempat membuat instance Parallelstore. Jika properti ini tidak ditentukan, jaringan cluster GKE akan digunakan.

    Untuk membuat instance Parallelstore di jaringan VPC bersama, nama lengkap jaringan harus diberikan. Contoh: projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME

  • labels: Key-value pair yang ditentukan pengguna untuk dilampirkan ke instance ini.

  • description: Deskripsi instance. Harus terdiri dari 2.048 karakter atau kurang.

  • reserved-ip-range: Nama rentang alamat IP yang dialokasikan. Jika tidak ditentukan, semua rentang akan dipertimbangkan.

  • file-stripe-level menentukan setelan striping file. Nilai yang diizinkan adalah:

    • file-stripe-level-balanced
    • file-stripe-level-max
    • file-stripe-level-min

    Lihat Pertimbangan performa untuk mengetahui detailnya.

  • directory-stripe-level menentukan tingkat striping untuk direktori. Nilai yang diizinkan adalah:

    • directory-stripe-level-balanced
    • directory-stripe-level-max
    • directory-stripe-level-min

    Lihat Pertimbangan performa untuk mengetahui detailnya.

  • allowedTopologies: Menentukan zona tempat membuat instance Parallelstore. Jika kolom ini tidak ditentukan, instance akan dibuat di zona yang sama dengan deployment driver CSI, dengan mode binding volume immediate.

  • volumeBindingMode: Menentukan mode pemilihan topologi. Mode immediate menggunakan nilai yang ditentukan dalam allowedTopologies. Mode waitForFirstConsumer menetapkan topologi ke zona tempat pod GKE dijadwalkan. Hal ini dapat menyebabkan pod diblokir saat menunggu volume disediakan.

  • mountOptions: Menentukan opsi pemasangan dfuse dan parameter kernel, termasuk read_ahead_kb dan max_ratio. Volume yang didukung instance Parallelstore mewarisi nilai ini di kolom .spec.mountOptions volume persisten.

    Opsinya adalah:

    • disable-caching: Menonaktifkan semua penyimpanan dalam cache. Secara default, caching penuh (kecuali untuk cache write-back) diaktifkan saat memasang instance Parallelstore di GKE.
    • enable-wb-cache: Menggunakan cache write-back, bukan write-through.
    • thread-count: Jumlah thread yang akan digunakan. Nilai ini adalah jumlah jumlah thread FUSE dan jumlah antrean peristiwa.
    • eq-count: Jumlah antrean peristiwa yang akan digunakan.
    • read_ahead_kb: Ukuran periode baca-di-depan dalam kilobyte.
    • max_ratio: Memungkinkan pembatasan perangkat tertentu agar tidak menggunakan lebih dari persentase cache write-back yang ditentukan.

    Untuk informasi tentang opsi ini, lihat Pertimbangan performa.

Volume Persisten

Manifes berikut menyertakan semua kolom yang didukung di Volume Persisten.

apiVersion: v1
kind: PersistentVolume
metadata:
  name: parallelstore-pv
  annotations:
    pv.kubernetes.io/provisioned-by: parallelstore.csi.storage.gke.io
spec:
  storageClassName: parallelstore-csi-sc
  capacity:
    storage: INSTANCE_SIZE # 12Ti
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Retain # or "Delete"
  volumeMode: Filesystem
  mountOptions:
    - DFUSE_MOUNT_OPTIONS # disable-caching, enable-wb-cache, thread-count, eq-count, read_ahead_kb, max_ratio
  csi:
    driver: parallelstore.csi.storage.gke.io
    volumeHandle: PROJECT_ID/LOCATION/INSTANCE_NAME/default-pool/default-container
    volumeAttributes:
      accessPoints: ACCESS_POINTS # comma-separated list of IP addresses
      network: VPC_NETWORK # optional
  • capacity: Kapasitas instance Parallelstore. Harus berupa salah satu dari: 12Ti, 16Ti, atau 20Ti.
  • mountOptions: Diwarisi dari kolom mountOptions di StorageClass.
  • csi.volumeHandle: ID eksklusif untuk instance Parallelstore. Harus menggunakan format: PROJECT_ID/LOCATION/INSTANCE_NAME/default-pool/default-container
  • csi.volumeAttributes.accessPoints: Daftar alamat IP untuk node server Parallelstore, yang dipisahkan koma.
  • csi.volumeAttributes.network: Jaringan VPC instance Parallelstore, yang harus selaras dengan jaringan cluster GKE. Kolom ini digunakan untuk memverifikasi bahwa instance Parallelstore yang disediakan berada di jaringan yang valid sebelum Driver CSI memasangnya.