使用以下命令手动执行时,Ansible任务失败:“跳过:没有匹配的主机”

时间:2019-02-22 15:16:54

标签: ansible vagrant task virtualbox

我正在尝试与一本DevOps书籍(针对SharePoint)一起使用,它描述了一种方法,该方法通过使用无所事事和ansible一起提供不同环境(开发,生产,测试)的一种自动,可重复的方式来提供多个框virtualbox虚拟化提供程序。

  • ansible --version输出:

    可用2.7.8 配置文件= / Users /用户名/Desktop/projects/vagrant-ansible-packer-spfarm/ansible.cfg 配置的模块搜索路径= [u'/用户/用户名/.ansible/插件/模块',u'/ usr / share / ansible / plugins /模块'] ansible python模块位置= /usr/local/lib/python2.7/site-packages/ansible 可执行位置= / usr / local / bin / ansible python版本= 2.7.15(默认,2019年2月12日,11:44:53)[与GCC 4.2.1兼容的Apple LLVM 9.0.0(clang-900.0.39.2)

我设法采取了第一步,设置了项目,使用Mac上的github存储库配置了一个和唯一的DomainController。

下一步,我想使用ansible CLI在本地部署(DC)上应用一些设置来手动执行ansible任务:

  • 剧本的名称:domaincontroller.yaml
  • 清单文件的名称:test.ini
  • 这是要执行的命令:
ansible-playbook -i ansible/test.ini ansible/plays/domaincontroller.yaml --extra-vars="ansible_user='vagrantuser@spdomain.local' ansible_password='Pass@wordX!'" --start-at-task="add admin account to Domain Admins group" -vvvvv

结果,我不断得到 this 正在跳过:没有主机匹配

这是我的目录结构和this项目的起源。

Ansible对我来说是新的。我非常喜欢它对DevOps概念的贡献。但是我真的很努力地做到这一点,因此,来自开发人员的任何帮助将不胜感激!如果您需要更多信息来帮助我解决此问题,请随时与我联系!

更新:根据ansible文档,我已经尝试将ansible.cfg中的插件列入白名单,但这对我不起作用:( ansible docfile链接:https://docs.ansible.com/ansible/2.7/plugins/inventory.html

1 个答案:

答案 0 :(得分:0)

根据Ansible文档:

  

组名区分大小写。

您的游戏默认host指令为DomainControllers,而在test.ini广告资源中您有domaincontrollers组。

对此进行更改,或传递其他额外的变量-e cloud_host=domaincontrollers