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

在Azure DevOps发布管道部署作业中指定VM运行Ansible Playbook

问题:Azure DevOps部署作业中能否指定单台VM运行Ansible Playbook?

当前使用Azure DevOps发布管道及部署作业,运行Ansible Playbook时同一部署组内的所有VM会同时执行脚本,需要指定具体某台VM来运行脚本,询问是否可实现该需求。

现有Ansible命令及配置

Ansible命令

ansible-playbook -i provisionAdmin.yml 

provisionAdmin.yml配置

- hosts: cron
  user: root
  roles:
    - admin
    - analytics

实现方案

可以实现,提供三种常用方法:

方法1:Azure DevOps部署作业层面指定目标

在Azure DevOps的部署作业配置中,找到部署组的「目标机器」设置,选择「特定机器」,输入目标VM的名称或关联标签。部署作业会仅在指定VM上执行,Ansible Playbook也随之在该VM运行。

方法2:通过Ansible命令参数指定目标

修改Ansible命令,添加--limit参数指定具体主机:

ansible-playbook -i provisionAdmin.yml --limit "目标VM主机名或IP"

注:这里的「目标VM主机名或IP」需要和你的Ansible inventory中定义的主机标识一致。

方法3:临时修改Playbook的hosts字段

直接修改provisionAdmin.yml中的hosts值为目标VM的主机名/IP:

- hosts: 目标VM主机名或IP
  user: root
  roles:
    - admin
    - analytics

此方法适合临时单次执行,灵活性较低。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 21:27:38