ansible-2.x相关内容
我正在尝试将dist目录的内容复制到nginx目录. - name: copy html file copy: src=/home/vagrant/dist/ dest=/usr/share/nginx/html/ 但是当我执行剧本时会引发错误: TASK [NGINX : copy html file] ************************************
..
我正在尝试在Ansible 2.5中使用when: item is undefined来检查是否已设置变量列表,如下所示: - hosts: all tasks: - name: validate some variables fail: msg: "Required variable {{item}} has not been provided"
..
使用Ansible的Git模块克隆,推入或拉入内部托管的私有git存储库时(例如,在GitLab实例上),我如何指定用户名和密码来通过Git服务器进行身份验证? 在文档中,我看不到任何实现此目的的方法. 解决方案 您可以使用以下内容: --- - hosts: all gather_facts: no become: yes tasks: - name:
..
我有一个看起来如下的json对象: [ { "id": "subnet-1", "tags": { "Name": "showcase" } }, { "id": "subnet-2", "tags": { "Name": "qa"
..
问题很简单:Ansible中的ansible_user(以前的ansible_ssh_user)和remote_user有什么区别,除了第一个是在配置文件中设置的,第二个是在角色/角色中设置的?它们与-u/--user命令行选项有何关系? 解决方案 它们似乎是相同的.在这里看看: https://github.com. com/ansible/ansible/blob/c600ab8
..
我正在部署一台CentOS机器,任务之一是读取呈现为Consul服务的文件,并将其放在/etc/sysconfig下.我稍后尝试使用lookup模块在变量中读取它,但它在下面抛出错误: 致命:[ansible_vm1]:失败! => {“失败":true,"msg":“无法在查找中找到文件:/etc/sysconfig/idb_EndPoint"} 但是我正在生成idb_EndPoin
..
我正在使用ansible 2.1.我具有以下清单主机文件,并且该角色由需要访问主机文件变量的播放所调用.关于如何访问它的任何想法(当前出现错误): 主机文件 [test1] test-1 ansible_ssh_host=abc.def.ghi.jkl ansible_ssh_port=1212 [test2] test2-1 ansible_ssh_host=abc.def.ghi
..
说我有这本字典 war_files: server1: - file1.war - file2.war server2: - file1.war - file2.war - file3.war 现在,我只想遍历每个项目(键),然后遍历键(值)中的每个项目.我做到了 - name: Loop over the dictionary debug: msg
..
我正在使用ansible在不同的AZ中创建实例,我在这里面临两个问题: 我需要在AZ中创建3个实例,但是下面的播放创建了6个实例,使得AZ-a中的3个实例和AZ-b中的3个实例 我正在尝试使用创建序列时标记这些实例,但是我无法传递/遍历json 返回. 这是戏剧: --- - name: Create ES Master Node instances ec2:
..
我试图设置一个由2个mysql主机组成的主机组的mysql主从复制. 这是我的情况: 我在第一台主机上运行一个任务,并跳过第二台主机,因此第一台任务(即主复制状态)返回一些值,例如Position,File等. 然后,我在第二个主机中运行另一个任务(跳过第一个主机),该任务使用第一个任务的返回值,例如master.Position,master.File等. 现在,当我运行
..
对于我正在开发的角色,我需要验证内核版本是否大于特定版本. 我已经找到ansible_kernel值,但是有一种简单的方法可以将其与其他版本进行比较吗?我以为我可能会手动将'.和&比较数字,但是我什至找不到友好的过滤器来炸开版本字符串,所以我很茫然. 谢谢. T 解决方案 有一个为此进行测试: {{ ansible_distribution_version | ve
..
Ansible支持使用Python编写的自定义模块。 对于非本地(本地均值连接)的执行类型:本地& 主机:localhost ),Ansible ssh 的python软件包到远程节点,每次播放。 Go中是否支持书写模块? 如果是,这些模块可以是远程执行类型吗?因为Go工件是二进制工件。 解决方案 任务是使用模块实现的。大多数模块都是用Python编写的,但您可以根据需要
..
我在centos中使用ansible 2.4,试图在远程服务器上运行以下脚本并获取输出。这里的问题是yum info输出也以json格式显示。但是我只需要显示输出。如何删除json格式。 --- -主机:GeneralServer 任务: -名称:检查服务状态 shell:systemctl status {{item}} with_items: -httpd -cro
..
我想根据条件摆脱with_items循环。出于参数考虑,该条件是命令的stdout是否等于特定字符串。 显然,以下示例不起作用,但这是我想要的想法 例如: -名称:测试循环 shell:“ echo {{item}}” with_items: -“一个” -“两个” -“三个” 注册: shell_command#在以下情况下注册shell命令及其属性 :shell_
..
我的可折叠剧本中有以下 vars ,我具有以下结构 域: -{main:'local1.com',sans:['test.local1.com','test2.local.com']} -{main:' local3.com'} -{main:'local4.com'} 我的 conf.j2 中的以下内容 {%在域中%} [[acme.domains]]
..
我正在尝试使用ansible获取已经存在并附加到ec2实例的aws卷ID。 我有一个使用ec2_remote_facts模块的查找任务,该任务获取ec2实例的详细信息,包括卷ID详细信息 任务: -名称:查找ec2虚拟机 ec2_remote_facts: aws_access_key:“ {{aws_access_key}}” aws_secret_key:“ {{aws_se
..
我当前正在查询多个数据库并捕获查询结果 我这样做的方式是,我编写了一个复制shell脚本的任务,如下所示: #!/bin/bash source $HOME/bin/gsd_xenv $1 &> /dev/null sqlplus -s
..
我有一个组tgt-cluster包括3个主机.我已写下角色来部署在tgt-cluster组上执行的容器.我正在控制要使用with_sequence部署的容器的数量.我的任务看起来像这样. - name: Deploy Container docker_container: name: "C{{ item }}" image: "{{ image_name }}:{{ i
..
我有一个名为test.py的Python脚本,该脚本是: #!/usr/bin/python a = "A:2\nB:5" print a 现在在我的Ansible剧本中,我正在运行此脚本,并使用此任务将输出注册到变量中 - name: Create variable from the command command: "python ./test.py" register
..
我想写一个python脚本,它将调用现有Ansible剧本,因为它去(因为我要循环剧目,同时遍历的变量列表)。 这文章解释得很好,为ansible pre-2.0:运行使用Python API ansible-剧本 本文档介绍非常好,如果你正在写在脚本中一个新的剧本: HTTP: //docs.ansible.com/ansible/developing_api.html 但我不明白如何使用
..