Dieser Beitrag wurde ursprünglich in unserer Linode Community von Mike Fischler gepostet, einem Linode Customer Support Specialist.
Sie können Linode-Objektspeicher als primären Speicher für Ihr Nextcloud Deployment verwenden. Falls Sie mit Nextcloud nicht vertraut sind: Es handelt sich um eine Open Source Productivity und Storage Management Plattform, ähnlich denen von Closed Source Services wie Google Drive, OneDrive oder Dropbox. Sie können dann die umfangreiche Anwendungsbibliothek von Nextcloud nutzen, um Gruppenordner für verschiedene Teams einzurichten, einzelnen Benutzern Bandbreitenbeschränkungen zuzuweisen und vieles mehr.
Interagieren Sie mit Linode-Objektspeicher auf diese sichere, alternative Weise, ohne sich um Zugriffskontrolllisten, Bucket-Richtlinien oder die Befehlszeile zu kümmern. Bevor wir anfangen, ist es wichtig zu beachten, dass bei der Verwendung von Objektspeicher als Primärspeicher keine Metadaten (Namen, Verzeichnisstrukturen usw.) im Bucket gespeichert werden. Die Metadaten werden nur in der Datenbank abgelegt, und der Bucket enthält nur den Dateiinhalt durch einen eindeutigen Bezeichner, so dass auf alles, was im Objektspeicher-Bucket abgelegt wird, von außerhalb von Nextcloud nicht zugegriffen werden kann.
Erstellen Sie zunächst einen Access Keys sowie einen Objektspeicher-Bucket speziell für dieses Projekt. Das ist zwar nicht erforderlich, aber wenn Sicherheitsbedenken auftreten, haben Sie die Flexibilität, Schlüssel zurückzuziehen und den Bereich zu löschen, ohne Ihre anderen Projekte zu stören. Hilfe bei diesen Schritten finden Sie hinter diesen Links:
Zudem ist ein Domain Name hilfreich, auf den Sie für dieses Nextcloud Deployment verweisen können. Unsere Nextcloud One-Click-App kann DNS Einträge automatisch konfigurieren, so dass Sie lediglich sicherstellen müssen, dass Ihre Domain auf die Linode Name Server verweist. Falls erforderlich, finden Sie unten eine Liste dieser Server. Denken Sie daran, dass es bis zu 48 Stunden dauern kann, bis Änderungen an den Name Servern umgesetzt werden.
ns1.linode.com
ns2.linode.com
ns3.linode.com
ns4.linode.com
ns5.linode.com
Öffnen Sie den Nextcloud OCA Companion Guide und folgen Sie ihm bis zum Abschnitt "Getting Started after Deployment". Wenn Sie diesen Punkt erreicht haben, versuchen Sie das Nextcloud Setup zu laden, das im Leitfaden angezeigt wird. Wenn Sie die entsprechende Seite sehen können, war die Installation erfolgreich. Aber noch ist der Einrichtungsvorgang nicht beendet, daher können Sie diese Seite vorerst schließen. Sie auszufüllen würde an diesem Punkt eine Menge Probleme verursachen, also machen Sie das nicht.
Als nächstes öffnen Sie eine SSH Sitzung mit der Linode und cd im Verzeichnis /var/www/nextcloud/config. Erstellen Sie in diesem Verzeichnis eine Datei mit dem Namen storage.config.php und fügen Sie sie in das folgende Beispiel ein. Denken Sie daran, die entsprechenden Felder auszufüllen.
<?php
$CONFIG = array(
'objectstore' => array(
'class' => '\\OC\\Files\\ObjectStore\\S3',
'arguments' => array(
'bucket' => '<BUCKET_NAME>',
'key' => '<ACCESS_KEY>',
'secret' => '<SECRET_KEY>',
'use_ssl' => true,
'hostname' => '<HOSTNAME_FOR_OBJ_REGION>',
),
),
);
Sobald dies abgeschlossen ist, können Sie diese Datei speichern, zur Nextcloud Einrichtungsseite von vorher zurückkehren und den Einrichtungsvorgang abschließen. Damit dieses Projekt funktioniert, muss die Datei storage.config.php vorhanden sein, bevor Sie das Setup abschließen.
Wenn alles korrekt funktioniert hat, sollten Sie die Seite des Nextcloud-Hubs sehen, wie in Schritt 4 des Abschnitts "Getting Started after Deployment" gezeigt. Sie haben nun einen Nextcloud-Server, der von einem Objektspeicher-Bucket von Linode unterstützt wird. Von hier aus können Sie mit der Installation von Anwendungen aus der Nextcloud-Bibliothek beginnen und das Setup an Ihre speziellen Bedürfnisse anpassen. Um Ihnen den Einstieg zu erleichtern, habe ich hier einige meiner Favoriten aufgelistet:
Treten Sie der Linode Community bei, um Fragen zu stellen. Wenn Ihr Beitrag für den Linode Blog ausgewählt wird, senden wir Ihnen ein Linode T-Shirt.
Kommentare (7)
the link to https://docs.nextcloud.com/server/latest/user_manual/files/quota.html is broken.
any soft/hard file on a single file? I didn’t found it anywhere. I use nextcloud primary on Dedicated server, I have a lot of big > 5 GB
another question, how to move my current data to Linode Object Storage? Any seamless way to do that without transferring data manually?
Thanks for pointing out that broken link – it’s been fixed.
When it comes to large files with Nextcloud and our Object Storage, I wanted to give you some links that go over the hard limits to clarify that for you:
Nextcloud – https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/big_file_upload_configuration.html
Linode Object Storage –
https://www.linode.com/docs/products/storage/object-storage/#storage-limitations
We have different tools for uploading objects into your buckets. If you’re looking for a nice command line tool, I recommend checking out either our CLI or s3cmd. For a GUI, Cyberduck works really well. I suggest checking them all out to find which one is the most ‘seamless’ for your purposes:
Object Storage Tools – https://www.linode.com/docs/products/storage/object-storage/get-started/#object-storage-tools
Some other tools that might be useful to you if you’re looking to automate your uploads:
s3fs – https://linux.die.net/man/1/s3fs
s3ql – http://www.rath.org/s3ql-docs/
Many thanks for the detailed tips – much appreciated.
hi , I followed the above article and after creating the file , i get the below error
Internal Server Error
The server encountered an internal error and was unable to complete your request.
Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
More details can be found in the server log.
What happens ?
This didn’t work for me.
When creating the file storage.config.php, the path didn’t exist. I had to create the www/nextcloud/config directory first. Then the install completely ignored it and used /mnt/ncdata for its storage anyway.
Hi Kieren – I’m sorry you’re not seeing the same results here. If you’re still having issues, I’d recommend reaching out on our Community Site for additional guidance. I will try to recreate this and let you know if I am able to figure out the reason for the discrepancy.
Hi again – It looks like our app changed since this was published and no longer works in the same way. Since we now use Nextcloud AIO with Docker, I’d recommend trying their guide for Setting up Object Storage as primary storage for Nextcloud AIO Docker Container or our guide to Configuring Nextcloud to use Linode Object Storage as an External Storage Mount instead.