Speicher

Bemerkung

Nur relevant für on-premise Nutzer.

Als SaaS-Kunde von Zammad haben Sie keinen Zugriff auf diese Einstellungen. Wir übernehmen diese für Sie, um die Stabilität des Dienstes zu gewährleisten.

Hier können Sie festlegen, wo Zammad Anhänge für Tickets und die Knowledge Base speichert. Standardmäßig speichert Zammad diese in der Datenbank - Sie können jederzeit auf Dateisystem oder Simple Storage (S3) umschalten. In diesem Fall schauen Sie sich bitte die folgende Anleitung an.

Wenn Sie eine ausgelastete Zammad-Instanz haben, empfehlen wir Ihnen dringend, Dateisystem als Speichermethode anstelle von Datenbank zu verwenden. Dies verbessert die Systemleistung (verringert die Datenbanklast und -größe).

Datenbank

Dies ist die Standard-Speichermethode. Die Anhänge werden direkt in der Datenbank gespeichert. Wenn Ihre Zammad-Instanz wächst, empfehlen wir eine der anderen Methoden, um keine Einschränkungen bzgl. Leistung zu bekommen.

Dateisystem

Diese Speichermethode wird für alle Zammad-Instanzen empfohlen, insbesondere für solche mit einer höheren Last. Wenn Sie Dateisystem wählen, werden Ihre Dateien nach /opt/zammad/storage/ geschrieben.

Das Verschieben von Anhängen aus der Datenbank in das Dateisystem kann während des Betriebs von Zammad durchgeführt werden. Sie sollten jedoch Ihre Rahmenbedingungen (z.B. Bandbreite, Systemlast im Produktivbetrieb) berücksichtigen, um den richtigen Zeitpunkt zu bestimmen.

Bemerkung

Haben Sie langsame Aktualisierungen von Zammad festgestellt?

Während Zammad aktualisiert wird, wird das ganze Verzeichnis rekursiv per „change owner“ (chown) aktualisiert. Für Instanzen mit vielen Dateien kann dies sehr zeitaufwendig sein. Um das zu vermeiden, können Sie Ihre Dateien verschieben und eine symbolische Verlinkung (Symlink) in /opt/zammad/storage/ auf das neue Verzeichnis erstellen. Natürlich müssen Sie dann dafür sorgen, dass die Berechtigungen immer korrekt sind.

Simple Storage (S3)

Um Simple Storage (S3) zu nutzen, müssen Sie einige Einstellungen vornehmen, die nicht über die Benutzeroberfläche zugänglich sind (siehe Anleitung unten).

Voraussetzung ist, dass Sie Zugang zu einem S3-kompatiblen Speicher haben und alle notwendigen Parameter vorliegen (das hängt von Ihrem Speicheranbieter ab; im Zweifelsfall fragen Sie bitte dort nach).

Schritte zur Konfiguration von S3:

  1. Kopieren Sie config/zammad/storage.yml.dist nach config/zammad/storage.yml

  2. Bearbeiten Sie die kopierte Datei auf eine der folgenden Arten:

  • Entweder Sie erstellen Ihre S3-Konfiguration mit einem Attribut pro Zeile wie im oberen Bereich der Datei

  • Oder Sie geben Ihre S3-Konfiguration als URL an (die Sie am Ende der Datei finden). Hinweis: Sie können diese URL auch als Umgebungsvariable angeben (siehe System Documentation) , ohne diese yml-Datei zu verwenden.

  • Wir empfehlen die Löschung der nicht verwendeten Konfiguration, um Inkonsistenzen zu vermeiden.

  1. Zammad neu starten, damit die Konfigurationsdatei / Umgebungsvariable geladen wird

  2. Setzen Sie die „Speichermethode“ in Zammad auf Simple Storage (S3) in Einstellungen > System > Speicher und klicken Sie auf „Übermitteln“. Danach überprüft Zammad Ihre Konfiguration und die Verbindung zum Dienst und gibt eine Fehlermeldung aus, wenn etwas nicht stimmt.

Eine sehr einfache Speicherkonfiguration könnte wie folgt aussehen:

s3:
   access_key_id: 'xxxxxxxx'
   secret_access_key: 'yyyyyyy'
   region: 's3-us-west-2'
   endpoint: 'https://zammad.s3.us-west-2.amazonaws.com'
   bucket: 'zammad'

Hinweis

Wenn Sie einen anderen Anbieter als AWS (z.B. Backblaze) verwenden und Probleme beobachten, versuchen Sie, die Parameter request_checksum_calculation und response_checksum_validation hinzuzufügen, wie im folgenden Beispiel zu sehen:

s3:
   access_key_id: 'xxxxxxxx'
   secret_access_key: 'yyyyyyy'
   region: 'us-west-004'
   endpoint: 's3.us-west-004.backblazeb2.com'
   bucket: 'zammad'
   request_checksum_calculation: when_required
   response_checksum_validation: when_required

Tipp

Bevor Sie die Speichermethode auf Simple Storage (S3) einstellen (Schritt 4), stellen Sie bitte sicher, dass Sie ein funktionierendes Setup haben.

Sie können dies überprüfen, indem Sie rails r 'Rails.logger = Logger.new(STDOUT); pp Store::Provider::S3.ping?' in Ihrem Zammad Verzeichnis ausführen. Wenn alles in Ordnung ist, wird ein true ausgegeben, ansonsten wird false und eine einfache Fehlermeldung ausgegeben.

Sofern Sie Zammad über einen Paketmanager (keine Source-Installation) installiert haben, ersetzen Sie rails r mit zammad run rails r. Für weitere Information siehe Administration via Konsole.