Para un proyecto hemos instalado Ceph, un sistema de archivos
distribuidos que tiene un servicio de Almacenamiento de Objetos con un interfaz
compatible con el Api de Amazon S3.
Amazon utiliza dos formas para acceder los buckets en S3, si por
ejemplo, se tiene el bucket demoprueba, este puede ser accedido
como:
- https://demoprueba.s3.amazonaws.com
- https://s3.amazonaws.com/demoprueba
La primera es la forma preferida de Amazon y de las herramientas que se
han desarrollado alrededor de este servicio.
En el caso nuestro al utilizar Ceph, tenemos las dos opciones, pero la opción
de usar subdominios por bucket nos brinda un problema ya que no contamos con
certificados para cada subdominio o certicados wildcard.
Por lo que hemos optado a utilizar la segunda opción,
https://objetos.ejemplo.com/demoprueba.
Al ultizar esta opción nos da un problemas porque existen varias
herramientas donde no utilizan esta opción como defecto y se debe de instanciar
de otra forma los clientes o se deben de hacer cambios en el código.
Tuvimos un problema para utilizar S3Cmd en nuestro servicio, los desarrolladores
no dan la opción de cambiar el estilo de acceso a S3 en su archivo de configuración
por lo que se debe de modificar una línea para que sea compatible con nuestro
servicio.
Este es el cambio que se hizo a la clase S3/S3.py para que sea
compatible con Ceph.
214c214 < if resource['bucket'] and not check_bucket_name_dns_conformity(resource['bucket']): --- > if resource['bucket'] : 217a218,219 > >
No comments:
Post a Comment