playbook: test.yaml
play #1 (lab): lab TAGS: []
tasks:
Install pip TAGS: []
当我执行剧本时,这确实是正常的
PLAY [lab] *****************************************************************************************************************************
TASK [Gathering Facts] *****************************************************************************************************************
ok: [my_ipaddress]
TASK [Install pip] *********************************************************************************************************************
ok: [my_ipaddress]
PLAY RECAP *****************************************************************************************************************************
my_ipaddress : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
并且在/var/log/ansible.log中也看起来和执行输出一样正常
所以问题是,我必须做更少的设置吗?为什么有一个任务不在执行列表中,或者有其他调试输出可以显示更详细的输出信息?
以下是我的ansible配置
OS版本:Ubuntu 18.04.5LTS
ansible版本:
ansible 2.9.12
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/primula/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /home/primula/.local/lib/python3.6/site-packages/ansible
executable location = /home/primula/.local/bin/ansible
python version = 3.6.9 (default, Jul 17 2020, 12:50:27) [GCC 8.4.0]
---
- hosts: lab
roles:
- { role: apache2, become: yes }
- { role: pip, become: yes }
---
- name: Install apache2
apt:
name: apache2
update_cache: yes
---
- name: Install pip
apt:
name: python-pip
update_cache: yes
[lab]
<ipaddress> ansible_ssh_user=<user_name> ansible_ssh_pass='<ssh_pass>' ansible_become_user=<root_user> ansible_become=true ansible_become_pass='<root_pass>'
ansible.cfg
[defaults]
private_key_file = /root/.ssh/id_rsa
roles_path = /etc/ansible/roles
inventory = /etc/ansible/hosts
timeout = 10
log_path = /var/log/ansible.log
deprecation_warnings = False
strategy = debug
any_errors_fatal = True
使用ansible-playbook--list-tasks your_playbook.yml
时,不在执行列表中的任务是与由setup
模块完成的事实收集相关的任务
它是一个隐式自动任务,默认情况下为您播放中的所有主机打开。如果是隐式的,则不由上述命令报告。
您可以使用gather_facts
play关键字在播放级别控制事实收集,例如。
---
- name: Some play without facts gathering
hosts: my_group
gather_facts: false
tasks:
- name: dummy demo task
debug:
msg: I am dummy task
我在build.gradle中创建了一个新的gradle任务: 哪个应该运行rerun.sh: 我使用IntelliJ作为IDE。如何运行此任务? 我尝试在zshell控制台中运行并收到此错误: gradle调用CL zsh:找不到命令:gradle 但是在 IDE 中,我一直使用 gradle,因此必须安装它。 我怎么才能解决这个问题?我的写作还好吗?
我有一大堆Scalaz任务。创建方式如下: 我希望这些任务并行运行。以随机顺序打印数字,不要花5秒钟(每个任务有50个任务和100毫升睡眠)。 但是,很明显,每个任务需要100毫秒,所有任务都需要5秒钟,并且创建的列表是有序的。 如何并行运行它们?任务在哪里运行线程?
我已经为我的ansible Playbooks设置了基本目录架构。我定义了两个角色:-1)www:-管理所有的站点部署2)root:-执行与root相关的任务 我的根角色包含以下任务:-1)在目标服务器上设置一个新站点2)启动web服务器(apache,nginx) 我想在站点部署后重新启动我的apache服务器,为此,我在root roles的tasks下创建了一个名为apache-restar
我刚接触Ansible(Ansible2.9.6),最近开始研究一个项目的设计/目录结构。我的任务是配置测试实验室中的设备(特别是不同的思科设备)以支持测试用例。 我希望有一个site.yml文件,包含所有20+测试用例。这个想法是,用户可以根据参数,通过site.yml针对特定的供应商设备类型(Cisco4507、Cisco3850等)执行所有、多个或单个测试用例。 Ansible-Playbo
我面临的问题是,有时可能有大量的数据,这可能需要工作执行超过10分钟。在这种情况下,我希望检测是否有任何作业已经在运行?如果没有,那么只有我会重新运行一个新的作业实例。如果该作业已经在运行,那么我将跳过“新作业实例调用”。我写了一些代码,如下所示。 一些事情,这段代码是检查以前所有正在运行的作业。我所假设的是,如果我启动服务器,那么在服务器启动之前不会有其他作业在运行,如果我在检查之前的作业是否在