写点什么

如何使用 AZCOPY 同步 Azure Blob 存储

  • 2020-01-25
  • 本文字数:1552 字

    阅读完需:约 5 分钟

如何使用 AZCOPY 同步 Azure Blob 存储

几个月前,我写了一篇关于 如何使用 AzCopy 同步文件到 Azure Blob 存储 的博客。今天针对我在 GitHub 上使用 AzCopy 的一个问题,有了一个激动人心的更新。这意味着您现在可以使用 AzCopy 从 Azure Blob 到 Azure Blob。

Azure Blob <-> Azure Blob (源必须包括共享访问令牌 SAS 或者可公共访问,对于目标可以支持共享访问令牌 SAS 或者 OAuth 认证)

如何在 Azure Blob 存储之间同步

作为准备工作,您将需要 安装并设置 AzCopy ,或者在 Azure Cloud Shell 中使用 AzCopy.


您可以使用下述命令将 Azure blob 存储同步到另外一个 Azure Blob 中。该命令将仅仅同步发生变化和新建的文件。其比较文件的名称和最后修改时间戳。


azcopy sync "https://[account].blob.core.windows.net/[container]/[path/to/blob]?[SAS]" "https://[account].blob.core.windows.net/[container]/[path/to/blob]?[SAS]"
复制代码


对于目标,你既可以使用 SAS 或者 OAuth。为了同步一个存储账号中的整个容器或者文件夹到另外一个账号,你可以使用下述命令:


azcopy sync "https://[account].blob.core.windows.net/[container]?[SAS]" "https://[account].blob.core.windows.net/[container]"
复制代码


作为示例,这里我将从在北欧区的 Azure 存储账号的一个容器中的文件,复制到西欧区的另一个存储账号中。



我使用如下命令来实现:


azcopy sync "https://tomnortheurope.blob.core.windows.net/myfiles?[SAS]" "https://tomwesteurope.blob.core.windows.net/destinationfiles?[SAS]" --recursive=true
复制代码



您可以看到,在第一次运行时,它确实将所有文件从源存储帐户复制到了目标位置。 在第二次运行中,它没有复制任何文件,因为文件已经存在了。



下面是一系列可以使用的参数。您可以在微软 Docs上发现更多的关于 AzCopy sync 的命令。


–block-size-mb 在上传到 Azure 存储或者从 Azure 存储下载时,使用的块尺寸 (以 MiB 为单位) 。默认基于文件尺寸自动计算。支持使用十进制小数(例如:0.25)。


–check-md5 字符串,指定在下载时,如何强制 MD5 散列值用于验证。该选项仅在下载时可用。可用值包括:NoCheck, LogOnly, FailIfDifferent, FailIfDifferentOrMissing. (默认值:‘FailIfDifferent’)。


–delete-destination 字符串。定义是否删除源中没有提供的目标中的其它文件。可以设置为: true, false, 或者 prompt。如果设置为 prompt,在删除文件或者 blob 之前,用户将被要求确认 (默认 false)。


–exclude-attributes 字符串(仅 Windows),排除匹配文件属性的文件。例如:A;S;R


–exclude-pattern 字符串,排除匹配模板列表的文件,例如:.jpg;*.pdf;exactName


-h, –help 使用帮助


–include-attributes 字符串 (仅 Windows),仅包含匹配文件属性列表的文件。例如: A;S;R


–include-pattern 字符串,仅包含匹配模板列表的文件。例如: .jpg;.pdf;exactName


–log-level 字符串, 定义日志文件的日志级别。可用的级别:INFO(所有的请求和响应), WARNING(慢速响应), ERROR(仅仅失败的请求), 以及 NONE(没有输出日志). (默认 INFO). (default “INFO”)


–put-md5 对每个文件创建 MD5 散列,并保存将散列值作为目标 blob 或文件的 Content-MD5 属性。 (默认情况下,创建散列)。仅在上传时可用。


–recursive 默认为 True,当在目录之间同步的时候,递归进入子目录 (默认为 true)。


如果您希望了解更多关于同步本地文件到 Azure blob 存储的内容,请查看我的博客。我希望这可以帮助您快速查看如何使用 AzCopy 同步 Azure blob 存储。如果您希望学习更多内容,请查看微软 Docs 中关于如何 使用 AzCopy 传输数据。如果有任何问题,请留言。


原文链接


https://github.com/azureselected/azureselected/blob/master/content/cloud-advocate/2019-12/how-to-sync-azure-blob-storage-with-azcopy.md


2020-01-25 11:303883

评论

发布
暂无评论
发现更多内容

android插件化资源冲突,享学课堂vip二期

android 程序员 移动开发

Android开发者必须收藏的8个开源库,阿里蚂蚁金服五面

android 程序员 移动开发

Android开发进大厂面试必备技能,大厂面试必备技能

android 程序员 移动开发

架构实战-模块一

唐敏

架构实战营

Android插件化主流框架和实现原理,挑战大厂重燃激情

android 程序员 移动开发

android插件化原理,android开发视频百度网盘

android 程序员 移动开发

Android开发者跳槽面试,深夜思考

android 程序员 移动开发

android插件化和热修复区别,扔物线学堂

android 程序员 移动开发

【推荐】如何将枯燥的大数据呈现为可视化的图和动画?

云智慧AIOps社区

大数据 开源 大前端 数据可视化 大屏可视化

Android开发者面试如何系统复习,Android小技巧

android 程序员 移动开发

Android开发面试题目,动脑学院vip

android 程序员 移动开发

Android开发面试题!动脑学院安卓教程vip2019

android 程序员 移动开发

Android性能优化面试题集锦,架构师必备

android 程序员 移动开发

极客时间 - 架构实战营 - 模块一作业

秋夫人

架构实战营

Android性能优化推荐书,享学课堂课程怎么样

android 程序员 移动开发

Android开发者该学习哪些东西提高竞争力,程序员面试防坑宝典

android 程序员 移动开发

Android技术类校招面试题汇总,享学课堂Android架构师课程

android 程序员 移动开发

COSCon'21 参会指南 你想要的这里都有

开源社

开源社区 第六届中国开源年会 COSCon'21 开源社

极光笔记丨百亿级数据的实时存取优化与实践

极光GPTBots-极光推送

高可用 软件架构 多级存储系统 高性能存储

Android开发谈,html5移动开发即学即用网盘

android 程序员 移动开发

Android快速转战Kotlin教程,安卓已死

android 程序员 移动开发

没想到!我在简历上写了“精通MySQL”,阿里面试官跟我死磕后就给我发了高薪offer

收到请回复

程序员 编程语言 后端

Android插件化入门指南,程序员必看

android 程序员 移动开发

Android开发面试技能介绍,动脑学院架构师vip视频

android 程序员 移动开发

Android技术类校招面试题汇总:扔物线rxJava

android 程序员 移动开发

Android攒了一个月的面试题及解答,Android程序员必会

android 程序员 移动开发

Android开发者该学习哪些东西提高竞争力,做了5年Android

android 程序员 移动开发

从错误中学习

FunTester

学习 测试 bug 自学 FunTester

Android技术类校招面试题汇总:android享学课堂vip课程下载

android 程序员 移动开发

Android推送技术解析,Android开发工程师面试题

android 程序员 移动开发

android插件化开发指南,享学课堂课程怎么样

android 程序员 移动开发

如何使用 AZCOPY 同步 Azure Blob 存储_容器_Thomas Maurer_InfoQ精选文章