Questions tagged «ansible»

Red Hat Ansible是模型驱动的配置管理,多节点部署/编排和远程任务执行系统。默认情况下,它使用SSH,因此您管理的节点上没有安装特殊软件。Ansible用Python编写,但可以用任何语言扩展。它有开放源代码版本和企业版。

9
如何在Ansible中获取任意远程用户的主目录?
我可以使用shell结合使用getent,awk例如: getent passwd $user | awk -F: '{ print $6 }' 作为参考,我可以在Puppet中使用自定义事实,如下所示: require 'etc' Etc.passwd { |user| Facter.add("home_#{user.name}") do setcode do user.dir end end } 这实际上使用户的主目录可用home_<user name>。 如何获得任意远程用户的主目录?

10
在Ansible中转义双花括号
如何在Ansible 1.9.2中转义双花括号? 例如,如何在以下shell命令中转义大括号? - name: Test shell: "docker inspect --format '{{ .NetworkSettings.IPAddress }}' instance1"
77 docker  jinja2  ansible 

6
ansible:如何传递多个命令
我尝试了这个: - command: ./configure chdir=/src/package/ - command: /usr/bin/make chdir=/src/package/ - command: /usr/bin/make install chdir=/src/package/ 可以,但是我想还有更多..整洁的。 所以我尝试了这个: 来自:https : //stackoverflow.com/questions/24043561/multiple-commands-in-the-same-line-for-bruker-topspin,这使我回来“没有这样的文件或目录” - command: ./configure;/usr/bin/make;/usr/bin/make install chdir=/src/package/ 我也尝试过这个:https : //u.osu.edu/hasnan.1/2013/12/16/ansible-run-multiple-commands-using-command-module-and-with-items/ 但我找不到正确的语法: - command: "{{ item }}" chdir=/src/package/ with_items: ./configure /usr/bin/make /usr/bin/make install 说行情存在问题,那是行不通的。 任何人?

3
ansible:在角色中包含角色?
是否可以在角色中重用角色?我不通过的作用元/ main.yml文件中定义的依赖,但通过意味着包括在直接另一个角色的任务/ main.yml的作用? 例如,我在角色簿中定义了几个基本角色,在角色中定义了一些更高级的角色。我希望高级角色除了一些特定任务之外,还包括一些基本角色。 playbooks/ rolebooks/ some_role/ roles/ webtier/ tasks/ main.yml 在剧本/角色/网站/任务/main.yml中: - shell: echo 'hello' - { role: rolebooks/some_role } - shell: echo 'still busy' 谢谢

4
Ansible通知处理程序中的另一个角色
我可以以其他角色通知处理程序吗?我应该怎么做才能使ansible找到它? 用例是,例如,我想配置一些服务,然后在更改后重新启动它。不同的操作系统可能具有不同的文件进行编辑,甚至文件格式也可能不同。因此,我想将它们设置为不同的角色(由于文件格式可能不同,因此无法通过设置group_vars来完成)。但是使用service模块重新启动服务的方法是相同的;所以我想让处理程序common扮演角色。 反正实现了吗?谢谢。

3
将其他角色的任务包括在可玩剧本中
我正在设计一种具有个别任务的剧本库 所以在通常的角色仓库中,我有类似以下内容: roles ├── common │ └── tasks │ ├── A.yml │ ├── B.yml │ ├── C.yml │ ├── D.yml │ ├── login.yml │ ├── logout.yml │ └── save.yml ├── custom_stuff_workflow │ └── tasks │ └── main.yml └── other_stuff_workflow └── tasks └── main.yml 我的custom.stuff_workflow中的main.yml然后包含以下内容: --- - include: login.yml - include: …

2
Ansible是否可以替代Hudson / Jenkins等CI工具?
最近,在我们公司,我们决定使用Ansible进行部署和持续集成。但是,当我开始使用Ansible时,我没有找到用于使用Maven构建Java项目的模块,也没有找到用于运行JUnit测试或JMeter测试的模块。 所以,我的状态令人怀疑:可能是我以错误的方式使用了Ansible。 当我看着Jenkins时,它可以完成诸如构建,运行测试,部署之类的工作。哈德森(Hudson)缺少的一件事是在AWS等云环境中创建/删除实例。 因此,总的来说,我们需要出于什么目的使用Ansible / Jenkins?对于CI,我需要结合使用Ansible和Jenkins吗? 请说明正确使用Ansible的方法。

6
Ansible:如何在单独的Vault文件中加密清单文件中的某些变量?
设定 考虑类似于以下示例的Ansible库存文件: [san_diego] host1 host2 [san_francisco] host3 host4 [west_coast] san_diego san_francisco [west_coast:vars] db_server=foo.example.com db_host=5432 db_password=top secret password 问题 我想将一些var(如db_password)存储在Ansible保管库中,而不是整个文件。 如何将Vault加密的ansible文件导入未加密的清单文件中? 我尝试过的 我创建了一个加密的vars文件,并尝试通过以下方式导入它: include: secrets 对此ansible-playbook回应: ERROR: variables assigned to group must be in key=value form 可能是因为它试图将include语句解析为变量。

3
使用Ansible显示远程命令的输出
在Ansible角色中,我生成用户的SSH密钥。之后,我想将其打印到屏幕上并暂停,以便用户可以将其复制并粘贴到其他位置。到目前为止,我有这样的事情: - name: Generate SSH keys for vagrant user user: name=vagrant generate_ssh_key=yes ssh_key_bits=2048 - name: Show SSH public key command: /bin/cat $home_directory/.ssh/id_rsa.pub - name: Wait for user to copy SSH public key pause: prompt="Please add the SSH public key above to your GitHub account" “显示SSH公共密钥”任务已完成,但未显示输出。 TASK: [Show SSH public key] …

2
使用Ansible set_fact从寄存器结果创建字典
在Ansible中,我曾经register将任务的结果保存在变量中people。省略了我不需要的东西,它具有以下结构: { "results": [ { "item": { "name": "Bob" }, "stdout": "male" }, { "item": { "name": "Thelma" }, "stdout": "female" } ] } 我想使用后续set_fact任务来生成一个具有这样的字典的新变量: { "Bob": "male", "Thelma": "female" } 我想这可能是可行的,但到目前为止我还没有走运。
69 ansible 


3
Ansible-访问本地环境变量
我想知道是否有Ansible访问本地环境变量的方法。 该文档引用了目标计算机上的访问变量: {{ lookup('env', 'SOMEVAR') }} 有没有办法在源计算机上访问环境变量?
68 ansible 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.