Amazon EC2 – Schritt für Schritt zum RStudio Server in der Cloud

Langsam stoße ich mit den Code-Optimierungen in R für mein Simulationsmodell an die Grenzen der lokalen Hardware. Um halbwegs verlässliche Werte zu erzeugen, sind Rechenzeiten von etwa 15 Stunden zu erwarten. Es wird also Zeit sich mit den Möglichkeiten des Cloud-Computing zu beschäftigen. Zu Beginn habe ich mich so wie hier beschrieben für die Amazon Web Services registiert.

Die nächste Herausforderung ist dann, eine eigene Instanz zu starten und den RStudio Server zu starten. Folgende Schritte sind notwendig:

Schritt 1: Starten einer Instanz aus dem EC2 Console Dashboard

Zuerst muss man über den Button „Launch Instance“ den Assistenten starten.

Danach kann man ein Basis-Image nutzen oder vorkonfigurierte Images nutzen. Ich habe mich für Ubuntu Server 11.10 entschieden, 64 bit und im freien Basiskontingent verfügbar. Eine gute Basis, um hinterher auch größere Konfigurationen nutzen zu können. Danach sind im Wesentlichen die Standardeinstellungen hilfreich.

Schritt 2: Auswahl des geeigneten Amazon Machine Image (AMI)

An dieser Stelle kann man die Art der Instanz wählen. Zum Testen wähle ich hier „T1 Micro“ um im kostenfreien Basiskontingent zu bleiben.

Auf der nachfolgenden Seite kann man der Instanz dann noch einen sprechenden Namen geben. Ist sicherlich hilfreich bei der Verwaltung vieler Instanzen:

Danach kann man für die sichere Verbindung über ssh ein Keyfile erstellen bzw. nutzen. Das Keyfile sollte lokal auf dem Rechner abgelegt werden (dazu später mehr).

Bei den Firewall-Settings muss der Port 22 für ssh geöffnet werden und für RStudio der Port 8787.

An diese Einstellungen schließt sich dann noch ein Überblick über die gewählten Einstellungen an:

Nachdem die Instanz erfolgreich gestartet wurde, kann man auf der Übersichtsseite der Management Console die externe URL der Instanz ablesen (hier: ec2-54-242-61-126.compute-1.amazonaws.com):

Schritt 2: Einrichten der Instanz über ssh

Um mit der zuvor eingerichteten Schlüsseldatei arbeiten zu können, muss diese Datei sicher auf dem lokalen Laufwerk liegen. Alle folgenden Befehle müssen nacheinander im Terminal ausgeführt werden (und natürlich hinsichtlich der Pfade, URLs und Dateibezeichnungen auf die jeweiligen Gegebenheiten angepasst werden).

Schlüsseldatei *.pem auf dem Laufwerk über chmod 400 vor unberechtigten Zugriffen und bearbeiten schützen:

chmod 400 /PfadZurDatei/DeinKeyFile.pem

Verbindung herstellen:

ssh -i /PfadZurDatei/DeinKeyFile.pem ubuntu@ec2-54-242-61-126.compute-1.amazonaws.com

Paketlisten neu einlesen:

sudo apt-get update

R Basispakete installieren:

sudo apt-get install r-base #R Basispakete installieren

Notwendige Pakete für RStudio einlesen (siehe auch hier):

sudo apt-get install gdebi-core 
sudo apt-get install libapparmor1 # Required only for Ubuntu, not Debian 
sudo wget http://download2.rstudio.org/rstudio-server-0.97.237-amd64.deb 
sudo gdebi rstudio-server-0.97.237-amd64.deb 

User für R-Studio einrichten inklusive Home-Directory:

sudo useradd -m r-user 

Passwort zurücksetzen:

sudo passwd --d r-user 

Initialpasswort setzen:

sudo passwd r-user 

Fertig:

logout

Bei Aufruf der URL http://ec2-54-242-61-126.compute-1.amazonaws.com:8787 zeigt sich dann das folgende Bild:

Nach Eingabe von Benutzername und Passwort startet RStudio und der Spaß kann losgehen.

Eine besonders praktische Eigenschaft von RStudio ist übrigens der unscheinbare Upload-Button auf der rechten unteren Seite: Auf diese Weise kann man schnell und unkompliziert Daten auf den Server hochladen und unmittelbar mit den Analysen beginnen.

Viel Spaß damit!

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert