You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何以最小带宽将同一文件传输至多台Azure服务器?

减少Ansible向多台Azure服务器重复上传文件的方案

当然可以!你这个需求太常见了——50台机器重复上传同一个文件,不仅耗本地带宽,还慢得让人着急。下面给你几个靠谱的方案,帮你把上传次数从50次降到1次:

方案1:用Azure内部中转VM分发(推荐内网高速传输)

选一台和目标服务器同区域的Azure VM作为中转节点(内网传输免费且速度拉满),先把文件从本地传到这台中转VM(仅1次),再从中转VM同步到所有目标机器:

步骤1:上传文件到中转VM

- name: 将文件上传至Azure中转VM
  copy:
    src: /home/myuser/project/build/fatboot.jar
    dest: /tmp/fatboot.jar
    owner: foo
    group: foo
    mode: 0644
  delegate_to: azure-relay-vm  # 替换成你的中转VM主机名/IP

步骤2:从中转VM同步到所有目标服务器

用synchronize模块(基于rsync,内网传输高效),把中转VM上的文件同步到所有目标机器:

- name: 从中转VM同步文件到目标服务器
  synchronize:
    src: /tmp/fatboot.jar
    dest: /opt/project/fatboot.jar
    owner: yes
    group: yes
    mode: 0644
  delegate_to: azure-relay-vm

注意:中转VM和所有目标服务器需要提前安装rsync(大多数Linux发行版默认自带),同时确保Ansible能访问中转VM,且中转VM和目标机器之间的内网端口(rsync默认873)是开放的。

方案2:用Azure Blob Storage作为中转(无需额外维护VM)

如果不想维护中转VM,可以把文件上传到Azure Blob Storage(本地仅传1次),再让目标机器从Blob Storage下载:

步骤1:上传文件到Blob Storage

先确保你的Ansible控制节点安装了azure.azcollection集合,然后用模块上传:

- name: 上传文件到Azure Blob Storage
  azure_rm_storageblob:
    resource_group: your-resource-group  # 替换成你的资源组
    storage_account_name: your-storage-account  # 替换成你的存储账户名
    container: your-container  # 替换成你的容器名
    blob: fatboot.jar
    src: /home/myuser/project/build/fatboot.jar
    content_type: application/java-archive
    state: present

步骤2:目标机器从Blob Storage下载

生成一个SAS令牌(确保权限和有效期合适),然后用get_url模块下载:

- name: 从Blob Storage下载文件到目标服务器
  get_url:
    url: "https://your-storage-account.blob.core.windows.net/your-container/fatboot.jar?{{ sas_token }}"
    dest: /opt/project/fatboot.jar
    owner: foo
    group: foo
    mode: 0644

小技巧:可以给存储账户配置VNet访问规则,只允许目标服务器所在的Azure VNet访问,提升安全性。

额外小优化:Ansible配置微调

如果暂时不想用中转方案,还可以调整Ansible的forks参数(默认5),比如改成10或20,让Ansible同时向更多机器上传,虽然还是传50次,但总时间会缩短。修改ansible.cfg里的forks = 20即可。

内容的提问来源于stack exchange,提问作者opticyclic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:35:19