Eu tenho feito manualmente, no prompt do DOS, esse comando:
gsutil -m rsync -r gs://Base_Do_GCS/ s3://Bucket_do_S3/Dir_Destino
Ele copia os dados do Bucket do GCS para o bucket do S3/AWS. É possivel rodar esse comando por um Cloud Function?
Eu tenho feito manualmente, no prompt do DOS, esse comando:
gsutil -m rsync -r gs://Base_Do_GCS/ s3://Bucket_do_S3/Dir_Destino
Ele copia os dados do Bucket do GCS para o bucket do S3/AWS. É possivel rodar esse comando por um Cloud Function?
Olá Manoel, tudo bem? Sim, isso é possível sim, porém você precisa se atentar a questão das permissões, e outra questão será que não seria mais fácil fazer isso no AWS Lambda? E ainda existe outra questão, se a quantidade de dados for muito grande, uma função não vai suportar, talvez faça sentido criar uma máquina e o usar o gsutil
para fazer a cópia e depois excluir a máquina.
A questão das permissões é só fazer as liberações (isso teria que ser feito no lado do AWS). Acredito que o AWS Lambda seja o equivalente do Cloud Function no ambiente da Amazon. Talvez seja mais fácil rodar a função gsutil (que é uma função do google) no ambiente da GoogleCloud.
Poderia subir uma maquina para fazer esse trabalho e depois baixar. Mas seria muito mais simples se eu fizesse este trabalho por uma Cloud Funtion.
Eu fiz a pergunta mais para saber se vocês tem um exemplo de função que faz esta tarefa.
Entendi perfeitamente Manoel, eu particularmente não tenho nenhum exemplo nesse sentido, e a sobre subir uma máquina para fazer esse trabalho, é que pode valer mais a pena, já que os recursos no Cloud Funtion ou AWS Lambda são limitados.
Jonilson S, você indicaria um curso onde é mostrado o processo de: 1 - Subir uma máquina 2- Rodar um gsutil 3- Desligar a maquina