Nextcloud und Elasticsearch, das perfekte Match für Datensouveränität und -auffindbarkeit


One Drive, Google Sheets, MS Teams – viele Unternehmen nutzen die beliebten Anwendungen; vor allem, seitdem der Großteil der Mitarbeiter:innen im Home Office bzw. per Remote Work arbeitet. Viele Cloudservices sind zwar komfortabel, beunruhigen IT-Administratoren und CISOs aber aus Datensicherheits- und Datenschutzgründen. Auch der Serverstandort ist ein maßgeblicher Entscheidungspunkt: Wo werden meine Daten bzw. auch die Daten meiner Kund:innen gespeichert? Mittlerweile gibt es gute europäische Alternativen zum Sillicon Valley. Doch um das Beste herauszuholen, ist ein Zusammenspiel von Systemen notwendig, die Datenspeicherung, -sicherheit, -verwaltung, -strukturierung und -auffindbarkeit vereinen. Unser Tipp: Nextcloud und Elasticsearch, die sichere Cloud, die noch mehr kann.

First things first: Was sind Nextcloud und Elasticsearch?


Nextcloud ist eine Software, um Daten sowohl in einer Cloud als auch auf einem lokalen Server zu speichern, zu verwalten, zu teilen und gemeinsam zu bearbeiten. Der Zugriff auf diese Daten kann über Webapp sowie über Client-Applikationen erfolgen, die sich in Echtzeit synchronisieren. Somit gelangen Anwender:innen von mehreren Endpoints zum aktuellen Datenbestand. Der Vorteil dabei: die hybride Nutzung minimiert das Risiko eines Datenmissbrauchs. Besitzer:innen haben die Kontrolle über die Speicherung von Daten, vor allem in Bezug auf Kund:innen-Daten, deren Datenschutzrichtlinien oft unklar sind. Nextcloud ist in PHP entwickelt und verwaltet Daten in Form von Dateien und Datenbanken. Unterstützt werden die Datenbankmanagementsysteme SQLite-, MariaDB-, MySQL- oder PostgreSQL. Darüber hinaus bietet Nextcloud Zusatzfunktionen wie Videokonferenzen und verschiedene Office-Applikationen in 60 verschiedenen Sprachen.

Elasticsearch ist eine Suchmaschine und Analytics-Engine für Daten aller Art – von Textdaten über numerische Daten und Geodaten bis hin zu strukturierten und unstrukturierten Daten, auf Basis von Apache Lucene. Das in Java geschriebene Programm speichert Dokumente in einem NoSQL-Format. Die Kommunikation erfolgt über ein RESTful-Webinterface.

Viele Nutzer:innen produzieren viele Dateien. Wer behält dabei den Überblick?


Unternehmen, die Nextcloud nutzen, sind wahrscheinlich schon darauf gestoßen, dass viele Nutzer:innen viele Dokumente erstellen, teilen und bearbeiten. Nextcloud kann an viele externe Speicher angebunden werden, allerdings liegen alle Daten verteilt. Durch die Aufteilung des Speicherns auf lokalen Servern sowie in einer Cloud, müssen Daten organisiert und strukturiert werden, um gefunden werden zu können. In einem großen Unternehmen beginnt das potenzielle Chaos häufig bereits innerhalb einer Abteilung. Die Volltextsuche ist eine gute Möglichkeit, Dateien, Apps, Kontakte u. ä. zu durchzusuchen. Dabei generiert die Suche einen Index, damit der eingegebene Suchbegriff nicht bei jedem Suchbefehl mit jeder vorhandenen Datei abgeglichen werden muss. Dieser Index liegt in der Nextcloud-Datenbank und kann nicht grenzenlos skalieren.

Bei hohem Dateiaufkommen und auch Nutzer:innen performt die Volltextsuche oft nicht wirklich. Außerdem kann die Standardsuche nicht auf Inhalte angewandt werden. Bei einer großen Datenmenge und vielen Benutzer:innen wird ein externes Tool benötigt. Hier kommt Elasticsearch ins Spiel, indem es als externe Suchmaschine implementiert wird. Dokumente in der Nextcloud werden dann an Elastic übergeben und davon automatisch indiziert. Suchanfragen werden mittels API an Elasticsearch gestellt, das den Suchbegriff mit dem Index abgleicht und ein Ergebnis zurückspielt. Der Vorteil gegenüber der Standardsuche in Nextcloud liegt u. a. in der Skalierbarkeit von Elasticsearch: die Anwendung kann mit steigenden Anforderungen wachsen. Darüber hinaus kann ein OCR angebunden werden, das Texte in Dateien erkennen kann. So können beispielsweise auch gescannte Dokumente durchsucht werden.

How-to Nextcloud und Elasticsearch?


Elasticsearch beschaffen

Elasticsearch ist ein Bestandteil des Elastic Stacks, das eine Sammlung von offenen Tools für Daten ist. Über die Suche hinaus können Daten so angereichert, gespeichert, analysiert und visualisiert werden. Dieser ELK-Stack, bestehend aus Elasticsearch, Logstash und Kibana, wird für die Integration bei Nextcloud nicht vollständig benötigt. Eine einzige Elasticsearch-Instanz genügt.

Plugins bei Nextcloud installieren

Für die Anbindung in Nextcloud müssen einige Plugins installiert und konfiguriert werden. Sie sorgen anschließend für die Verbindung zwischen den zwei Systemen. Diese Plugis sind kostenfrei, der Support ist im Rahmen der Nextcloud-Lizenzierung inkludiert.

Indizierung starten

In Elasticsearch wird abschließend die Indizierung gestartet. Das gelingt mit Nextcloud occ. Dieser Vorgang kann abhängig von der vorhandenen Datenmenge mehrere Stunden bis mehrere Tage in Anspruch nehmen. Dieser entstandene Index sollte kontinuierlich weiter gebaut werden. Da Elasticsearch ein Suchindizierungsdienst ist, entsteht dabei ein Index mit Werten, die für die Nextcloud-Volltextsuche relevant sind. Neue Dateien erkennt Nextcloud selbst und indiziert sie, sofern sie über Nextcloud hochgeladen wurden (Client/Web/WebDAV).

Ihr

Steffen Barnau, bitbone AGSteffen Barnau
IT-Systemadministrator
T: +49 931 250993-10
M:
Connect auf Xing

Nextcloud mit Elastic könnte auch Sie glücklich machen? Wir unterstützen Sie bei von der Planung bis zur Umsetzung. Ein Klick genügt.

← zurück