Inicio
» Cómo
»
Configurar el almacenamiento de blobs S3 para ownCloud Infinite Scale
Configurar el almacenamiento de blobs S3 para ownCloud Infinite Scale
Para almacenar el contenido de los archivos de usuario en S3 con ownCloud Infinite Scale (oCIS), configure el servicio Storage-Users para que utilice el s3ngcontrolador, apúntelo a un bucket creado previamente y mantenga el directorio de metadatos del servicio en un almacenamiento POSIX persistente. S3 almacena los blobs de archivos; no reemplaza todas las rutas de datos locales de oCIS.
La configuración que se muestra a continuación sigue la documentación de ownCloud Infinite Scale 8.2. Compare los nombres de las variables y los ejemplos de implementación con la documentación de la versión instalada antes de modificar un sistema de producción.
Verifique la distribución del almacenamiento antes de configurarlo.
En este contexto, un blob es el contenido del archivo almacenado y los metadatos son la información que oCIS utiliza para organizar y encontrar archivos. Con S3NG, los blobs van al almacén de objetos compatible con S3, mientras que los metadatos permanecen en un sistema de archivos POSIX. Mantenga ese sistema de archivos montado de forma persistente e inclúyalo en las copias de seguridad. El controlador de almacenamiento del sistema debe permanecer ocis.
Utilice esta breve lista de verificación previa al vuelo:
Seleccione un proveedor de S3 y confirme su punto final, región, nombre del bucket, operaciones de API de S3 compatibles y límites de multipartes.
Cree el bucket antes de iniciar oCIS. La configuración documentada de S3NG requiere que exista un bucket.
Cree una identidad de acceso dedicada para oCIS y almacene su clave y secreto en el administrador de secretos de su implementación o en la configuración del entorno protegido.
Seleccione una ruta de metadatos local persistente y confirme que el proceso oCIS puede leerla y escribir en ella.
Para una instalación existente, planifique una migración compatible antes de cambiar el controlador de almacenamiento. Cambiar una configuración del backend no implica copiar ni migrar los datos de los archivos existentes.
Ejemplo de las tres configuraciones de almacenamiento principales: S3NG para blobs de usuario, una raíz de metadatos POSIX persistente y el controlador del sistema oCIS.
Crea el bucket y otorga el acceso requerido.
Configure el bucket en la consola o las herramientas de infraestructura del proveedor y, a continuación, otorgue a la identidad del servicio oCIS únicamente el acceso necesario para su bucket. La página de ownCloud S3 documenta una política básica para una API S3 de estilo AWS. Reemplace bucket-namecon su bucket y adapte la sintaxis de la política a su proveedor si este es compatible con S3 en lugar de Amazon S3.
El ARN a nivel de bucket y el ARN a nivel de objeto son diferentes: el primero permite listar el bucket; el segundo aplica acciones a los objetos que contiene. Siga los requisitos de la política de buckets de ownCloud S3 y la documentación de políticas vigente de su proveedor. No pegue credenciales en un archivo de políticas, repositorio de código fuente ni captura de pantalla.
El ejemplo separa el permiso de listado de buckets de los permisos de objeto y carga multiparte; reemplace el ARN del bucket de marcador de posición.
Establezca las variables Storage-Users S3NG
Para un entorno de servicio o un archivo Compose que acepte variables de entorno oCIS estándar, configure los siguientes valores. Estos valores de ejemplo son marcadores de posición; utilice el punto final y la región asignados por su proveedor.
Monte /var/lib/ocis/storage/users(o seleccione la raíz) en un almacenamiento POSIX duradero. No dirija esta ruta de metadatos al bucket de S3. Inyecte la clave de acceso y el secreto de forma segura; las referencias a variables anteriores presuponen que su implementación proporciona esos valores secretos. El punto final debe ser accesible desde el servicio oCIS, y el nombre del bucket, la región y las credenciales deben hacer referencia a la misma cuenta de proveedor y bucket.
Si utiliza ocis_fullel ejemplo modular de Compose de ownCloud, su superposición opcional de S3 utiliza una S3NGconfiguración específica del ejemplo y un s3ng.ymlarchivo de configuración independiente. Siga ese ejemplo como patrón de implementación completo en lugar de combinarlo indiscriminadamente con otro archivo de Compose. Consulte el ejemplo oficial de implementación de Compose de oCIS y la referencia del entorno Storage-Users .
Introduzca el punto final, la región y el bucket de su proveedor; mantenga las claves de acceso y secretas fuera de la configuración confirmada.
Tamaño de las cargas multipartes para los archivos que espera
Los archivos grandes se cargan en fragmentos multiparte. Amazon S3 documenta un tamaño máximo de objeto de 5 TiB y un límite de 10 000 partes; el tamaño de cada parte debe estar entre 5 MiB y 5 GiB. El tamaño de parte predeterminado documentado por S3NG es de 16 MiB. Con este valor predeterminado, el límite de partes puede convertirse en el tope práctico antes del tamaño máximo de objeto del proveedor. La página 8.2 de ownCloud estima que el tope predeterminado es de 160 GiB; utilice el tamaño de parte configurado y las reglas de su proveedor para calcular un máximo seguro y deje un margen.
El único parámetro multipart que ownCloud documenta como configurable aquí es STORAGE_USERS_S3NG_PUT_OBJECT_PART_SIZE. Aumente el tamaño de la parte si el tamaño de archivo admitido requiere más de 10 000 partes. El valor es un uint64(un entero sin signo), así que configúrelo como el número de bytes, no como una cadena con “MiB” añadido. Manténgalo dentro del rango documentado de 5 MiB–5 GiB y confirme que su proveedor de S3 admite el valor elegido. Para un objeto de 5 TiB en 10 000 partes, la parte promedio debería ser de 500 MiB.
También reserve almacenamiento temporal en el host o contenedor de oCIS: ownCloud indica que necesita al menos tanta capacidad temporal como el archivo más grande previsto para almacenar en búfer los datos entrantes. Un bucket y credenciales válidos no evitarán fallos causados por un límite de partes insuficiente o un disco temporal lleno. Consulte los límites de carga de S3 de ownCloud y su referencia de tipos de variables de entorno .
Aplicar, verificar y proteger los datos
Tras guardar la configuración, reinicie o vuelva a implementar oCIS siguiendo el procedimiento correspondiente a su instalación. Compruebe los registros del servicio en busca de errores de configuración, de punto final, de permisos o de conexión. A continuación, ejecute la comprobación del almacén de blobs en el mismo entorno de ejecución configurado que oCIS.
ocis storage-users blobstore check
Este comando de mantenimiento utiliza el blobstore configurado y realiza un ciclo completo de carga, descarga y eliminación con una carga útil de prueba aleatoria. Se trata de una comprobación de almacenamiento específica, no de una garantía de que todos los flujos de trabajo orientados al usuario o las cargas de gran tamaño se realicen correctamente. La documentación de referencia del comando blobstore detalla sus opciones, incluido el tamaño configurable de la carga útil de prueba.
Ejecute este comando con la misma configuración de oCIS para comprobar el blobstore configurado; la imagen no muestra ningún resultado de la prueba.
Finalmente, cargue un archivo de prueba pequeño a través del cliente o la interfaz web y confirme que aparece y se abre. Para implementaciones con archivos grandes, pruebe también con un tamaño de archivo representativo antes de confiar en la configuración. Una transferencia exitosa de un archivo pequeño no valida la capacidad de la transferencia multiparte ni el espacio disponible en el disco temporal.
Realice copias de seguridad de los objetos S3 y los metadatos POSIX, la configuración y otros datos oCIS necesarios como un conjunto coordinado. La guía de copias de seguridad de ownCloud indica que se debe detener la instancia para realizar una copia de seguridad y gestionar los blobs S3 almacenados externamente por separado. Conserve copias recuperables de ambas capas de almacenamiento y pruebe un procedimiento de restauración antes de considerar la implementación como protegida: consideraciones sobre copias de seguridad de ownCloud .
Lista de verificación de validación rápida
STORAGE_USERS_DRIVERes s3ng; el almacenamiento del sistema permanece ocis.
La raíz de los metadatos es un almacenamiento POSIX persistente, y el bucket S3 ya existe.
El punto final, la región, el bucket, las credenciales y la política coinciden con la misma cuenta de proveedor.
El tamaño de las partes, la capacidad de 10.000 partes y el almacenamiento temporal cubren el archivo más grande previsto.
La comprobación del almacén de blobs se realiza correctamente, la carga de un cliente real se abre sin problemas y tanto los metadatos como el contenido del bucket se incluyen en los planes de copia de seguridad y restauración.