Montag, 18. April 2016

Oracle Cloud: Anlegen von Storage Containern per REST API

Für den Oracle Cloud Workshop werden zuerst zwei Storage Container im Oracle Storage Cloud Service benötigt. Wie diese per REST-API mittels wget erstellt werden beschreibt die Oracle Dokumentation unter 'Authenticating Access When Using the REST API'. Hier sollen zwei alternative Wege aufgezeigt werden: über die Firefox-Extension RESTClient und über das Windows-Tool CloudBerry Explorer for OpenStack.


Los geht es nach dem Login in die Oracle Cloud Services im Dashboard, in dem alle gebuchten Services aufgeführt sind.


Hier wird der Oracle Storage Cloud Service per Klick auf den Titel geöffnet.


Die URL vom benötigten REST Endpoint wird hier aufgeführt und kann für die weitere Benutzung kopiert werden. Zur Authentifizierung muss diese zunächst editiert werden, wie in der Dokumentation beschrieben. Von z.B.

https://gse0nnnnnnn.storage.oraclecloud.com/v1/Storage-gse0nnnnnnn

wird zunächst alles ab v1 entfernt, in diesem Beispiel also

https://gse0nnnnnnn.storage.oraclecloud.com/

Danach wird 'auth/v1.0' angehängt, das Ergebnis sieht also aus wie folgt:

https://gse0nnnnnnn.storage.oraclecloud.com/auth/v1.0


Mit dieser URL geht es dann weiter im Firefox mit der RESTClient Extension (oder natürlich in jeder anderen Browser/Extension-Kombination, die das gleiche tut), die für einen GET Request hier einkopiert wird. Bevor der Request aber ausgeführt werden kann, müssen die Informationen für Benutzername und Password per Header mitgegeben werden.


Hierzu wird im Menü Headers der Punkt 'Custom Header' ausgewählt.


Der erste Header ist X-Storage-User, als Value wird der Benutzername eingetragen. Dieser setzt sich zusammen aus dem festen String 'Storage-', dem Namen der Identity Domain, einem Doppelpunkt ':' und dem eigentlichen Benutzernamen. Da wir diesen Header häufiger benötigen, sollte er gleich als Favorite abgespeichert werden.
Auf dem gleichen Weg wird noch ein zweiter Header angelegt mit Name 'X-Storage-Pass' und als Value das Password des Users.


Das Ergebnis sollte wie oben aussehen, also die URL mit auth/v1.0 und die beiden custom Header. Der Request kann jetzt mittels 'Send' abgeschickt werden.


Zurück gibt es ein Authentication Token, welches für die weitere Verwendung kopiert wird.


Um einen neuen Container anzulegen, wird REST-konform einfach in eine nicht vorhandene Resource (= Storage Container) geschrieben. Da diese Resource noch nicht vorhanden ist, wird eine neue Angelegt. Der Name der Resource ist die Basis-URL, die wir oben aus der Seite des Storage Services kopiert haben und der Name des neuen Storage Containers (hier: dbBackupContainer).
Wichtig ist hier, dass (wie bei allen folgenden Anfragen) die beiden oben angelegten Header gelöscht werden und statt dessen ein neuer Header X-Auth-Token angelegt wird. Das eben erhaltene Authentication Token wird als Value eingefügt. Dann kann der Request per 'Send' abgesetzt werden.


Wenn alles geklappt hat, kommt die Anfrage mit '201 Created' zurück.


Die in der Instanz bereits vorhandenen Storage Container lassen sich ebenfalls per REST-API anzeigen. Praktischerweise kann der X-Auth-Token Header einfach stehen gelassen werden. Falls irgendwann ein 'unauthorized' Fehler kommt, ist vermutlich das Token abgelaufen und der erste Schritt muss wiederholt werden.
Die URL für die Abfrage ist:
https://gse0nnnnnn.storage.oraclecloud.com/v1/Storage-gse0nnnnnn?limit=15


Zurück kommt eine Liste der vorhandenen Storage Container, u.a. auch der eben angelegte dbBackupContainer.

Da der Oracle Storage Cloud Service neben der REST-API auch die OpenStack Swift Api spricht, wird im nächsten Schritt dieses Tutorials das Erzeugen eines Storage Containers über OpenStack mit dem Tool CloudBerry Explorer gezeigt.

==> Storage Container verwalten per CloudBerry Explorer

Keine Kommentare:

Kommentar veröffentlichen

Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.