Informações

Como armazenar os Anexos do Otobo no S3


O Amazon Simple Storage Service (Amazon S3) é um serviço da AWS para armazenamento de dados com escalabilidade e no formato pague apenas pelo que usar, não é necessário alocar um espaço e deixar ficar com área ociosa.

O custo é relativamente baixo e existem outras opção que implementam o mesmo serviço dessa forma é possível usar esse mesmo conteúdo se você usar o Wasabi ou min.io como exemplos.

Vamos lá.

O OTOBO usa três formas para armazenar anexos.

StorageFS

DB ( Banco de dados, os anexos ficam no banco de dados)

FS ( File System, os anexos ficar em pastas no Sistema Operacional da Aplicação)

S3 (Amazon Simple Storage, Os anexos ficam armazenados em um serviço)

Depois falaremos sobre vantagens e desvantagens de cada uma das opções, mas basicamente a escolha do serviço impacta na gestão da aplicação, backup e performance.

Agora vamos habilitar isso no OTOBO e migrar os anexos para lá.

Configurações necessárias

Ticket::Article::Backend::MIMEBase::ArticleStorage

Você deve escolher o destino dos anexos, nesse nosso caso será:

Kernel::System::Ticket::Article::Backend::MIMEBase::ArticleStorageS3

Habilite esse configuração durante a migração ou caso queira usar mais de um formato ao mesmo tempo. Sim, você pode deixar alguns anexos no S3, outros no File System e outros no banco de dados.

Ticket::Article::Backend::MIMEBase::CheckAllStorageBackends

Agora implemente esses configurações de vamos aos passos seguintes.

Agora no Config.pm insira o trecho abaixo.

 if ( $ENV{OTOBO_SYNC_WITH_S3} ) {
     $Self->{'Storage::S3::Active'}         = 1;
     $Self->{'Storage::S3::Scheme'}         = 'https';
     $Self->{'Storage::S3::Host'}           = 'bucketname.s3.us-east-1.amazonaws.com';
     $Self->{'Storage::S3::Region'}         = 'us-east-1';
     $Self->{'Storage::S3::Bucket'}         = 'otobo-storage';
     $Self->{'Storage::S3::HomePrefix'}     = 'OTOBO';
     $Self->{'Storage::S3::AccessKey'}      = 'KEY';
     $Self->{'Storage::S3::SecretKey'}      = 'SECRET';
     $Self->{'Storage::S3::MetadataPrefix'} = 'x-amz-meta-';
     $Self->{'Storage::S3::Delimiter'}      = '/';
 }

Não se esqueça de mudar de acordo com duas informações o Host, Bucket, AccessKey e SecretKey.

Na hora de subir o compose o .env precisa estar com o parâmetro ajustado para 1

OTOBO_SYNC_WITH_S3=1

Agora é só migrar com o comando

/opt/otobo/bin/otobo.Console.pl Admin::Article::StorageSwitch --target ArticleStorageS3

Esse ainda é um recurso novo, mas vai facilitar muito a retenção e backup, além da administração.

No S3 os arquivos ficam dessa forma

Esse recurso esta disponível na versão 10.1. ainda esta no beta2, mas devemos ter a versão estável nos próximos dias 🙂

Deixe um comentário

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.