Es empfiehlt sich für einen Glassfish-Server den Raspberry Pi 2 zu verwenden
Wenn der Raspberry Pi an einem aktiven Netzwerk angeschlossen ist, verbindet man sich am besten mit SSH mit dem Raspberry Pi.Anschließend deaktiviert man den X-Server des Raspberry Pi (nur für Debian Jessie).
#Konfigurationsassistent aufrufen sudo raspi-config
Anschließend öffnet sich die Raspberry Pi Konfigurationsseite. Hier wählt man Boot Options aus.
Nun kann man mit B1 den Autostart der GUI deaktivieren und auf Konsolen Login umstellen.
#Grafische Oberfläche beenden sudo systemctl disable lightdm.service #Auf Konsolenstart einstellen sudo systemctl set-default multi-user.target
Nun konfiguriert man den Raspberry Pi (Sprache, Tastaturlayout, Memory Split)
#Konfigurationsassistent aufrufen sudo raspi-configAnschließend öffnet sich die Raspberry Pi Konfigurationsseite. Nun erweitern wir mit Expand Filesystem den Speicherplatz des Betriebssystems auf die komplette SD Karte.
In den Intarnationalisatioin Options wird das Tastaturlayout, die Zeitzone und die Systemsprache eingestellt.
Zuerst die Systemsprache (Change Locale)
Für deutsch wählt man de_DE.UTF-8 UTF-8 aus dies kann man Leertaste tun und mit Enter bestätigen.
Anschließende kann man als Standard ebenfalls de_DE.UTF-8 einstellen.
Als nächstes wird die Zeitzone selektiert. Change Timezone
Für Deutsche Zeit: (Europe)
Berlin
Der nächste Schritt ist das Tastaturlayout von QWERTY (US) zu QWERTZ (DE) umzustellen Change Keyboard Layout. Nun wird automatisch das Layout anhand der gesetzten Locale eingestellt.
(OPTIONAL) Für mehr Leistung kann der Raspberry Pi Model 2. Hierzu wählt man Overclock, bestätigt die Warnung und setzt die Voreinstellung auf Pi2.
Nun geht man in die Advanced Options
(OPTIONAL) Für besseres auffinden im Netzwerk und unterscheiden einzelner Geräte, kann man den Hostnamen setzen. Hierbei ist zu beachten, dass der Hostname nur Buchstaben und Zahlen enthalten darf. In diesem Beispiel setzen wir den Hostnamen auf glassfish
Als nächstes wird der Memory Split verändert. Dieser legt fest wieviel der 1024MB Arbeitsspeicher der CPU und wieviel der GPU zugewiesen werden soll.
Da dieser Raspberry Pi nur im Konsolenbetrieb laufen wird, wird der GPU 16MB zugewiesen. Hierzu einfach den Wert 16 eingeben.
Nachdem die Konfiguration abgeschlossen ist, beendet man den Assistenten mit <Finish>
Zuletzt wird der Raspberry Pi neu gestartet. Hierzu wird Ja ausgewählt.
#Verzeichnis für den Glassfish anlegen sudo mkdir -p /opt/glassfish #Zugriffsrechte für neues Verzeichnis setzen sudo chown pi:pi /opt/glassfish -R #ins eben erstellte Verzeichnis wechseln cd /opt/glassfish
Glassfish Server herunterladen. Je nach Anwendung kann hier das Web-Profile oder die Full-Platform verwendet werden. Hierzu kopiert man einfach die jeweilige Download URL kopieren.
#Download der Full Version wget http://download.java.net/glassfish/4.1/release/glassfish-4.1.zip #glassfish entpacken / aus dem verzeichnis /opt/glassfish unzip glassfish*
Glassfish Server herunterladen. Je nach Anwendung kann hier das Web-Profile oder die Full-Platform heruntergeladen werden. Nun kann mit Hilfe von einem FTP Programm wie Filezilla die installationsdatei auf den Raspberry Pi geladen werden.
Für die Verbindung mit Filezilla nachfolgendes verwendet werden:
Server: sftp://[ip des raspberry pi] Benutzername: pi Passwort: raspberry Port: 22 #Nach einem Klick auf Verbinden muss das Zertifikat akzeptiert werden #Danach wird die Verbindung aufgebaut
Nach erfolgreicher Verbindung kann die glassfish.zip in das erzeugte Verzeichnis /opt/glassfish kopiert werden.
#glassfish entpacken / aus dem verzeichnis /opt/glassfish unzip glassfish*
#ins bin Verzeichnis von glassfish wechseln cd /opt/glassfish/glassfish4/bin #Passwort für glassfish admin setzen #admin Passwort standardmäßig leeres Passwort ./asadmin change-admin-password --user admin #Standard-Domain starten ./asadmin start-domain #remote Login aktivieren ./asadmin enable-secure-admin Enter admin user name> admin #user admin Enter admin password for user "admin"> #eben vergebenes Passwort für admin You must restart all running servers for the change in secure admin to take effect. Command enable-secure-admin executed successfully. #Standard-Domain neu starten ./asadmin stop-domain ./asadmin start-domain
Nun kann die Admin-Konsole über [ip des raspberryPi]:4848 aufgerufen werden.
sudo nano /etc/init.d/glassfish
#!/bin/bash ### BEGIN INIT INFO # Provides: glassfish # Required-Start: $local_fs $syslog $network # Required-Stop: $local_fs $syslog $network # Default-Start: 2 3 4 5 # Default-Stop: 1 # Short-Description: Glassfish ### END INIT INFO sleep 5 USER=root #für Zugriff auf die GPIO Ports muss user root verwendet werden GLASSFISH=/opt/glassfish/glassfish4 #Verzeichnis des Glassfish su -c "$GLASSFISH/glassfish/bin/asadmin $1-domain" - $USER
#Strg + O zum speichern und Strg + X zum Schließen von nano sudo chmod +x /etc/init.d/glassfish #Script bei Systemstart ausführen sudo update-rc.d glassfish defaults
Bei dem Raspberry Pi kann es zu Problemen mit dem Automatischen Deployment aus der IDE kommen. Deshalb kann man auch manuell deployen. Hierfür verwendet man Filezilla:
Server: sftp://[ip des raspberry pi] Benutzername: pi Passwort: raspberry Port: 22 #Nach einem Klick auf Verbinden muss das Zertifikat akzeptiert werden #Danach wird die Verbindung aufgebaut #Nach erfolgreicher Verbindung navigiert man zu /opt/glassfish/glassfish4/glassfish/domains/domain1/autodeployhierher kopiert man die aus der IDE erzeugte WAR-Datei. Nun sollte die Applikation unter [raspberry pi ip]:8080/[Name der WAR-Datei] erreichbar sein.