Flynn: URL do S3 personalizado para back-end do blobstore

Criado em 9 set. 2016  ·  5Comentários  ·  Fonte: flynn/flynn

É possível configurar o URL para uma API de servidor de armazenamento de objetos S3 (compatível) que é usada como blobstore pelo flynn?

A documentação não é específica sobre isso:

flynn -a blobstore env set BACKEND_S3MAIN="backend=s3 region=us-east-1 \
bucket=flynnblobstore access_key_id=$AWS_ACCESS_KEY_ID \
secret_access_key=$AWS_SECRET_ACCESS_KEY"

flynn -a blobstore env set DEFAULT_BACKEND=s3main

O histórico é que a API do S3 se tornou mais ou menos a API REST padrão para armazenamento de objetos e é suportada pela grande maioria das soluções de armazenamento de objetos. Portanto, isso permitiria usar alternativas do S3 que suportam a API do S3.

Por exemplo, o Minio em seu modo de sistema de arquivos local pode ser usado como um adaptador entre um NAS e uma API de armazenamento de objetos, o que é muito útil para implantações de flynn no local.

componenblobstore kinenhancement

Comentários muito úteis

O Minio é compatível com aws, se houver a opção de alterar o endpoint, não há necessidade de implementar nenhum outro novo cliente. em algum lugar neste func https://github.com/flynn/flynn/blob/master/blobstore/backend/s3.go#L24

Todos 5 comentários

Atualmente não, embora possa ser adicionado. Acho que o pacote do cliente https://github.com/minio/minio-go é uma boa opção para um back-end genérico compatível com S3.

Acabei de usar o cliente minio (pensei no Java) em um projeto meu pelo mesmo motivo: é muito leve e serve como cliente para todos os tipos de armazenamentos de objetos compatíveis com S3.

Dito isto, o servidor minio também funciona com o padrão aws s3 sdk / client, portanto, isso não é necessário para esse recurso.

Existe algum trabalho feito sobre isso? Ou você pode dar algumas dicas sobre onde começar a cavar para abrir um PR que, por exemplo, permite definir um URL personalizado do S3 por meio de variáveis ​​ENV? Eu acho que tudo o que é preciso para fazer isso funcionar em um servidor minio privado, já que o servidor é totalmente compatível com S3.

@walski Um backend "minio" ou "s3_compat" adicional deve ser adicionado ao blobstore usando o pacote do cliente minio vinculado acima. Acho que devemos continuar usando o cliente S3 oficial para conversar com o AWS S3. O layout do código do blobstore deve ser razoavelmente simples, entre em contato se tiver alguma dúvida.

O Minio é compatível com aws, se houver a opção de alterar o endpoint, não há necessidade de implementar nenhum outro novo cliente. em algum lugar neste func https://github.com/flynn/flynn/blob/master/blobstore/backend/s3.go#L24

Esta página foi útil?
0 / 5 - 0 avaliações