Mittwoch, 27. April 2016

Oracle Database Cloud Service (DBCS): Instanz einrichten

Für die Installation des SOA Cloud Services (SOACS) wird eine Datenbank für das Repository benötigt. Dieses Tutorial zeigt die Schritte zum aufsetzen einer Datenbank-Instanz mit dem DBCS.


Los geht es wieder im My Services Dashboard. Hier wird der 'Oracle Database Cloud Service' ausgewählt.


Weiter geht es via 'Open Service Console'


 Eine neue Datenbank Instanz wird erstellt per 'Create Service'


Für den SOACS wird der normale 'Oracle Database Cloud Service' benötigt.


Hier wird die aktuelle Version ausgewählt.


 Für die SOACS-Instanz im Tutorial reicht die Enterprise Edition. Für Produktionssysteme sollten aber die High- oder Extreme-Performance Varianten in betracht gezogen werden.


Hier werden Service-Grössen und Namen sowie Passwörter abgefragt bzw. vergeben. Wichtig ist, die Backup Destination einzurichten, da dies für eine SOACS Repository DB Voraussetzung ist. Dafür wird der im vorigen Teil angelegte Cloud Storage Container angegeben (Format: Storage-IdentitiyDomain/Name).


Noch eine Zusammenfassung, dann geht es los.


Nach einer kurzen Wartezeit steht die Datenbank zur Verfügung. Unten in der History wird die erstellung der DB angezeigt.
Damit steht die Datenbank für die weiteren Schritte zur Verfügung.

Freitag, 22. April 2016

Ein Minecraft Server in der Oracle Cloud

Dieses Tutorial beschreibt, wie man einen Minecraft-Server in der Oracle Cloud betreiben kann.



Los geht es im eigenen Dashboard, hier wird der 'Oracle Compute Cloud Service' ausgewählt.


In der Liste der Instanzen wird per 'Create Instance' eine neue Instanz erzeugt.


Als Image wird das Oracle Linux 6.6 gewählt, der kleinste Shape mit 1 OCPU reicht völlig aus.



Auf der zweiten Seite können die Standardeinstellungen belassen werden.



Zusätzlicher Storage wird nicht benötigt, also weiter.


Wichtig ist aber der SSH Public Key. Sofern keiner zur Hand ist, beschreibt die Oracle Cloud Dokumentation, wie man einen erzeugt. Der Inhalt der .pub-Datei wird hier eingefügt.


Hier noch eine Zusammenfassung, dann wird die Instanz via 'Create' erzeugt.


Jetzt kurz warten, bis die Instanz im Status 'Running' ist. Dann die Public IP Adresse kopieren.


Weiter geht es es in einem SSH-Client, unter Windows z.B. Putty. Für die Verbindung wird die oben kopierte Public-IP eingetragen.


Bei Connection/Data wird als Auto-login username 'opc' eingetragen.


Unter Connection/SSH/Auth wird dann unten der private key ausgewählt. Danach kann die Session mit 'Open' geöffnet werden.


Den Minecraft-Server bekommt man direkt beim Hersteller per
wget https://s3.amazonaws.com/Minecraft.Download/versions/1.9.2/minecraft_server.1.9.2.jar
Dieser wird dann gestartet per
java -jar minecraft_server.1.9.2.jar
Der Server terminiert aber wieder, weil zunächst die EULA akzeptiert werden muss.


In der Datei eula.txt muss hierzu der Inhalt auf eula=true geändert werden.


Da der Minecraft-Server eine interaktive Console hat, sollte er auch wieder ansprechbar sein, wenn die SSH-Verbindung zwischendurch geschlossen wurde. Dafür nutzen wir screen, welches praktischerweise schon installiert ist, via
screen -S minecraft


Jetzt kann der Minecraft-Server erneut gestartet werden. SSH-seiting sind wir damit fertig, Der virtuelle Bildschirm von Screen kann einfach geschlossen oder auch sauber via CRTL-A D beendet werden. Ein reconnect auf den Minecraft-Server bekommt man per
screen -d -r minecraft.


Weiter geht es denn wieder bei den Oracle Cloud Services. Der Minecraft Server läuft zwar, aber die Firewall blockiert noch die Zugriffe darauf und muß entsprechend konfiguriert werden.


Dazu geht es weiter unter 'Network'. Standardmässig ist hier nur der SSH-Port offen.


Unter 'Security Applications' lässt sich eine neue Anwendung erstellen über 'Create Security Application'


Der einzutragende Port für den Minecraft Server ist 25565.


Für die Anwendung muss jetzt eine entsprechene Regel hinterlegt werden. Das geht unter 'Security Rules' per 'Create Security Rule'.


Hier wird als 'Security Application' Minecraft und als Source Security List 'public internet' ausgewählt.

Die neue Regel wird dann zusammen mit der bestehenden angezeigt.


In Minecraft wird nun ein neuer Server mit der Public-IP Adresse der Instanz konfiguriert.


Der Oracle Cloud Server wird dann in der Minecraft Serverliste angezeigt (mit sehr gutem Ping ;-), die Partie kann gestartet werden.


Viel Spaß mit der Oracle Cloud und Minecraft!

Donnerstag, 21. April 2016

Oracle Cloud: Storage Container verwalten per CloudBerry Explorer

Im lezten Kapitel dieses Tutorials wurde gezeigt, wie Storage Conainer in der Oracle Cloud einfach per REST-API verwaltet werden können. Da die Oracle Storage Cloud aber auch kompatibel zu den entsprechenden OpenStack API's ist, können gängige Tools mit OpenStack-Unterstützung verwendet werden. Dieses soll am Beispiel des CloudBerry Explorers demonstriert werden.


Als erstes muss ein entsprechender Account angelegt werden. Der CloudBerry Explorer kennt bereits die Oracle Cloud und bietet im File-Menü einen entprechenden Eintrag 'New Oracle Cloud Account'



In dem Dialog werden die Zugangsdaten eingegeben. Zu beachten ist hier, dass der User Name sich, genau wie beim Aufruf der REST-API, zusammensetzt aus Storage-[Identity Domain]-[Username].


Im CloudBerry Explorer werden dann die bereits vorhandenen Storage Container angezeigt, so auch der im letzten Teil angelegte dbBackupContainer. Über das 'New Container' Icon kann ein weiterer Container angelegt werden, der im weiteren für den SOACS benötigt wird (z.B. SOACScontainer).


Hier muss nur der Name vergeben werden, der Container type kann auf Standard bleiben.


Jetzt sollten hier beide, der per Rest API angelegte dbBackupContainer und der eben angelegte SOACScontainer hier aufgeführt werden.
Damit sind die benötigten Storage Container vorhanden, in den nächsten Kapiteln werden Cloud Services aufgesetzt die mit diesen Containern arbeiten

--> Nächster Schritt: Datenbank Instanz im Database Cloud Service einrichten

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