Owncloud auf dem 1&1 Cloud Server

In diesem Artikel wollen wir uns anschauen, wie wir eine Owncloud Instanz auf unserem 1&1 Cloud Server installieren. Der Artikel geht von einer Serverkonfiguration entsprechend der Artikelserie „Mein 1&1 cloud server“ aus.

Vor ein paar Tagen wurde zwar die neue Owncloud Version 9.0.0 released, ich möchte jedoch zunächst den stabilen Versionszweig 8.2.x benutzen, aktuell Version 8.2.3. Dazu müssen wir das entsprechende Package Repository zu unseren Paketquellen hinzufügen.

Danach aktualisieren wir die Paketquellen und installieren owncloud.

Bei der Installation von owncloud werden noch einige zusätzliche Abhänigkeiten installiert.

Zusätzlich installieren wir noch drei der empfohlenen Pakete.

Dabei wird eine große Anzahl an Abhängigkeiten mitinstalliert.

Zunächst deaktivieren wir die Apachekonfiguration für Owncloud wieder.

Dann legen wir eine Virtualhostkonfiguration für unsere Owncloud Instanz an.

Zunächst ist hier eine Einschränkung des Zugriffs von unserem Admin-Host bzw. unseres Heimnetzwerks konfiguriert. Diese werden wir erst entfernen, wenn unsere Owncloud Instanz fertig konfiguriert und getestet ist. Details hierzu und zur Erstellung der Let’s Encrypt SSL-Zertifikate könnt Ihr in meiner Artikelserie Mein 1&1 cloud server nachlesen.

Bevor wir die Apachekonfiguration für unsere Owncloud Instanz aktivieren, haben wir vorher noch eine Paar Dinge zu erledigen.

Owncloud benötigt für Transactional File Locking den Memory Cache Redis. Da die offiziell aus den Ubuntu Repositories verfügbaren Versionen zu alt sind werden wir die erforderlichen Pakete aus Personal Package Archiven (PPA) auf Launchpad installieren. Das php5-redis Modul ist in der Version 2.2.7 aus dem PHP 5.6 PPA von Ondřej Surý verfügbar, das wir bereits zu einem früheren Zeitpunkt unseren Paketquellen hinzugefügt haben. Das folgende Kommando zeigt die verfügbaren Versionen.

Für den Memory Cache Redis benutzen wir redis-server PPA von Chris Lea. Das PPA fügen wir wie folgt zu unseren Paketquellen hinzu.

Anschließend aktualisieren wir unsere Paketquellen mit dem Kommando „apt-get update“ und installieren zum Schluss die benötigten redis Pakete.

Der Redis Server wird automatisch gestartet. Wir werfen einen Blick in das Server Log.

Das Log verrät uns, dass wir ein paar Optimierungen durchführen sollten. Zunächst passen wir die Redis Konfigurationsdatei /etc/redis/redis.conf an. Da ich momentan keine große Anzahl an Clients benötige können wir das TCP Backlog und die maximale Anzahl der Clients reduzieren. Hinter der Zeile für die Portkonfiguration fügen wir den folgenden Block ein.

Die maximale Anzahl der Clients setzen wir auf 900.

Zum aktivieren des Memory Overcommit führen wir das folgende Kommando aus und fügen wir eine Zeile zur Konfigurationsdatei /etc/sysctl.conf hinzu, um sicherzustellen, dass Memory Overcommit bei jedem Boot aktiviert wird.

Zum Deaktivieren der Transparent Huge Pages führen wir das folgende Kommando aus.

Wenn wir den Redis Server nun mit „service redis-server restart“ neu starten und ins Server Log schauen, sehen wir, dass die Warnungen verschwunden sind. Nun müssen wir noch sicherstellen, dass die Tranparent Huge Pages bei jedem Start des Servers deaktiviert werden, bevor der Redis Server startet. Hierzu legen wir im Verzeichnis /etc/init.d eine neue Datei boot.local mit dem folgenden Inhalt an.

Anschließend müssen wir die Ausführung beim Boot noch aktivieren indem wir update-rc.d ausführen, um die symbolischen Links für die verschiedenen Runlevel anlegen zu lassen.

Nun installieren wir noch einige php Module.