我有一个由ansible-playbook -u <username> -k playbooks/example.yml从命令行手动运行的ansible攻略
上面的方法运行良好。它会提示我输入SSH密码并运行攻略。
The ansible version in my linux machine: 2.7.7
作为我的构建计划的一部分,我需要在竹子中运行它。在竹子中,我不能输入密码,因为它不会提示我。所以我希望将用户名和ssh密码作为参数作为命令的一部分进行传递。
我试过了
ansible-playbook playbooks/monitor-linux-node.yml -e
amazon-linux-extras enable和amazon-linux-extras install有什么区别?我之所以问这个问题,是因为我们的build.sh最近的一个变化破坏了我们的AWS构建-- amazon-linux-extras enable ansible2变成了amazon-linux-extras install ansible2。
在此之后,构建开始失败,因为:
Installation failed. Check that you have permissions to install.
我添加了一个版本check - ansible --version || e
当我在RHEL 7机器上进行重击时,我会看到许多repos被禁用:
rh-gluster-3-client-for-rhel-7-server-rpms/x86_64 Red Hat Storage Native Client for RHEL 7 (RPMs) disabled
rhel-7-fast-datapath-rpms/x86_64
我正在尝试将适用于Windows和Linux的剧本组合在一起。现在,我正在尝试将角色包含在仅在Windows或Linux环境下才能使用的剧本中,但它总是抱怨语法问题。我希望能在这方面提供任何帮助,因为我尝试过几种不同的方法,但总是失败。
---
- hosts: all
gather_facts: no
pre_tasks:
- name: (localhost) make sure the known_hosts file is cleared
lineinfile:
path: ~/.ssh/known_hosts
state:
我正在构建一个ansible剧本来改变我们网络上的多个密码。而且起作用了!它会改变所有密码,就像它应该做的那样。但是,它更改的最后一个密码是ansible密码,该密码将引发一个错误,因为它试图使用旧的Ansible密码进行成功检查。有没有办法告诉Ansible在更改密码后使用不同的密码?下面是整个剧本。
---
# Update local administrator on all Windows systems
- hosts: windows
gather_facts: yes
ignore_errors: no
tasks:
- name: Set Windows Ad
我试试这个
- name: Install required packages
shell: "apt-get instal linux-headers-{{ ansible_kernel }}"
然而,得到这个
{"msg": "The task includes an option with an undefined variable. The error was: 'ansible_kernel' is undefined\
我可以通过以下方式看到这个变量
ansible -i myinventoryfile myhost -m