Problemas com a ferramenta Velero
Plugin velero-plugin-for-aws não consegue fazer o backup
- Sintoma
Após configurar o Velero para utilizar os endpoints de Object Storage da
Magalu Cloud com o plugin velero-plugin-for-aws
o backup falha com um status code 501
e uma mensagem de operation error S3: PutObject, https response error StatusCode: 501
... api error NotImplemented: Transfering payloads in multiple chunks using aws-chunked is not supported.
- Causa
A API S3 do Object Storage da Magalu Cloud não implementa o formato aws-chunked.
- Solução
Incluir na configuração do plugin, na parte de Backup Storage Location, o atributo checksumAlgorithm: ""
Uma string vazia neste atributo indica que nenhum valor de checksum será calculado e enviado nos headers das requisições, o que contorna a limitação mencionada acima.
O modelo multipart foi adotado como padrão por sua reconhecida eficiência e escalabilidade em transferências de objetos. A API S3 MGC OBJS não oferecerá suporte ao formato chunked, considerado ultrapassado e de baixo desempenho em comparação com o modelo implementado.
Outro atributo importante para a compatibilidade com MagaluCloud é utilizar s3ForcePathStyle: true
Abaixo um exemplo de configuração utilizando este atributo e um bucket da região Sudeste 1 (br-se):
configuration:
restoreOnlyMode: false
backupStorageLocation:
- name: backup-cluster-meu-cluster
provider: aws
bucket: backup-cluster-meu-bucket-123456789
default: true
accessMode: ReadWrite
credential:
name: velero-bucket
key: mgc
config:
s3ForcePathStyle: true
s3Url: https://br-se1.magaluobjects.com
checksumAlgorithm: ""