ממשק שורת הפקודה (CLI) של Cloud Storage FUSE, או ה-CLI של gcsfuse, מאפשר לטעון קטגוריות של Cloud Storage כמערכות קבצים במכונה מקומית. במאמר הזה מתוארות האפשרויות של הפקודה gcsfuse שבהן אפשר להשתמש כדי לנהל אינטראקציה עם Cloud Storage FUSE.
אם אתם משתמשים במנהל התקן ה-CSI של Cloud Storage FUSE כדי לטעון את הקטגוריות למערכת הקבצים המקומית ב-Google Kubernetes Engine, קראו את המאמר אפשרויות טעינה למנהל התקן ה-CSI של Cloud Storage FUSE.
מבנה הפקודות ב-CLI של gcsfuse
בדוגמה הבאה מוצג המבנה של הפקודה gcsfuse, כולל הפקודות הנדרשות והאפשרויות האופציונליות של gcsfuse.
gcsfuse GLOBAL_OPTIONS BUCKET_NAME MOUNT_POINT
מחליפים את מה שכתוב בשדות הבאים:
GLOBAL_OPTIONSהן האפשרויות שלgcsfuseשקובעות את אופן הגדרת הטעינה ואת ההתנהגות של Cloud Storage FUSE.
BUCKET_NAMEהוא שם הקטגוריה שצריך לטעון. לדוגמה,my-mount-bucket. אופציונלי. כדי לבצע טעינה דינמית, לא כוללים שם של קטגוריה בפקודה הזו.
MOUNT_POINTהיא הספרייה המקומית שאליה תטענו את הקטגוריה. לדוגמה,/path/to/mount/point.
אפשרויות CLI של gcsfuse
אפשרות gcsfuse |
תיאור | ערך תקין | ערך ברירת המחדל |
|---|---|---|---|
|
השבתת האימות של בקשות. צריך להגדיר את האפשרות הזו אם משתמשים בנקודת קצה מותאמת אישית שלא תומכת באימות. צריך להגדיר את האפשרות הזו גם אם משתמשים ב-Cloud Storage FUSE עם קטגוריות ציבוריות. | ערך בוליאני: true, false. |
false |
|
שם האפליקציה של הטעינה. | ערך מחרוזת, לדוגמה: my-bucket-mount. |
"" |
|
מציינת איזה פרויקט צריך להשתמש לחיוב כשמתבצעת גישה לקטגוריה שהוטענה. האפשרות הזאת נחוצה לרוב במהלך טעינת קטגוריה שמופעלת באמצעות התכונה מגיש הבקשה משלם. | ערך מחרוזת שמייצג מזהה פרויקט. | "" |
|
מפעילה את מטמון הקבצים ומציינת את הספרייה לאחסון נתוני מטמון הקבצים. |
נתיב, לדוגמה: /tmp/gcsfuse-cache-path. ערך ריק מציין שהאפשרות הזו מושבתת. האפשרות gcsfuse מושבתת כברירת מחדל. |
"" |
|
מציינת באמצעות איזה פרוטוקול תתבצע התקשורת עם הקצה העורפי של Cloud Storage. |
|
http1 |
|
מייצאת מדדים ל-Cloud Monitoring במרווח הזמן שצוין. |
מספר שלם שמייצג ערך בשניות, לדוגמה: 10 (10 שניות).
0 מציין שלא יתבצע ייצוא. |
0 |
|
מציינת את הנתיב לקובץ התצורה שבו רוצים להשתמש כדי להגדיר את ההתנהגויות של Cloud Storage FUSE. | נתיב, לדוגמה: /etc/gcsfuse.yaml. |
"" |
|
מציינת נקודת קצה (endpoint) מותאמת אישית חלופית לאחזור נתונים.
נקודת הקצה המותאמת אישית חייבת לתמוך בפעולות ובמשאבים המקבילים לאלה של נקודת הקצה של gRPC ב-Cloud Storage, storage.googleapis.com:443, או של נקודת הקצה של JSON ב-Cloud Storage, https://storage./storage/v1.
אם לא מצוינת נקודת קצה מותאמת אישית, Cloud Storage FUSE משתמש בנקודת הקצה הגלובלית ל-JSON ב-Cloud Storage.
אם האימות לא נתמך בנקודת הקצה המותאמת אישית שציינתם, הגדירו את האפשרות --anonymous-access gcsfuse לערך true כדי לעקוף את האימות. |
נקודת קצה, לדוגמה: storage.googleapis.com:443. |
"" |
|
מפעילה פלט ניפוי באגים שקשורים ל-FUSE. האפשרות הזו הוחלפה באפשרות --log-severity gcsfuse. כדי להפעיל פלט של ניפוי באגים, מגדירים את האפשרות --log-severity gcsfuse לערך trace, שכולל יומני מעקב, ניפוי באגים, מידע, אזהרות ושגיאות. |
ערך בוליאני: true, false. |
false |
|
מדפיסה מידע בנוגע לבקשה ולתזמון של Cloud Storage. האפשרות gcsfuse הוחלפה באפשרות --log-severity gcsfuse. כדי להפעיל פלט של ניפוי באגים, מגדירים את האפשרות --log-severity gcsfuse לערך trace, שכולל יומני מעקב, ניפוי באגים, מידע, אזהרות ושגיאות. |
ערך בוליאני: true, false. |
false |
|
יוצאת מהתוכנית כשמזוהות הפרות של משתנים קבועים פנימיים. | ערך בוליאני: true, false. |
false |
|
מדפיסה הודעות ניפוי באגים כאשר מפעילים מניעה הדדית (mutex) למשך זמן רב מדי. אם מציינים את האפשרות gcsfuse, רמת החומרה של היומנים מוגדרת באופן אוטומטי ל-trace, שכוללת יומני מעקב, ניפוי באגים, מידע, אזהרות ושגיאות. |
ערך בוליאני: true, false. |
false |
|
ביטים של הרשאות לספריות, על בסיס אוקטלי. | ערך מחרוזת שמייצג מספר שלם אוקטלי בין "000" ל-"777" (כולל), לדוגמה: "755". |
755 |
|
מציין אחזור מראש אסינכרוני של חלקים מאובייקט ב-Cloud Storage למאגר נתונים זמני (buffer) בזיכרון, כך שפעולות קריאה עוקבות יתבצעו ממאגר הנתונים הזמני במקום לדרוש קריאות לרשת. | ערך בוליאני: true, false |
false |
|
יוצרת רשומת מטמון של נתוני type עם הסוג NonexistentType אם קובץ לא נמצא ב-Cloud Storage. אם הקובץ נוצר ב-Cloud Storage אבל הרשומה NonexistentType של הקובץ שמורה במטמון, Cloud Storage FUSE לא יכול לבקש את הקובץ עד שהרשומה NonexistentType תוסר ממטמון של נתוני type. |
ערך בוליאני: true, false. |
false |
|
שולט בתהליך של נתיב הכתיבה, כך שהנתונים מועלים ישירות ל-Cloud Storage בזמן הכתיבה, במקום להעלות אותם אחרי שהם נכתבים במלואם במחסן ביניים (Stage) מקומי, באמצעות close() או fsync().
מידע נוסף על כתיבה בסטרימינג זמין במאמר הסמנטיקה של Cloud Storage FUSE במאמרי העזרה של Cloud Storage FUSE GitHub. |
ערך בוליאני: true, false. |
true |
|
המדיניות הזו מציינת את הגודל המקסימלי ב-MiB שמטמון הקבצים יכול להשתמש בו, ומאפשרת להגביל את הקיבולת הכוללת שמטמון הקבצים יכול להשתמש בה בספרייה שבה הוא מותקן. |
|
-1 |
|
ההגדרה הזו קובעת אם האובייקט המלא יורד באופן אסינכרוני ויישמר בספריית המטמון של Cloud Storage FUSE, כשהקריאה הראשונה תושלם מהיסט שאינו אפס. אם אתם מתכננים לבצע כמה קריאות אקראיות או קריאות חלקיות, כדאי להגדיר את האפשרות gcsfuse הזו לערך true.
|
ערך בוליאני: true, false. |
false |
|
מציינת את הגודל של כל בקשת קריאה ב-MiB שכל goroutine שולחת ל-Cloud Storage כשמורידים את האובייקט למטמון הקבצים. | מספר שלם | 200 |
|
האצת הקריאה של קבצים גדולים באמצעות שימוש בספריית המטמון של הקבצים כמאגר נתונים לשליפה מראש, תוך שימוש בכמה קבצי עבודה כדי להוריד כמה חלקים של קובץ במקביל. הורדות במקביל מופעלות באופן אוטומטי כשמפעילים שמירת קבצים במטמון. מידע נוסף על שמירת קבצים במטמון מופיע במאמר שמירת קבצים במטמון ב-Cloud Storage FUSE. מידע נוסף על הורדות במקביל ועל הגדרת מאפיינים תומכים זמין במאמר הורדות במקביל. |
ערך בוליאני: true, false. |
true |
|
ביטוי רגולרי שמציין קבצים שצריך להחריג מהשמירה במטמון.
אם קובץ תואם לביטוי הרגולרי הזה, הוא לא נשמר במטמון, גם אם הוא תואם גם ל---file-cache-include-regex.
הביטוי הרגולרי מותאם לנתיבי קבצים בפורמט bucket_name/object_key. מידע נוסף זמין במאמר שליטה ביכולת השמירה במטמון ברמת פירוט של קובץ באמצעות ביטויים רגולריים. |
ערך מחרוזת שמייצג ביטוי רגולרי. | "" |
|
ביטוי רגולרי שמציין אילו קבצים לכלול בשמירה במטמון. אם משתמשים באפשרות הזו, רק קבצים שתואמים לביטוי הרגולרי הזה נשמרים במטמון.
הביטוי הרגולרי מותאם לנתיבי קבצים בפורמט bucket_name/object_key. מידע נוסף זמין במאמר שליטה ביכולת השמירה במטמון ברמת פירוט של קובץ באמצעות ביטויים רגולריים. |
ערך מחרוזת שמייצג ביטוי רגולרי. | "" |
|
המספר המקסימלי של goroutines שאפשר ליצור בכל זמן נתון בכל משימות ההורדה של הקבצים. |
|
פי שניים ממספר ליבות המעבד (CPU) במכונה או 16, הגבוה מביניהם. |
|
מספר בקשות ההורדה בו-זמנית לכל קובץ. | מספר שלם | 16 |
|
מציינת ביטים של הרשאות לקבצים, על בסיס אוקטלי. | ערך מחרוזת שמייצג מספר שלם אוקטלי בין "000" ל-"777" (כולל), לדוגמה: "644". |
644 |
|
מריצה את הפקודה gcsfuse בחזית. |
ערך בוליאני: true, false. |
false |
|
מציינת מי הבעלים של מזהה הקבוצה (GID) של כל צמתי inode. |
|
-1 |
|
מציגה עזרה לגבי Cloud Storage FUSE. | ללא | ללא |
|
מציגה את גרסת Cloud Storage FUSE שהתקנתם. | ללא | ללא |
|
מציינת כמה זמן צד הלקוח ב-HTTP ב-Cloud Storage FUSE יכול לחכות לקבלת תשובה מהשרת לפני שהזמן הקצוב יסתיים. | משך הזמן, לדוגמה: 1h10m10s לשעה אחת, 10 דקות ו-10 שניות. 0s מציין שאין זמן קצוב לתפוגה. |
0s |
|
הוראה ל-Cloud Storage FUSE להתעלם מאותות של הפרעות במערכת, כמו SIGINT שמופעל על ידי Control+C. כך אפשר למנוע מאותות להפסיק פעולות שמתבצעות. |
ערך בוליאני: true, false. |
true |
|
כולל באופן משתמע תיקיות ותיקיות מנוהלות. מידע נוסף זמין במקטע Files and directories במאמרי העזרה של Cloud Storage FUSE GitHub. | ערך בוליאני: true, false. |
false |
|
מפעילה את מטמון הרשימה ומגדירה את אורך החיים (TTL) בשניות של רשומות הרשימה שנשמרו במטמון. המטמון של הרשימה נשמר בזיכרון במטמון של הדף, שנשלט על ידי הליבה על סמך הזיכרון הזמין. |
|
0 |
|
מציינת נתיב מוחלט לקובץ מפתח ה-JSON של פרטי הכניסה לצורך אימות בקשות ב-Cloud Storage. כברירת מחדל, אימות הבקשות ב-Cloud Storage FUSE מתבצע באמצעות Application Default Credentials. | נתיב, לדוגמה: /home/example_user/gcloud-key.json. |
אם לא מגדירים את האפשרות הזו, המערכת משתמשת בפרטי הכניסה שמוגדרים כברירת מחדל באפליקציה. |
|
מציינת את מגבלת רוחב הפס שבה Cloud Storage FUSE יכול לקרוא נתונים מ-Cloud Storage. היא נמדדת במשך חלון זמן של 30 שניות. | מספר נקודה צפה (floating-point). הערך -1 מציין שאין מגבלה. |
-1 |
|
מציינת מגבלת ביצוע של מספר הפעולות לשנייה, שנמדדת במשך חלון זמן של 30 שניות. | מספר נקודה צפה (floating-point). הערך -1 מציין שאין מגבלה. |
-1 |
|
מציינת את הקובץ לאחסון יומנים שאפשר לנתח באמצעות Fluentd. | נתיב, לדוגמה: /tmp/user-example-bucket-gcsfuse-logs.txt. |
stdout כש-Cloud Storage FUSE פועל בחזית, או syslog כש-Cloud Storage FUSE פועל ברקע |
|
מציינת את הפורמט של קובץ היומן. |
|
json |
|
המספר המקסימלי של קובצי יומן שעברו רוטציה שצריך לשמור, לא כולל הקובץ הפעיל שאליו נכתבים היומנים. |
|
10 |
|
מציינת אם קובצי יומן שעברו רוטציה נדחסים באמצעות gzip. |
ערך בוליאני: true, false. |
true |
|
הגודל המקסימלי במגה-בייט (MB) שקובצי היומן יכולים להגיע אליו לפני שהם מוחלפים. | מספר שלם. הערך המינימלי הוא 1. |
512 |
|
רמת החומרה של היומנים שאתם רוצים ש-Cloud Storage FUSE ייצור. רמות החומרה מסודרות מהנמוכה ביותר לגבוהה ביותר. לדוגמה, כשמציינים את הערך |
|
info |
|
מציינת את המספר המקסימלי של חיבורי TCP שמותרים לכל שרת.
האפשרות הזו מופעלת כאשר בשדה --client-protocol מגדירים את הערך http1. |
מספר שלם בין 0 ל-2147483647.
הערך 0 מציין שאין מגבלה על חיבורי TCP. |
0 |
|
מציינת את המספר המקסימלי של חיבורים ללא פעילות שמותרים לכל שרת.
האפשרות הזו מופעלת כאשר בשדה --client-protocol מגדירים את הערך http1. |
מספר שלם בין 0 ל-2147483647.
הערך 0 מציין שאין מגבלה על חיבורים ללא פעילות. |
0 |
|
מציינת את מספר הפעמים המקסימלי לביצוע ניסיון חוזר של פעולה שנכשלה, כדי למנוע לולאות אינסופיות של ניסיונות חוזרים. |
|
0 |
|
מציינת את משך הזמן המקסימלי שבו Cloud Storage FUSE יכול להשהות את הפעולה בלולאת ניסיון חוזר עם השהיה מעריכית לפני ניסיון חוזר (exponential backoff). אם משך ההשהיה לפני ניסיון חוזר חורג ממשך הזמן המקסימלי שצוין, הניסיון החוזר ממשיך עם משך הזמן המקסימלי שצוין. | משך זמן, לדוגמה: 1h5m50s (שעה אחת, 5 דקות ו-50 שניות) או 60s (60 שניות). |
30s |
|
מגדירה את אורך החיים (TTL) בשניות של רשומות במטמון של נתוני stat שליליים, שמאחסנות תוצאות של קבצים שלא קיימים במטמון. |
|
5 |
|
המדיניות הזו מגדירה את אורך החיים (TTL) בשניות של רשומות מטא-נתונים שנשמרו במטמון. |
|
60 |
|
מציינת אפשרויות טעינה נוספות שספציפיות למערכת. לרוב אפשרויות הטעינה הכלליות ב-FUSE, כמו suid, יש תמיכה ב-Cloud Storage FUSE, ואפשר להעביר אותן יחד עם האפשרות -o. |
אפשרויות טעינה ב-FUSE, לדוגמה:
|
"" |
|
טוענת רק ספרייה ספציפית מתוך קטגוריה. | נתיב, לדוגמה: /etc/gcsfuse.yaml. |
"" |
|
מחיל קבוצה מוגדרת מראש ואופטימלית של הגדרות Cloud Storage FUSE לשמירה במטמון, ל-threading ולגודל שטח האחסון הזמני, כדי לעזור לכם להשיג ביצועים גבוהים עבור סוג ספציפי של עומס עבודה, כמו אימון, הכנסה לשימוש בסביבת הייצור ונקודות ביקורת. למידע נוסף על כל הגדרה מוגדרת מראש שמבוססת על סוג עומס העבודה, קראו את המאמר הגדרות מבוססות-פרופיל לעומסי עבודה של AI/ML. |
|
"" |
|
חושפת את נקודת הקצה של מדדי Prometheus ביציאה שצוינה ובנתיב |
מספר שלם שמייצג את היציאה שרוצים לציין. | 0 |
|
מציינת את המספר המקסימלי של בלוקים שזמינים לקריאות במאגר נתונים זמני בכל נקודות הטיפול בקבצים. |
|
40 |
|
מאפשרת לשנות את השם של ספריות שמכילות פחות צאצאים מהמגבלה שצוינה. | מספר שלם בין 0 ל-2147483647. |
0 |
|
מציינת את המכפיל להשהיה מעריכית לפני ניסיון חוזר (exponential backoff) בין ניסיונות חוזרים בזה אחר זה. | מספר בשיטת נקודה צפה. | 2 |
|
מציינת אם להשתמש שוב באסימון שהתקבל מ---token-url. |
ערך בוליאני: true, false. |
true |
|
מציינת את גודל המקטע של הנתונים להורדה מ-Cloud Storage, ביחידות מגה-בייט (MB). | מספר שלם בין 1 ל-1024. |
200 |
|
מציינת את מספר הרשומות שאפשר לשמור במטמון של נתוני stat. האפשרות gcsfuse הוחלפה באפשרות --stat-cache-max-size-mb gcsfuse. |
מספר שלם | 4096 |
|
הגודל המקסימלי של הזיכרון שבו מטמון הנתונים הסטטיסטיים יכול להשתמש, ב-MiB. מטמון הנתונים הסטטיסטיים נשמר תמיד בזיכרון. |
|
34 |
|
מציינת למשך כמה זמן לשמור במטמון תוצאות של StatObject ומאפיינים של inode. האפשרות הזו הוחלפה באפשרות --metadata-cache-ttl-secs gcsfuse. |
משך זמן, לדוגמה: 20s (20 שניות). |
60s |
|
מציינת נתיב לספרייה הזמנית לאחסון הנתונים שנכתבים במחסן ביניים (Stage) לפני ההעלאה ל-Cloud Storage. | נתיב, לדוגמה: /mnt/ssd/example-user-gcsfuse-temp-dir. |
|
|
מציינת כתובת URL לקבלת אסימון גישה
כש---key-file חסר. |
כתובת URL. | "" |
|
מציינת למשך כמה זמן לשמור במטמון את המיפוי בין שמות וקבצים או ספריות בצמתי inode של ספריות, בשניות. האפשרות gcsfuse הוחלפה באפשרות --metadata-cache-ttl-secs gcsfuse. |
משך הזמן בשניות, לדוגמה: 20s (20 שניות). |
60s |
|
הגודל המקסימלי ב-MiB לכל ספרייה שהמטמון של הסוג יכול להשתמש בו. מטמון הסוגים תמיד נשמר כולו בזיכרון. |
|
4 |
|
הדגל הזה מאפשר שליפה מראש ברקע של מטא-נתונים של אובייקטים בתוך ספרייה במהלך אי מציאה במטמון. הוא מבצע חבילת עדכונים למטמון המטא-נתונים, וכך מקצר משמעותית את זמן האחזור בחיפושים הבאים של קבצים בספרייה. | ערך בוליאני: true, false. |
false |
|
מציינת את המספר המקסימלי של רשומות מטא-נתונים לאחזור מראש לכל ספרייה. ערכים שמציינים יותר מ-5,000 רשומות של מטא-נתונים גורמים לכמה קריאות רציפות ל-Objects: list של Cloud Storage, כי כל קריאה בודדת מוגבלת ל-5,000 תוצאות.
|
מספר שלם בין -1 ל-2147483647. מגדירים את הערך -1 כדי לאחזר מראש את כל הרשומות. |
5000 |
|
המספר המקסימלי של תהליכי עבודה ברקע שמותר להפעיל בו-זמנית כדי לבצע אחזור מראש של מטא-נתונים בכל הספריות. | מספר שלם בין -1 ל-2147483647. כדי להגדיר מספר בלתי מוגבל של עובדים, צריך להזין -1. |
10 |
|
מציינת מי הבעלים של מזהה המשתמש (UID) של כל צמתי ה-inode. |
|
-1 |
|
המדיניות מציינת את המספר המקסימלי של מקטעי נתונים שזמינים לכתיבה בסטרימינג בכל הקבצים. כברירת מחדל, כל קובץ משתמש במקטע נתונים אחד של 32MiB. |
|
|