Auf dieser Seite wird beschrieben, wie Sie WORM-Buckets (Write Once, Read Many) für isolierte Google Distributed Cloud-Speicher (GDC) erstellen.
Hinweis
Storage-Buckets sind Ressourcen, die auf ein bestimmtes Projekt beschränkt sind. Das Projekt fungiert als Container, in dem Ihre Buckets gruppiert sind und über den Management API-Server verwaltet werden können. Bevor Sie die Vorgänge auf dieser Seite ausführen können, müssen Sie entweder ein neues Projekt erstellen oder ein vorhandenes auswählen, für das Sie die erforderlichen Berechtigungen haben.
Erforderliche IAM-Rollen
Wenden Sie sich an Ihren IAM-Projektadministrator, um die folgenden Rollen in Ihrem Projektnamespace anzufordern:
- Projekt-Bucket-Administrator (
project-bucket-admin): Storage-Buckets erstellen, aktualisieren und löschen. - Projekt-Bucket-Objektbetrachter (
project-bucket-object-viewer): Details zu Storage-Buckets und -Objekten ansehen und prüfen.
Weitere Informationen finden Sie unter Bucket-Zugriff gewähren.
Umgebung vorbereiten
So führen Sie Befehle für den Management API-Server oder den globalen API-Server aus:
- Melden Sie sich an und generieren Sie die kubeconfig-Datei für den zonalen Management API-Server, falls Sie noch keine haben.
- Führen Sie für Dual-Zone-Buckets die folgenden Schritte aus:
- Prüfen Sie mit Ihrem Infrastruktur-Operator (IO), ob die benutzerdefinierte Ressource
BucketLocationConfigfür Ihre gekoppelten Zonen erstellt wurde. - Generieren Sie die kubeconfig-Datei für den globalen API-Server.
- Prüfen Sie mit Ihrem Infrastruktur-Operator (IO), ob die benutzerdefinierte Ressource
WORM-Bucket erstellen
Ein WORM-Bucket sorgt dafür, dass Objekte nicht überschrieben werden, und bewahrt sie für einen Mindestzeitraum auf. Ein Anwendungsfall für einen WORM-Bucket ist beispielsweise die Audit-Protokollierung.
So erstellen Sie einen WORM-Bucket:
Legen Sie beim Erstellen des Buckets eine Aufbewahrungsfrist fest. Die Aufbewahrungsfrist definiert, wie viele Tage jede Objektversion vor dem Löschen oder Ändern gesperrt ist. Diese Aufbewahrungsfrist unterscheidet sich von der Mindestspeicherdauer der Speicherklasse (z. B. 30 Tage für die Speicherklasse
Standard). Für den folgenden Bucket wird beispielsweise eine Aufbewahrungsfrist von 365 Tagen festgelegt. Wenden Sie sich an Ihren Infrastrukturadministrator, wenn Sie die Grenzwerte für die Aufbewahrungsrichtlinie überschreiten müssen.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: 365Weisen Sie allen Nutzern, die Lesezugriff benötigen, die Rolle
project-bucket-object-viewerzu: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.ioWeisen Sie Nutzern, die Inhalte in den Bucket schreiben müssen, die Rolle
project-bucket-object-adminzu: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