Testen und validieren
Auf dieser Seite werden einige der Tests behandelt, die direkt von VM-Instanzen ausgeführt werden können, die Mitglieder der konfigurierten dynamischen Gruppen sind. RCLONE und OCIFS sollten ähnlich getestet werden, mit einer Vielzahl von Befehlen, die Lese- und Schreibzugriff testen.
RCLONE-Tests
Im Rahmen dieses Aufwands wird die Aufbewahrungsregel für den Bucket für einen Teil der Zeit entfernt, damit wir die Fähigkeit von rclone zum Lesen und Schreiben in einen Bucket vollständig testen können.
Nach Abschluss des Tests kann die Regel wiederhergestellt und gesperrt werden. Das Testen erfolgt, indem Sie mit einer dynamischen Gruppe beginnen, die über die Berechtigungen "bucket read" und "object read" für alle Buckets innerhalb des Compartments verfügt, das den Archiv-Bucket enthält.
OS prompt> rclone config show [OCI-IP]
type = oracleobjectstorage
provider = instance_principal_auth
namespace = <tenancy-namespace>
compartment = ocid1.compartment.oc1..xxx
region = us-ashburn-1
OCI-IP
, um auf die konfigurierte Objektspeicherumgebung und die Zugangsdaten zu verweisen. Um eine Datei in einen Bucket zu synchronisieren (kopieren oder aktualisieren), wurde der Bucket mit der OCI-Konsole vorab erstellt, da unser schmales Berechtigungsset keine Bucket-Erstellung oder -Löschung enthält. Im folgenden Block wird der Synchronisierungsvorgang gefolgt von einer Bucket-Liste angezeigt.OS prompt> rclone sync rclone-test.txt OCI-IP:rclone-testing
OS prompt> rclone ls OCI-IP:rclone-testing
33 rclone-test.txt
Das Löschen von Dateien kann ebenfalls getestet werden. Befolgen Sie die RCLONE-Dokumentation für alle verfügbaren Optionen, wie z. B. Filtern.
OS prompt> rclone delete OCI-IP:rclone-testing/rclone-test.txt
Policy-Änderungen
OS prompt> rclone purge OCI-IP:rclone-testing
2024/08/29 14:36:15 ERROR : : Failed to rmdir: Error returned by ObjectStorage Service. Http Status Code: 404. Error Code: BucketNotFound. Opc request id: iad-1:xxx. Message: Either the bucket named 'rclone-testing' does not exist in the namespace '<namespace>' or you are not authorized to access it
Operation Name: DeleteBucket
Wie bereits erwähnt, können die Policy-Anweisungen, die für die dynamische Gruppe definiert wurden, bei Bedarf geändert werden. Beispiel: Um das Erstellen oder Löschen von Buckets zuzulassen, kann die folgende Anweisung hinzugefügt werden:allow dynamic-group oci-rclone-full-dg to manage buckets in compartment cis-landing-top:app-cmp where ANY {target.bucket.name =
'rclone-testing'}
Nach dem Hinzufügen dieser Policy-Anweisung kann der vorherige Vorgang wiederholt werden, und der Bucket wird gelöscht.Es ist hilfreich, einen Browser für den OCI Object Storage-Bildschirm geöffnet zu lassen und die Seite in einem Bucket zu aktualisieren, damit jeder Vorgang verifiziert werden kann.
OCIFS-Tests
Anhand der im vorherigen Abschnitt angegebenen Beispiele wurde das OCIFS-Utility auf verschiedene Weise getestet. Sobald die dynamische Gruppe und Policy so funktionieren, wie sie entworfen wurden, können Policys geändert und die Ergebnisse bei der Bearbeitung von Berechtigungen schnell geändert werden.
Im Rahmen von Berechtigungsänderungen wird empfohlen, OCIFS-Dateisysteme auszuhängen. Die Dokumentation enthält die Syntax zum Aushängen.
Hinweis:
Die Verwendung von Automount kann sich auf das OCIFS-Caching auswirken, da es den Cache entfernt, es sei denn, die Optionencache-reuse
und cache-keep
werden verwendet.
Das folgende Beispiel zeigt, wie Sie einen Einhängepunkt erstellen und mit OCIFS eine Verbindung zu einem Bucket herstellen:
root OS prompt# mkdir /mnt/read-bucket root OS prompt# ocifs --auth=instance_principal read-bucket /mnt/read-bucket/ root OS prompt# cd /mnt/read-bucket root OS prompt# ls -al total 0 drwxr-xr-x. 2 root root 6 Nov 6 14:56 . drwxr-xr-x. 5 root root 68 Nov 6 14:56 .. -rw-r--r--. 1 root root 4 Nov 6 14:57 file.txt
root OS prompt# rm file.txt rm: remove regular file 'file.txt'? y rm: cannot remove file.txt': Input/output error
Weitere Tests mit zusätzlichen Buckets, dynamischen Gruppendefinitionen und Policy-Anweisungen können durchgeführt werden. Lassen Sie ein oder zwei Minuten zwischen Änderungen und Tests zu, damit die Berechtigungen propagiert werden können.