Archiviazione

Nota

Rilevante solo per utenti on-premise.

In qualità di cliente SaaS di Zammad, non hai accesso a queste impostazioni. Le gestiamo noi per garantire la stabilità del servizio.

Qui puoi definire dove Zammad memorizza gli allegati per i ticket e la knowledge base. Per impostazione predefinita, Zammad scrive nel Database - puoi passare a Filesystem o Simple Storage (S3) in qualsiasi momento. In questo caso, dai un’occhiata alle seguenti istruzioni.

Se hai un’istanza Zammad molto attiva, ti incoraggiamo vivamente a utilizzare l”archiviazione su filesystem invece del database. Questo migliora le prestazioni del sistema (riduce il carico e le dimensioni del database).

Database

Questo è il metodo di archiviazione predefinito. Gli allegati vengono memorizzati direttamente nel database. Se la tua istanza Zammad cresce, raccomandiamo uno degli altri metodi per mantenere le prestazioni.

Filesystem

Questo metodo di archiviazione è raccomandato per tutte le istanze Zammad, specialmente per quelle con un carico maggiore. Se scegli il filesystem, i tuoi file verranno scritti in /opt/zammad/storage/.

Lo spostamento degli allegati dal Database al Filesystem può essere eseguito durante l’uso in produzione. Tuttavia, dovresti considerare le condizioni del tuo framework (ad es. larghezza di banda, carico del sistema in produzione) per definire il momento giusto.

Nota

Hai notato aggiornamenti lenti di Zammad?

Durante l’aggiornamento di Zammad, viene imposto un ricorsivo «cambio proprietario» (chown) per questa directory. Per le istanze con molti file, questo può richiedere tempo. Per mitigare ciò, puoi spostare i tuoi file e creare un symlink in /opt/zammad/storage/ alla nuova directory. Naturalmente, devi assicurarti che i permessi siano sempre corretti.

Archiviazione Semplice (S3)

Per utilizzare l’Archiviazione Semplice (S3), devi fornire alcune impostazioni, a cui non è possibile accedere dall’interfaccia utente (vedi istruzioni di seguito).

Il prerequisito è avere accesso a uno storage compatibile con S3 e disporre di tutti i parametri necessari (che dipendono dal tuo provider di storage; in caso di dubbio, chiedi aiuto lì).

Passaggi per configurare S3:

  1. Copia config/zammad/storage.yml.dist in config/zammad/storage.yml

  2. Modifica il file copiato in uno dei seguenti modi:

  • Fornisci la tua configurazione S3 con un attributo per riga come nell’area superiore del file

  • Oppure fornisci la tua configurazione S3 come URL (che puoi trovare alla fine del file). Nota: puoi anche fornire questo URL come variabile d’ambiente (vedi documentazione di sistema) senza utilizzare questo file yml.

  • Raccomandiamo l’eliminazione dello stile di configurazione non utilizzato per evitare incongruenze.

  1. Riavvia Zammad in modo che il file di configurazione / la variabile d’ambiente vengano caricati

  2. Imposta il «Metodo di Archiviazione» in Zammad su Archiviazione Semplice (S3) in Impostazioni > Sistema > Archiviazione e fai clic su «Invia». Dopodiché, Zammad controllerà la tua configurazione e la connessione al servizio e genererà un messaggio di errore se qualcosa non va.

Una configurazione di archiviazione molto semplice potrebbe essere la seguente:

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'

Suggerimento

Se utilizzi un provider diverso da AWS (ad es. Backblaze) e osservi problemi, prova ad aggiungere i parametri request_checksum_calculation e response_checksum_validation come puoi vedere nell’esempio seguente:

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

Suggerimento

Prima di impostare il metodo di archiviazione su Archiviazione Semplice (S3) (passaggio 4), assicurati di avere una configurazione funzionante.

Puoi verificarlo eseguendo rails r 'Rails.logger = Logger.new(STDOUT); pp Store::Provider::S3.ping?' nella tua directory Zammad. Se tutto è a posto, dovresti vedere true, altrimenti dovresti vedere false e un semplice messaggio di errore.

Se hai installato Zammad tramite un gestore di pacchetti (piuttosto che da sorgente), sostituisci rails r con zammad run rails r sopra. Per saperne di più, vedi Amministrazione tramite Console.