首页 文章
  • 175 votes
     answers
     views

    安全地将Ansible剧本限制在一台机器上?

    我正在使用Ansible进行一些简单的用户管理任务和一小组计算机 . 目前,我将我的playbooks设置为 hosts: all ,我的hosts文件只是一个列出了所有机器的组: # file: hosts [office] imac-1.local imac-2.local imac-3.local 我发现自己经常不得不针对一台机器 . ansible-playbook 命令可以限制这样...
  • 7 votes
     answers
     views

    Playbook位于子目录中,而不是group_vars旁边

    有没有人知道如何将playbooks放入文件夹,但共享相同的角色,group_vars和其他通常位于根目录的东西? 这是我想要的: root_dir: - group_vars - roles - inventory - playbooks - my_playbook.yml - site.yml - deploy.yml 我们的根目录现在变得非常大了,我想将一些剧本分成他们自己的文件夹(显...
  • 0 votes
     answers
     views

    Ansible Tower:如果项目失败,发送电子邮件

    我希望在项目失败时收到一封电子邮件 . 所以我在文件末尾创建了一个任务,向我发送电子邮件 . 现在的问题是,当任务失败时,漏洞项目也会失败,并且不会触发电子邮件任务 . 有人能帮助我吗? (我正在使用 Ansible Tower )
  • 3 votes
     answers
     views

    如何访问从cli传递的所有ansible extra-vars列表? (变量的变量)

    我在使用变量变量方式从我的剧本访问extra-vars时遇到问题 . 例如,我创建了一个包含内容的group_vars / mygroup.yml文件: MYVAR=AAAA 然后我调用命令并传递额外的变量:ansible-playbook -i test playbook.yml --extra-vars“MYVAR = BBB” 我需要从存在变量列表中获取MYVAR的实际值 . 我试着这样做...
  • 2 votes
     answers
     views

    在Ansible中将共享参数与环境特定参数合并

    我在命令行上运行我的playbooks指定目标服务器环境,例如: ansible-playbook -e env=staging playbook.yml 现在我希望能够提供参数,例如要在服务器上创建的用户字典,以便所有环境都有用户 common ,以及我运行该playbook的 specific 到 that one 环境的用户 . 目录结构可能如下所示: ├── group_vars │   ...
  • 83 votes
     answers
     views

    如何自动安装Ansible Galaxy角色?

    所有我的Ansible剧本/角色都签入我的git仓库 . 但是,对于Ansible Galaxy角色,我总是必须在我想运行Ansible的每台机器上逐个明确地下载它们 . 在Ansible抱怨在运行时缺少角色之前,确切地知道确切需要哪些Ansible Galaxy角色甚至是很难的 . 如何管理Ansible Galaxy角色依赖项?我想要让他们检查我的git repo以及其余的ansible代码,...
  • 0 votes
     answers
     views

    Sudo不适用于Ansible AWX

    我在 /etc/ansible/ansible.cfg 设置了 sudo_user . 在我的剧本中,我将 remote_user , sudo_user 和 sudo:yes (也尝试了 sudo:True )设置在与 hosts: 相同的级别上,然后使用以下角色: shell:cp -f src / usr / local / bin / dest sudo:是的 得到 stderr:...
  • 0 votes
     answers
     views

    Ansible寄存器和.changed无效

    我有一个安装包的playbook,如果安装了包,则需要运行命令 . 我使用了 register <variable> 和 <variable>.changed 这样做,但是,这并没有做错 . 这是我的代码 . - name: install syncthing (arch) pacman: name=syncthing state=latest when: ansi...
  • 3 votes
     answers
     views

    Ansible Tower暴露密码

    在我的一本Ansible Playbooks中,我使用vsphere_guest模块在vCenter Server上创建VM . 当我使用作业模板在Ansible Tower上运行Playbook并检查主机事件时,我以纯文本形式看到密码 我没有在Playbook中以纯文本提供密码 . 实际上,它存储在Ansible Tower的“凭据”部分中,在该部分中显示为加密 . “作业”模板设置为在“ ...
  • 1 votes
     answers
     views

    Ansible:更改目录问题的权限

    我正在运行以下Ansible任务来更改目录及其内容的权限 . - name: Change ownership of everything below /opt/as2/app-server file: path=/opt/as2/app-server state=directory recurse=yes owner=adrt group=adrt 运行时我遇到以下问题: 任务[apps...
  • 63 votes
     answers
     views

    Ansible Playbooks vs Roles

    根据Ansible文档,Playbook是: ...真正简单的配置管理和多机器部署系统的基础,与已有的系统不同,并且非常适合部署复杂的应用程序 . 而且,根据那些相同的文档,Roles是: ...基于已知文件结构自动加载某些vars_files,任务和处理程序的方法 . 按角色对内容进行分组还可以轻松与其他用户共享角色 . 但是,这些与不同用例之间的区别对我来说并不是很明显 . 例如,如果...
  • 1 votes
     answers
     views

    Ansible ec2仅提供所需的服务器

    我有一个像这样的基本Ansible剧本: --- - name: Provision ec2 servers hosts: 127.0.0.1 connection: local roles: - aws - name: Configure {{ application_name }} servers hosts: webservers sudo: yes su...
  • -1 votes
     answers
     views

    AWS提供ansible

    当我想要配置ec2时,我得到了错误 . 这就是我设置环境的方式 . 我把我的aws凭证放在〜/ .boto中 cat / etc / ansible / hosts [local] localhost cat /etc/ansible/ec2-vars/testserver.yml ec2_keypair: "ansible" ec2_security_group:...
  • 42 votes
     answers
     views

    Ansible:在剧本中,按标签过滤角色而不通过命令行

    在Ansible 1.7中,我可以使用命令行中的--tags来运行该playbooks任务的子集 . 但是我想要在我的剧本中加入一套角色,只运行与标签相匹配的任务 . 也就是说,我不想通过命令行传递它,因为它每次都是相同的 . 起初我以为是这个命令,但这恰恰相反:使用这些标记标记任务而不是基于此过滤掉它们 . roles: - { role: webserver, port: 5000, ta...
  • 3 votes
     answers
     views

    检查哪些主机在ansible中失败了

    我有两个剧本在ansible上运行,一个接一个 . 在剧本1完成之后,我想在 only 上运行第一个完成第一个剧本的主机 . 通过ansible文档,我找不到任何主机在特定剧本上失败的可访问信息 . 怎么可以这样做? 仅供参考我需要单独的剧本,因为第二部必须连续播放,这是only available at the playbook level
  • 0 votes
     answers
     views

    Ansible playbook为列表中的服务器运行

    Ansible Guru的快速问题 . 我想为一组特定的盒子运行一个ansible playbook,我将其复制到list.txt,忽略了ansible playbook中的库存和目标块: --- - name: Ansible Runbook v.1.0 hosts: test1 gather_facts: yes # serial: "10%" 当我运行以下命令...
  • 2 votes
     answers
     views

    Ansible Registered Variable不会持续执行任务

    我试图使用ansible检查是否有任何空中飞行迁移发生,然后在迁移达到0时运行任务 . 为此,我使用ansible shell模块输出迁移到stdout的总数,注册用ansible输出,并对其进行ansible测试 . Ansible似乎正在正确记录输出,但它不断地将标准输出显示为“Hello World” 这是我的测试剧本: --- - hosts: - foo - bar ...
  • 25 votes
     answers
     views

    Ansible - 如何为每个主机顺序执行playbook

    我使用ansible编写API的部署脚本 . 我希望这可以顺序通过我的库存文件中的每个主机,以便我可以一次完全部署到一台机器 . 使用out框行为,我的playbook中的每个任务都会在清单文件中为每个主机执行,然后再继续执行下一个任务 . 在下一个主机上启动之前,如何更改此行为以执行主机的所有任务?理想情况下,我想只有一本剧本 . 谢谢
  • 5 votes
     answers
     views

    Ansible:如果主机无法访问,则中止执行

    摘要:如果任何主机无法访问,则立即中止ansible playbook的更好方法 . 如果任何一个主机无法访问,有没有办法中止Ansible playbook . 我发现,如果它无法到达主机,它仍将继续执行并执行剧本中的所有播放/任务 . 我的所有剧本我指定max_fail_percentage为0,但在这种情况下,ansible不会抱怨,因为所有可访问的主机都可以执行所有播放 . 目前我有一个简...
  • 2 votes
     answers
     views

    Ansible无法制作dir /$HOME/.ansible/cp

    我运行ansible时遇到一个非常奇怪的错误: GATHERING FACTS *************************************************************** fatal: [i-0f55b6a4] => Could not make dir /$HOME/.ansible/cp: [Errno 13] Permission denied: ...
  • 2 votes
     answers
     views

    ansible:从同一个剧本中的其他剧本访问注册变量

    我正在尝试从第二个剧本中我的剧本中的第一个“播放”中访问名为“count”的变量 . 我在这里发现了一些关于同一问题的其他帖子,我认为我正在遵循正确的步骤,但下面的代码仍然失败 . The Code - hosts: group1 tasks: - name: count registrations on primary node shell: psql -U widgets wi...
  • 2 votes
     answers
     views

    在Ansible Playbook中指定PostgreSQL密码

    Ansible的新功能,运行版本2.1.0 . 我编写了一个Ansible playbook,它针对一组主机运行PostgreSQL查询 . 当我在shell命令中指定SQL DB密码时,它可以工作,但我希望针对一组主机运行该剧本,并且需要一种更好的方式来输入密码,因为它们都是唯一的 . 有谁能建议一个更好的方法来做到这一点? --- - hosts: Test_Hosts sudo...
  • 0 votes
     answers
     views

    Ansible复制和同步模块失败:没有名为ansible的模块

    试图使用一个使用同步模块的Ansible的剧本,但我收到错误: 回溯(最近一次调用最后一次):文件“/export/home/webops/.ansible/tmp/ansible-tmp-1433165514.33-173345229349905/synchronize”,第21行,来自ansible import utils ImportError:没有名为ansible的模块 我在复制模...
  • 0 votes
     answers
     views

    ansible远程脚本执行登录本地机器

    我有python脚本,基本上在远程机器上验证已安装的服务 . 这个脚本将在远程机器上运行,我使用ansible来调用这个脚本 . 我在将脚本记录到本地机器的文件时遇到了麻烦 . test.yml (Ansible) - name: Verifying route ,run script to analyse temp_route.txt file script: /scripts/...
  • 10 votes
     answers
     views

    Ansible Playbook运行Shell命令

    我最近潜入了Ansible的一台服务器,发现它真的很有趣,省时省力 . 我正在运行一个Ubuntu专用服务器,并配置了许多用Python编写的Web应用程序和一些用PHP编写的Web应用程序 . 对于Python,我使用uwsgi作为HTTP网关 . 我编写了shell脚本来启动/重启几个进程,以便运行特定Web应用程序的实例 . 我每次都要做的是,连接ssh并导航到该特定应用程序并运行脚本 . ...
  • 1 votes
     answers
     views

    通过ansible playbook在python终端中运行命令

    我是ansible的新手,但我正试图通过一个ansible playbook在python终端内运行一些命令 . 具体来说,我想下载一个语料库 . $python >import nltk >nltk.download > ~ d (download) > ~ book > ~ q (quit) >quit() 目前,我的playbook文件创建了一个virt...
  • 40 votes
     answers
     views

    如何为文件中的动态库存提取的服务器定义ssh私钥

    在为ssh私钥文件编写ansible playbook时遇到了一个配置问题 . 我们知道,我们可以在静态库存服务器的ansible hosts文件中定义与主机服务器,ip和相关ssh私钥的组合 . 但我不知道如何使用动态库存服务器来定义它 . 例如: --- - hosts: tag_Name_server1 gather_facts: no roles: - role1 - h...
  • 5 votes
     answers
     views

    ansible-playbook在设置时挂起

    我正在尝试运行ansible-plabook,但它在设置时挂起 . 我的剧本做了很多工作,如调用不同的角色和模块,它也收集事实 . 它过去工作得很好,但现在我不知道出了什么问题,任何帮助表示赞赏 主机操作系统是RHEL 7在这些系统之间设置 ssh无密码身份验证 我的库存文件只包含1个主机系统 我跑的命令是 ansible-playbook -i /tmp/tmpBo5Xmj -...
  • 9 votes
     answers
     views

    AWS EC2实例通过Ansible IAM角色创建instance_profile_name UnauthorizedOperation:错误

    我试图通过ansible使用IAM角色创建EC2实例,但我在启动新实例时遇到错误 failed: [localhost] => (item= IAMRole-1) => {"failed": true, "item": " IAMRole-1"} msg: Instance creation failed => Unau...
  • 28 votes
     answers
     views

    如何使用Ansible重新启动Jenkins并等待它回来?

    我正在尝试使用Ansible重新启动Jenkins服务: - name: Restart Jenkins to make the plugin data available service: name=jenkins state=restarted - name: Wait for Jenkins to restart wait_for: host=localhost p...

热门问题