בדף הזה מוסבר איך ליצור קטגוריות אחסון WORM ב-Google Distributed Cloud (GDC) עם בידוד פיזי.
לפני שמתחילים
קטגוריות אחסון הן משאבים שמוגבלים לפרויקט ספציפי. הפרויקט משמש כמאגר שמקבץ את הדליים ומאפשר לנהל אותם באמצעות שרת Management API. כדי לבצע את הפעולות בדף הזה, צריך ליצור פרויקט חדש או לבחור פרויקט קיים שיש לכם בו הרשאות מספיקות.
התפקידים שצריך ב-IAM
פנו לאדמין של פרויקט IAM כדי לבקש את התפקידים הבאים במרחב השמות של הפרויקט:
- אדמין של קטגוריות בפרויקט (
project-bucket-admin): יצירה, עדכון ומחיקה של קטגוריות אחסון. - Project Bucket Object Viewer (
project-bucket-object-viewer): צפייה בפרטים של קטגוריות ואובייקטים באחסון ובדיקתם.
מידע נוסף זמין במאמר בנושא מתן גישה לקטגוריות.
הכנת הסביבה
כדי להריץ פקודות מול שרת ה-API לניהול או שרת ה-API הגלובלי, צריך לבצע את הפעולות הבאות:
- נכנסים לחשבון ויוצרים את קובץ ה-kubeconfig עבור שרת ה-API של ניהול אזורים, אם אין לכם כזה.
- לקטגוריות בשני אזורים, מבצעים את הפעולות הבאות:
- מוודאים עם מפעיל התשתית (IO) שנוצר
BucketLocationConfigמשאב בהתאמה אישית עבור האזורים המזווגים. - יוצרים את קובץ ה-kubeconfig לשרת ה-API הגלובלי.
- מוודאים עם מפעיל התשתית (IO) שנוצר
יצירת קטגוריה מסוג WORM
קטגוריית WORM מבטיחה ששום דבר לא ידרוס אובייקטים ושומרת אותם למשך תקופה מינימלית. רישום ביומן ביקורת הוא תרחיש שימוש לדוגמה לקטגוריית WORM.
כדי ליצור קטגוריה מסוג WORM:
מגדירים תקופת שמירה כשיוצרים את הקטגוריה. תקופת השמירה מגדירה כמה ימים כל גרסת אובייקט נעולה מפני מחיקה או שינוי. תקופת השמירה הזו שונה ממשך האחסון המינימלי של סוג האחסון (למשל, המינימום של 30 יום לסוג האחסון
Standard). לדוגמה, בקטגוריה הבאה מוגדרת תקופת שמירה של 365 ימים. אם אתם צריכים לחרוג ממגבלות מדיניות שמירת הנתונים, אתם יכולים לפנות למפעיל התשתית (IO).apiVersion: object.gdc.goog/v1 kind: Bucket metadata: name: foo-logging-bucket namespace: foo-service spec: description: "Audit logs for foo" storageClass: Standard bucketPolicy: lockingPolicy: defaultObjectRetentionDays: 365הקצאת התפקיד
project-bucket-object-viewerלכל המשתמשים שזקוקים לגישת קריאה בלבד:apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: namespace: foo-service name: object-readonly-access roleRef: kind: Role name: project-bucket-object-viewer apiGroup: rbac.authorization.k8s.io subjects: - kind: ServiceAccount namespace: foo-service name: foo-log-processor - kind: User name: bob@example.com apiGroup: rbac.authorization.k8s.ioמקצים את התפקיד
project-bucket-object-adminלמשתמשים שצריכים לכתוב תוכן לקטגוריה:apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: namespace: foo-service name: object-write-access roleRef: kind: Role name: project-bucket-object-admin apiGroup: rbac.authorization.k8s.io subjects: - kind: ServiceAccount namespace: foo-service name: foo-service-account