google cloud instance 之间做file sync
IPFS
预设gcp instance 是只能用ssh key based 登入,而如果没有帮root 帐号(或者要执行rsync 的帐号)产生ssh key,那等于无法使用rsync 这个命令。
而gcloud sdk 里头只有提供copy 与scp (其实是一样)来做instance 之间的档案传输,除非是使用bucket storage来做中继站。
但是用gcloud compute scp 或gcloud compute copy 无法只处理更新的档案,而有浪费频宽、时间等的问题。这时候要善用find 指令… 比方说像是这样…
find /var/opt/sharingdata/ -type f -mmin -1 -exec gcloud compute scp --recurse --compress --internal-ip {} --zone asia-east1-c [instance-name]:/var/opt/sharingdata/
然后挂上crontab 就搞定了。
Original link: Phanix's Blog
喜欢我的作品吗?别忘了给予支持与赞赏,让我知道在创作的路上有你陪伴,一起延续这份热忱!