Über Cloud Object Storage (COS) wurde hier schon einiges geschrieben. Heute wollen wir uns mit der Einrichtung beschäftigen und später den Zugriff auf diesen Speicher behandeln. „Einrichtung“ klingt erstmal banal, aber ganz so einfach ist es nicht, da Entscheidungen getroffen werden müssen, die sich auf die Kosten auswirken.
Des Weiteren ermöglicht „IBM Cloud Connection“, also das Lizenzprogramm 5770-ICC, den Zugriff auf COS sowohl unter 5250 als auch über das Web und es gibt weitere alternative Zugriffsmöglichkeiten, die man auch in eigenen Programmen verwenden kann.
Auf eine sichere Übertragung von Dateien mittels HTTPS wird allerdings erst in einem späteren Artikel eingegangen. In diesem Beitrag geht es erstmal nur um die Erläuterung der Zusammenhänge. Zu beachten ist, dass die Sicherheit der hier verwendeten HTTP Übertragung im Wesentlichen nur in der Verwendung sogenannter Serviceberechtigungen liegt, auf die wir später eingehen werden.
Zunächst einmal benötigt man einen Account für das IBM Cloud Angebot, welches über den Anmeldelink https://cloud.ibm.com schnell eingerichtet werden kann.
Quelle: IBMDort sollte man insbesondere auch auf Sonderangebote achten.
Quelle: IBMIst dies geschehen, kann man nach der Anmeldung Cloud Services, wie Cloud Object Storage, bestellen. Dazu einfach in das Suchfeld „Object“ eingeben und den Service „Object Storage“ auswählen.
Quelle: IBMDort findet man verschiedene Optionen. Da wir Object Storage in Rechenzentren der IBM Cloud wollen, wählen wir „IBM Cloud“ aus.
Quelle: IBMJetzt müssen wir uns für ein entscheiden. Sollte man unsicher sein, ist das Standard Angebot keine schlechte Wahl. Es lohnt sich, bevor man bucht, auch ein Blick auf die Preisgestaltung.
Quelle: IBMZum einen findet man hier das kostenfreie Lite Plan Angebot, welches für erste Tests ausreichend ist. Andererseits kann man erkennen, dass die Nutzung von Geschwindigkeit des Storage und der Anzahl der Zugriffe abhängig ist. Verwendet man z.B. COS für die Ablage von Backup Medien, wie Virtual Tapes, könnte z.B. „Cold Vault“ die günstigste Lösung sein, da man ältere Sicherungen wohl nicht so oft benötigt. Empfehlenswert ist es ohnehin zumindest die letzte Sicherung im direkten Zugriff von seiner IBM i Instanz zu haben. Sollte man sich nicht sicher sein, ist das Smart Angebot ein Kompromiss.
Des Weiteren muss man auch entscheiden, wo die Daten gespeichert werden. „Überregional“ bedeutet z.B. EU weit, „Regional“ einzelne Cloud Standorte, wie „eu-de“ für Frankfurt und „Einzelne Site“ ein bestimmtes Cloud Rechenzentrum. Damit wird allerdings der Zugriff auf die in COS gespeicherten Daten nicht eingeschränkt. Solange man Zugangsdaten hat, kann man auf die Daten von überall zugreifen.
Nachdem wir auf den Reiter „Erstellen“ geklickt haben, wählen für unseren ersten Test „Standard“ aus und geben dem Service einen Namen. Die anderen Felder (Eine Ressource Group ist hilfreich bezüglich der Übersicht/Gruppierung gebuchter Services. Tags dienen der Suche) lassen wir unverändert.
Quelle: IBMNach dem Klick auf den Button „Erstellen“ wird der Service angelegt, der rein zu Abrechnungs-zwecken und der Gruppierung des COS Speichers dient. Kosten tut das bisher noch nichts.
Nach der Erstellung wird die aktuelle Konfiguration unseres neuen COS Service angezeigt.
Quelle: IBMSollte das nicht so sein, klicken wir links oben auf das Symbol vom sogenannten „Burgermenu“ und danach auf „Ressourcenliste“. Den vorher erstellten COS Services findet man unter dem Punkt „Speicher“.
Quelle: IBMDaten speichern können wir bisher noch nicht. Dazu benötigt es noch Buckets. Dazu klickt man auf „Bucket erstellen“ und wählt danach „Schneller Einstieg“.
Quelle: IBMGeben Sie Ihrem neuen Bucket einen Namen. Auf der nächste Seite könnte man nun über den Browser eine Datei hochladen um den Bucket testen zu können. Das überspringen wir und klicken auf „Weiter“ und wählen „Basiskonfiguration anzeigen“. Da kann man schon erkennen, dass eine Bucket Konfiguration ziemlich herausfordernd sein kann. Keine Panik! Wir werden hier nur auf das Wesentliche eingehen.
Quelle: IBMAlternativ, um ein Verständnis zu bekommen, welche Informationen bei der Erstellung von Buckets normalerweise benötigt werden, kann auch ein „Custom Bucket“. erstellen werden.
Quelle: IBMHier sieht man, dass man eine Speicheroptionen wählen und den Typ einstellen muss. Wir können später sehen, was der „Schnelle Einstieg“ konfiguriert hat. Fakt ist, einmal eingestellt, kann dies bei Buckets nicht mehr verändert werden.
Für das Erste genügt es, wenn wir die Inhalte von Buckets prüfen können, Serviceberechtigungsnachweise verstehen und wissen, was es mit COS Endpunkte auf sich hat. Um mehr Informationen über einen Bucket zu erhalten, kann man einfach über das „Burgermenu“ den COS Service auswählen. Mit einem Klick auf den einen Bucket könnte man dessen Inhalt sehen.
Quelle: IBMWählt man aus dem Menu „Konfiguration“ aus, sieht man unter anderem, dass der erstellte Bucket als „Regional“ in „eu-de“ konfiguriert wurde.
Quelle: IBMKlicken wir nun auf „Endpunkte“.
Quelle: IBMHinter dem Begriff „Endpoint“ verbergen sich die URLs, über die dieser COS Service angesprochen werden kann. Die „Privat“ und „Direkt“ Endpoints werden nur Cloud intern verwendet, so dass für uns bisher ausschließlich der öffentliche Endpoint, der über das Internet erreichbar ist, interessant ist.
Jetzt fehlen noch Zugangsdaten, die als „Serviceberechtigungen“ bezeichnet werden. Um diese zu sehen bzw. neue zu erstellen, müssen wir zurück zum COS Service gehen und den Reiter „Serviceberechtigungen“ auswählen.
Quelle: IBMHier sehen wir, dass der „Schnelle Einstieg“ bereits einen erstellt hat. Allerdings ist dieser für die Nutzung mit IBM Cloud Storage Solutions (5770-ICC) nicht brauchbar. Daher können wir ihn löschen und uns eine neue erstellen. Dazu klicken wir auf „Neue Serviceberechtigung“.
Nicht vergessen darf man den Schalter für die Generierung der HMAC Berechtigungsnachweise zu aktivieren. Danach mit „Hinzufügen“ die Generierung initiieren. Diese Serviceberechtigungen sind selbstverständlich geheim zu halten, denn jeder, der sie kennt, kann als Manager unseres COS Service agieren!
Quelle: IBMErzeugt wird eine Json Datenstruktur:
Quelle: IBMDer „apikey“ ist für die Verwendung innerhalb von Anwendungen gedacht und reicht für einen Zugriff aus unseren COS Service völlig aus. Leider haben die Entwickler von ICC aber einen „Login“ mittels “access_key_id” und “secret_access_key” vorgesehen.
Unter “endpoints” befindet sich ein Link zu den COS Service Endpunkten, bei denen man allerdings aufpassen muß, dass auch die richtigen Einstellungen bzgl. Datenspeicherung, z.B. “Regional” und “eu-de”, eingestellt werden müssen.
Wir sind soweit fertig und können nun unseren neuen Service unter IBM i testen.
Die Installation vom Lizenzprogramm 5733-ICC wurde bereits im Techknow Letter “IBM i und IBM Cloud Storage Solutions” beschrieben, ebenso wie die Verwendung mit dem zu verwendeten Befehlen.
Die Konfiguration einer S3 Schnittelle mir CRTS3RICC benötigt in unserem Beispiel nachfolgende Daten:
“access_key_id”: “90244453063946c0bc821ad4e59b7b98”,
“secret_access_key”: “34d879f391f1f4c78a3e96cf449b7f75b0d2f572d4d8ae21”
“bucket”: “mein-erster-cos-bucket”
“endpoint”: “s3.eu-de.cloud-object-storage.appdomain.cloud”
Quelle: IBMNachdem wir die COS Konfiguration erstellt haben, können wir Dateien aus dem IFS in unseren Bucket laden. Normalerweise wird die Übertragung im Hintergrund ausgeführt, aber für den ersten Test wählen wir “Submit to batch” *NO aus.
Quelle: IBMWenn alles richtig konfiguriert wird, sollte in der Statuszeile ein entsprechender Hinweis erscheinen. Letztendlich können wir in unserem Bucket nachschauen, ob die Datei wirklich dort angekommen ist.
Quelle: IBMDer Befehl zum Herunterladen von Dateien aus COS ist CPYFRMCLD, der genauso funktionieren sollte, wenn man der Dateiname exakt (case-sensitiv) dem im Bucket entspricht.
Man beachte, dass COS Buckets “flacher Speicher” ohne Hierachie im File System sind. Durch die Verwendung von “/” im Namen, können wir aber sowas wie eine Verzeichnisstruktur vorgaukeln.
Soweit so gut. In Bezug auf Sicherheit müsste man mehr tun, so z.B. die Verwendung von HTTPS statt HTTP und die Einschränkung von Rechten. Das übersteigt aber dem Anliegen dieses Artikels und wird später in einem weiteren behandelt.
Der Autor Ralf Reetmeyer schreibt regelmäßig für MIDRANGE Deep Dive und den TechKnowLetter.
Ralf Reetmeyer ist Geschäftsführer der UBR Reetmeyer GmbH.
