Questions tagged «ansible»

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

22
如何使用Ansible创建目录
Наэтотвопросестьответына 堆栈溢出нарусском:Каксоздатьпапкунадругомсервереприпомощиansible? 如何使用Ansible剧本www在/srv基于Debian的系统上创建目录?

8
在Ansible主机上运行命令
是否可以在Ansible主机上运行命令? 我的情况是,我想从内部托管的git服务器中签出(并且不能在公司防火墙外部访问)。然后,我想将结帐(打包)上传到生产服务器(外部托管)。 目前,我正在考虑运行一个执行检出的脚本,将其打包,然后运行部署脚本-但是如果我可以将其集成到Ansible中,那将是更好的选择。

12
将Ansible剧本安全地限制在一台机器上吗?
我正在Ansible中使用一小组计算机执行一些简单的用户管理任务。目前,我将我的剧本设置为,hosts: all并且我的hosts文件只是列出了所有计算机的一个组: # file: hosts [office] imac-1.local imac-2.local imac-3.local 我发现自己经常不得不瞄准一台机器。该ansible-playbook命令可以限制播放,如下所示: ansible-playbook --limit imac-2.local user.yml 但这似乎很脆弱,尤其是对于可能具有破坏性的剧本而言。省略limit标志意味着该剧本将在任何地方运行。由于这些工具只是偶尔使用,因此似乎值得采取措施实现万无一失的播放,因此从现在起几个月后,我们就不会意外地破坏某些东西。 是否存在将剧本的运行限制在一台机器上的最佳实践?理想情况下,如果忽略了一些重要细节,则剧本应该无害。

23
为Ansible指定sudo密码
如何以非交互方式为Ansible指定sudo密码? 我正在运行像这样的Ansible剧本: $ ansible-playbook playbook.yml -i inventory.ini \ --user=username --ask-sudo-pass 但我想这样运行: $ ansible-playbook playbook.yml -i inventory.ini \ --user=username` **--sudo-pass=12345** 有办法吗?我想尽可能地使我的项目部署自动化。
224 ansible 



19
Ansible失败,出现/ bin / sh:1:/ usr / bin / python:找不到
我遇到了从未见过的错误。这是命令和错误: $ ansible-playbook create_api.yml PLAY [straw] ****************************************************************** GATHERING FACTS *************************************************************** failed: [104.55.47.224] => {"failed": true, "parsed": false} /bin/sh: 1: /usr/bin/python: not found TASK: [typical | install required system packages] ***************************** FATAL: no hosts matched or all hosts have already failed -- aborting PLAY RECAP ******************************************************************** to retry, use: --limit @/Users/john/create_api.retry …

6
如何在ansible剧本中仅执行一项任务?
有没有办法只在ansible剧本中运行一项任务? 例如,在中roles/hadoop_primary/tasks/hadoop_master.yml。我有"start hadoop job tracker services"任务 我可以执行一项任务吗? hadoop_master.yml文件: --- # Playbook for Hadoop master servers - name: Install the namenode and jobtracker packages apt: name={{item}} force=yes state=latest with_items: - hadoop-0.20-mapreduce-jobtracker - hadoop-hdfs-namenode - hadoop-doc - hue-plugins - name: start hadoop jobtracker services service: name=hadoop-0.20-mapreduce-jobtracker state=started tags: debug
172 ansible 


3
如何获得Ansible主机文件中定义的当前计算机的主机名?
我正在设置Ansible剧本来设置几个服务器。如果当前主机是我的本地dev主机(在我的hosts文件中名为“ local”),我只想执行几项任务。我怎样才能做到这一点?我在文档的任何地方都找不到它。 我已经尝试了when语句,但是它失败了,因为ansible_hostname解析为创建计算机时生成的主机名,而不是您在hosts文件中定义的主机名。 - name: Install this only for local dev machine pip: name=pyramid when: ansible_hostname == "local"
166 ansible 

9
如何忽略Anssh SSH真实性检查?
有没有办法忽略Ansible进行的SSH真实性检查?例如,当我刚刚设置新服务器时,我必须回答以下问题: GATHERING FACTS *************************************************************** The authenticity of host 'xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx)' can't be established. RSA key fingerprint is xx:yy:zz:.... Are you sure you want to continue connecting (yes/no)? 我知道这通常不是一个好主意,但是我将其合并到脚本中,该脚本首先在我的云提供商处创建了一个新的虚拟服务器,然后自动调用我的ansible剧本进行配置。我想在脚本执行过程中避免任何人为干预。
164 ssh  ansible 

8
ansible:lineinfile有几行?
用同样的方法还有一个模块lineinfile在一个文件中添加一条线,有没有办法来添加几行? 我不想使用模板,因为您必须提供整个文件。我只想在现有文件中添加一些内容,而不必知道文件已经包含了什么,因此模板不是一个选择。
162 ansible 

5
如何按任务或任务组切换用户?
Ansible剧本中经常出现的主题是,我经常必须使用sudo特权(sudo: yes)执行命令,因为我想为特定用户执行此命令。理想情况下,我宁愿使用sudo切换到该用户并正常执行命令。因为这样我就不必清理通常的post命令,例如整理目录。这是我的一本剧本的摘录: - name: checkout repo git: repo=https://github.com/some/repo.git version=master dest={{ dst }} sudo: yes - name: change perms file: dest={{ dst }} state=directory mode=0755 owner=some_user sudo: yes 理想情况下,即使需要sudo才能以该用户身份运行我也可以以其他用户身份运行命令或命令集。
160 ansible 

17
Ansible:如何删除目录中的文件和文件夹?
以下代码仅删除它从Web目录中获取的第一个文件。我想删除Web目录中的所有文件和文件夹,并保留Web目录。我怎样才能做到这一点? - name: remove web dir contents file: path='/home/mydata/web/{{ item }}' state=absent with_fileglob: - /home/mydata/web/* 注意:我已经尝试rm -rf使用命令和shell,但是它们不起作用。也许我错误地使用了它们。 朝正确方向的任何帮助将不胜感激。 我正在使用ansible 2.1.0.0


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.