Início
» Como fazer
»
Configure o armazenamento de blobs S3 para o ownCloud Infinite Scale.
Configure o armazenamento de blobs S3 para o ownCloud Infinite Scale.
Para armazenar o conteúdo dos arquivos do usuário no S3 com o ownCloud Infinite Scale (oCIS), configure o serviço Storage-Users para usar o s3ngdriver, aponte-o para um bucket pré-criado e mantenha o diretório de metadados do serviço em um armazenamento POSIX persistente. O S3 armazena os blobs de arquivos; ele não substitui todos os caminhos de dados locais do oCIS.
A configuração abaixo segue a documentação do ownCloud Infinite Scale 8.2. Compare os nomes das variáveis e os exemplos de implantação com a documentação da sua versão instalada antes de fazer alterações em um sistema de produção.
Verifique o layout de armazenamento antes de configurar.
Neste contexto, um blob é o conteúdo do arquivo armazenado e os metadados são as informações que o oCIS usa para organizar e encontrar arquivos. Com o S3NG, os blobs são armazenados no armazenamento de objetos compatível com S3, enquanto os metadados permanecem em um sistema de arquivos POSIX. Mantenha esse sistema de arquivos montado permanentemente e incluído nos backups. O driver de armazenamento do sistema deve permanecer o mesmo ocis.
Utilize esta breve lista de verificação pré-voo:
Escolha um provedor S3 e confirme seu endpoint, região, nome do bucket, operações de API S3 suportadas e limites de requisições multipart.
Crie o bucket antes de iniciar o oCIS. A configuração documentada do S3NG pressupõe um bucket existente.
Crie uma identidade de acesso dedicada para oCIS e armazene sua chave e segredo no gerenciador de segredos da sua implementação ou nas configurações do ambiente protegido.
Escolha um caminho de metadados local persistente e confirme se o processo oCIS pode lê-lo e gravá-lo.
Para uma instalação existente, planeje uma migração suportada antes de alterar o driver de armazenamento. Alterar uma configuração de backend não é uma cópia ou migração de dados de arquivos existentes.
As notas de configuração do armazenamento ownCloud descrevem quais informações permanecem fora do bucket S3. É por isso que restaurar apenas o bucket não constitui um plano de recuperação completo.
Exemplo das três configurações principais de armazenamento: S3NG para blobs de usuário, uma raiz de metadados POSIX persistente e o driver de sistema oCIS.
Crie o bucket e conceda o acesso necessário.
Configure o bucket no console do provedor ou nas ferramentas de infraestrutura e, em seguida, conceda à identidade do serviço oCIS apenas o acesso necessário para o bucket. A página do ownCloud S3 documenta uma política básica para uma API S3 no estilo da AWS. Substitua `<bucket>` bucket-namepelo nome do seu bucket e adapte a sintaxe da política ao seu provedor, caso ele seja compatível com S3 em vez de Amazon S3.
O ARN de nível de bucket e o ARN de nível de objeto são diferentes: o primeiro permite listar o bucket; o segundo aplica ações aos objetos dentro dele. Siga os requisitos da política de bucket do ownCloud S3 e a documentação de política atual do seu provedor. Não cole credenciais em um arquivo de política, repositório de origem ou captura de tela.
O exemplo separa a permissão de listagem do bucket das permissões de objeto e de upload multipart; substitua o ARN do bucket de espaço reservado.
Defina as variáveis S3NG de usuários de armazenamento.
Para um ambiente de serviço ou um arquivo Compose que aceite variáveis de ambiente oCIS padrão, defina os seguintes valores. Esses valores de exemplo são apenas marcadores; use o endpoint e a região atribuídos pelo seu provedor.
Monte /var/lib/ocis/storage/users(ou a raiz selecionada) em um armazenamento POSIX durável. Não aponte este caminho de metadados para o bucket S3. Insira a chave de acesso e o segredo de forma segura; as referências de variáveis acima pressupõem que sua implantação forneça esses valores secretos. O endpoint deve ser acessível a partir do serviço oCIS, e o nome do bucket, a região e as credenciais devem se referir à mesma conta de provedor e ao mesmo bucket.
Se você usar ocis_fullo exemplo modular do Compose do ownCloud, a sobreposição opcional do S3 utiliza uma S3NGconfiguração específica do exemplo e um s3ng.ymlarquivo de configuração separado. Siga esse exemplo como um padrão de implantação completo, em vez de misturá-lo indiscriminadamente com outro arquivo Compose. Consulte o exemplo oficial de implantação do Compose do oCIS e a referência do ambiente Storage-Users .
Insira o endpoint, a região e o bucket do seu provedor; mantenha as chaves de acesso e secretas fora da configuração confirmada.
Defina o tamanho dos uploads multipartes para os arquivos que você espera.
Arquivos grandes são carregados em partes separadas. O Amazon S3 documenta um tamanho máximo de objeto de 5 TiB e um limite de 10.000 partes; o tamanho da parte deve estar entre 5 MiB e 5 GiB. O tamanho de parte padrão documentado pelo S3NG é de 16 MiB. Com esse padrão, o limite de contagem de partes pode se tornar o teto prático antes do tamanho máximo de objeto do provedor. A página 8.2 do ownCloud estima o teto padrão em 160 GiB; use o tamanho de parte configurado e as regras do seu provedor para calcular um máximo seguro e deixe uma margem de segurança.
O único parâmetro multipart que o ownCloud documenta como configurável aqui é o `part_size` STORAGE_USERS_S3NG_PUT_OBJECT_PART_SIZE. Aumente o tamanho da parte se o tamanho de arquivo suportado exigir mais de 10.000 partes. O valor é um uint64inteiro sem sinal (um `int`), portanto, configure-o como o número de bytes, não como uma string com "MiB" anexado. Mantenha-o dentro do intervalo documentado de 5 MiB a 5 GiB e confirme se o seu provedor S3 suporta o valor escolhido. Para um objeto de 5 TiB dividido em 10.000 partes, a parte média precisaria ter 500 MiB.
Reserve também armazenamento temporário no host ou contêiner do oCIS: o ownCloud observa que precisa de pelo menos tanta capacidade temporária quanto o maior arquivo esperado para armazenar em buffer os dados recebidos. Um bucket e credenciais válidos não impedirão falhas causadas por um limite de partição insuficiente ou por um disco temporário cheio. Consulte os limites de upload do S3 do ownCloud e a referência de tipo de variável de ambiente .
Aplicar, verificar e proteger os dados
Após salvar a configuração, reinicie ou reimplemente o oCIS seguindo o procedimento da sua instalação. Verifique os logs de serviço em busca de erros de configuração, endpoint, permissão ou conexão. Em seguida, execute a verificação do blobstore no mesmo ambiente de execução configurado para o oCIS.
ocis storage-users blobstore check
Este comando de manutenção utiliza o blobstore configurado e realiza um processo de upload, download e exclusão com uma carga útil de teste aleatória. Trata-se de uma verificação de armazenamento específica, não uma garantia de que todos os fluxos de trabalho voltados para o usuário ou uploads muito grandes serão bem-sucedidos. A documentação de referência do comando blobstore descreve suas opções, incluindo um tamanho de carga útil de teste configurável.
Execute este comando com a mesma configuração do oCIS para verificar o blobstore configurado; a imagem não mostra um resultado de teste.
Por fim, carregue um pequeno arquivo de teste através do cliente ou da interface web e confirme se ele aparece e abre. Para implantações com arquivos grandes, teste também com um tamanho de arquivo representativo antes de confiar na configuração. Uma transferência bem-sucedida de um pequeno arquivo não valida a capacidade de transferência multipart ou o espaço em disco temporário disponível.
Faça backup dos objetos S3 e dos metadados POSIX, da configuração e de outros dados oCIS necessários como um conjunto coordenado. As diretrizes de backup do ownCloud recomendam interromper a instância para realizar o backup e lidar com os blobs S3 armazenados externamente separadamente. Mantenha cópias recuperáveis de ambas as camadas de armazenamento e teste um procedimento de restauração antes de considerar a implantação como protegida: Considerações sobre backup do ownCloud .
Lista de verificação de validação rápida
STORAGE_USERS_DRIVERé s3ng; o armazenamento do sistema permanece ocis.
A raiz de metadados é um armazenamento POSIX persistente e o bucket S3 já existe.
O endpoint, a região, o bucket, as credenciais e a política correspondem à mesma conta de provedor.
O tamanho de várias partes, a capacidade para 10.000 partes e o armazenamento temporário abrangem o maior arquivo planejado.
A verificação do blobstore foi bem-sucedida, um upload real do cliente é aberto corretamente e tanto os metadados quanto o conteúdo do bucket estão incluídos nos planos de backup e restauração.