הפניה למנהל התקן CSI של Managed Lustre

במניפסטים הבאים מתוארים שדות נתמכים של מנהלי התקנים של CSI במשאבים StorageClass ו-Persistent Volume.

סוג אחסון (storage class)

המניפסט הבא כולל את כל השדות הנתמכים ב-StorageClass.

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: lustre-csi-example-storage-class
provisioner: lustre.csi.storage.gke.io
parameters:
  network: VPC_NETWORK # optional
  filesystem: LUSTRE_FILESYSTEM_NAME # optional
  labels: KEY_1=VALUE_1,KEY_2=VALUE_2,...,KEY_N=VALUE_N # optional
  description: DESCRIPTION # optional
  perUnitStorageThroughput: 125 | 250 | 500 | 1000  # required
volumeBindingMode: WaitForFirstConsumer | Immediate # default is Immediate
allowedTopologies:
- matchLabelExpressions:
  - key: topology.gke.io/zone
    values:
    - ZONE_1
    - ZONE_2
mountOptions:
  - LUSTRE_MOUNT_OPTIONS

מחליפים את הערכים הבאים:

  • network: אופציונלי. רשת הענן הווירטואלי הפרטי (VPC) שבה רוצים ליצור את מופע Managed Lustre. אם לא מציינים את המאפיין הזה, נעשה שימוש ברשת ברירת המחדל.

    כדי ליצור מכונת Managed Lustre ברשת VPC משותפת, צריך לציין את השם המלא של הרשת. לדוגמה, projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME.

  • filesystem: מציין את fsname של מכונת Managed Lustre. הפרמטר הזה משמש להקצאת הרשאות דינמית. הערך של fsname חייב להיות מחרוזת אלפאנומרית באורך של עד שמונה תווים, שמתחילה בתו אלפביתי. אם לא מציינים ערך, מנהל ההתקן של CSI יוצר fsname בפורמט "lfsNNNNN" (לדוגמה, "lfs97603").

  • labels: אופציונלי. ‫Managed Lustre תומך בתוויות לכל מכונה, בתור מיפוי של זוגות מפתח-ערך. ה-CSI driver של Managed Lustre מאפשר לכם לצרף תוויות שהמשתמשים סיפקו למופע.

  • description: אופציונלי. תיאור של המופע. האורך המרבי הוא 2,048 תווים.

  • perUnitStorageThroughput: מציין את נפח האחסון ליחידה (MB/s/TiB) של המופע. הערכים הנתמכים הם 125,‏ 250,‏ 500 ו-1000. ברירת המחדל היא 1000.

  • allowTopologies: אופציונלי. מכונות Managed Lustre הן משאבים אזוריים. אם לא מציינים את המאפיין הזה, מופע Managed Lustre נוצר באותו אזור כמו CSI controller Driver Pod, ומצב הקישור של אמצעי האחסון מוגדר כברירת מחדל ל-Immediate.

    אם מציינים את WaitForFirstConsumer, הטופולוגיה מוגדרת למקום שבו מתוזמן ה-Pod. עם זאת, ההגדרה הזו עלולה לגרום לחסימה של Pods בזמן ההמתנה להקצאת נפח אחסון.

    הדרייבר המנוהל של Lustre CSI תומך בתכונת הטופולוגיה כדי לוודא שנפחים קבועים ו-Pods ממוקמים בטופולוגיות המותרות, על סמך הטופולוגיה שצוינה ב-StorageClass.

  • mountOptions: אופציונלי. מציינת אפשרויות טעינה של mount.lustre. כרכים מנוהלים של Lustre מקבלים בירושה את אפשרויות ההרכבה האלה מ-StorageClass בשדה pv.spec.mountOptions.

נפח אחסון מתמיד (Persistent Volume)

המניפסט הבא כולל את כל השדות הנתמכים ב-PersistentVolume.

apiVersion: v1
kind: PersistentVolume
metadata:
 name: preprov-pv
 annotations:
   pv.kubernetes.io/provisioned-by: lustre.csi.storage.gke.io
spec:
 mountOptions:
   - LUSTRE_MOUNT_OPTIONS
   ...
 storageClassName: ""
 capacity:
   storage: CAPACITY
 accessModes:
   - ReadWriteMany
 persistentVolumeReclaimPolicy: Retain
 volumeMode: Filesystem
 csi:
   driver: lustre.csi.storage.gke.io
   volumeHandle: EXISTING_LUSTRE_INSTANCE_NAME
   volumeAttributes:
     ip: EXISTING_LUSTRE_IP_ADDRESS
     filesystem: EXISTING_LUSTRE_FSNAME

מחליפים את הערכים הבאים:

  • capacity.storage: הקיבולת של מכונת Managed Lustre. במאמר רמות ביצועים מפורטים הקיבולות המינימליות והמקסימליות הנתמכות של המופעים.
  • mountOptions: מציין אפשרויות טעינה של mount.lustre. הערך הזה עובר בירושה מהשדה mountOptions ב-StorageClass.
  • csi.volumeHandle: מזהה בלעדי של מופע Managed Lustre. חובה להשתמש בפורמט הבא: PROJECT_ID/LOCATION/INSTANCE_NAME.
  • csi.volumeAttributes.ip: כתובת ה-IP של מופע Managed Lustre, שמשמשת להרכבה.
  • csi.volumeAttributes.filesystem: שם מערכת הקבצים של מכונת Managed Lustre, שהוא מזהה בן שמונה תווים.