如何更改ansible\u default\u ipv4?

我想将ansible_default_ipv4更改为指向eth1而不是eth0。我可以在playbook中或通过--extra-vars选项执行此操作吗?ip-4路由获取8.8.8.8以获取默认的ipv4接口。您可以将eth1设置为默认路由,它将返回该路由 或者您可以使用 PS:使用set\u fact覆盖ansible\u default\u ipv4事实,但由于缓存、作用域等原因,它有自己的缺陷,另一个选项总是显式引用接口。 不同的云提供商有不同的约定将私有(通常为10.x.y.z)管理网络

Ansible:在循环中为每个项目设置标记

是否可以使用\u item语句为中的每个项目设置标记 假设我有一个任务: - name: ensure required packages are installed apt: pkg={{ item }} state=present with_items: - package_1 - package_2 sudo: yes 当用户在命令行中定义--标记“second”时,我只希望安装包2 是否可以使用标签表达式或任何其他方式来获得所需的行为?我认为这是不可能的。y

Ansible synchronize不读取Ansible_sudo_pass变量

我无法让Ansible的同步模块工作。我有一个非常简单的任务: - name: Copy project local files synchronize: src="{{ item.src }}" dest="{{ item.dest }}" with_items: project_local_files 当我执行ansible playbook playbook.yml--tags deploy--ask su pass--ask pass时,所有任务都

Ansible 2.0.0.2:Ansible不';Don’我不尊重u";转换

我正在探索Raspberry PI 2上新安装的Archlinux安装,如下所示: ansible-i PI2 arch-m设置-c paramiko-k-u报警-vvvv 这对我来说意味着:针对与用户“报警”连接的IP启动设置模块,询问该特定用户的密码。然而,最终尝试连接的用户是“root” 以下是调试响应: 加载了stdout类型的最小回调,v2.0 为用户建立连接:端口22上的root用户到192.168.1.18 192.168.1.18 |遥不可及!=>{ “更改”:错误, “msg”

ansible滚动重启Playbook

各位, 我希望在每台主机上分别重新启动一个服务,并等待用户输入,然后再继续运行到清单中的下一台主机 目前,如果您有以下情况: - name: Restart something command: service foo restart tags: - foo - name: wait pause: prompt="Make sure org.foo.FooOverload exception is not present" tags: - foo 它只会提示一次

具有动态组名的Ansible嵌套循环

我的vars文件: applications: - name: server_1 deploy: True branch: master group: frontend - name: server_2 deploy: True branch: master group: backend 我的任务是 - name: deploy boxer command: "curl http://example.com?hosts={{item.

错误:配置_模板不是Ansible任务或处理程序中的合法参数

我正在尝试通过Ansible为一个节点安装Openstack,使用All-IN-ONE 当我运行setup everything.yml文件时,我收到以下错误: 错误:配置_模板不是Ansible任务或处理程序中的合法参数 您能在这个问题上提供帮助吗?config\u template是OpenStack团队开发的自定义模块。如果您得到ERROR:config_模板不是Ansible任务或处理程序中的合法参数,这可能意味着Ansible找不到模块,也可能是缩进/语法错误。检查模块config_模

使ansible基于变量在剧本中多次运行任务

我正在尝试使用Ansible URI模块登录多个网页,并检查环境是否正常工作 目前,我希望它只登录到2个网页(Peoplesoft envs),但我希望有一个vars文件,我可以在每次查看新页面时添加该文件 这是我到目前为止所拥有的,但它似乎没有登录到这两个页面,只有其中一个…任何帮助都将不胜感激 剧本- --- - name: Run Selenium Test Scripts hosts: local vars_files: - /etc/ansible/uri_module/vars_

错误:composer不是Ansible任务或处理程序中的合法参数

嗨,我一直在尝试让ansible run composer安装,以便在我的laravel文件中安装composer.json中的所有内容。但是我得到了这个错误:composer不是Ansible任务或处理程序中的合法参数,我不确定是什么导致了这个错误。下面是我剧本的内容 --- - name: Install PHP5+ apt: name={{ item }} update_cache=yes state=latest with_items: - git - mcryp

Ansible查找文件变量

我试图通过电子邮件发送一个模板文件,该文件在html中有变量,例如{{user\u name},html在我的邮件客户端中正确呈现,但是{{user\u name}}无法解析并显示为字符串{user\u name} - name: Send e-mail to a bunch of users, attaching files mail: host: mail.server.com subtype: html subject: email template b

Ansible抱怨说;MySQL python模块是必需的;

我在本地机器(WSL;Ubuntu)上安装了Ansible 2.6.1: 我的目标机器正在运行Ubuntu 16.04-LTS 我正在使用此任务安装python3 mysqldb: - name: "Debian | Install Mysql Client package" apt: name: "{{ item }}" state: present with_items: - mysql-client - python3-dev

如何将行附加到Ansible controller上的文件(从远程设备收集数据)

请原谅我的无知,我仍在学习Ansible>以下是我试图做的: -连接到设备✔ -抓取数据✔ (json格式) -反序列化(获取返回中每个json项的行✔ -写入文件✔ 对于以上所有内容,我使用的是副本和Jinja模板 {% for item in results.response %} {% for value in item.values() %}{{ value }}{% if not loop.last %},{% endif %}{% endfor %} {

消除Ansible打印中不需要的字符

我通过register命令将信息存储在ansible中的可变主机中。然后我尝试一行接一行地打印变量主机的内容(信息1到3) 信息-1 信息-2 信息-3 相反,我在打印时得到了这个结果。 [u'INFORMATION-1'],[u'INFORMATION-2'],[u'INFORMATION-3'] 你知道如何消除括号[]、u和撇号(')等不需要的字符,并以我想要的格式打印结果吗 你知道如何消除括号[]、u和撇号(')等不需要的字符,并以我想要的格式打印结果吗 这是因为无论你打印什么东西,实际上

在Ansible中,如何获取分配给主机的角色列表?

在一个特定的任务中,我想找出分配给当前主机的角色列表,并在此基础上更改一些配置。这可能吗?似乎是一个XY问题……没错——的确如此。我已经找到了解决原始问题的另一种方法,但我想探索这种特殊方法是否可行。这是不可能的。似乎是一个XY问题……没错——是的。我已经找到了解决原始问题的另一种方法,但我想探索这种方法是否可行,这是不可能的。

Ansible 如何在游戏中忽略连接错误

当无法访问某些主机时,我想继续我的剧本,以执行其他一些任务。然而,ignore_错误似乎不起作用。未打印调试消息。 ansible版本是2.5.4。在这个版本中有没有办法做到这一点 - name: check accessibility hosts: myhosts tasks: - ping: ignore_errors: yes - fail: msg: "Host {{ansible_hostname}} is not accessibl

带复合变量的条件时的Ansible

我知道ansible when语句不应该包含任何jinja2分隔符{{}。 但是,在以下情况下,是否有办法避免这种情况: vars: xvar: ['/path/file-blabla-abc', '/path/file-blabla-def'] avar: blabla bvar: def tasks: - debug: msg: "yippie" when: "'/path/file-{{ avar }}-{{ bvar }}' in xvar" 给了我预期的结果

基于满足条件Ansible填充变量

有人知道一篇好文章解释了如何根据满足的条件填充变量吗 例如: - name: test file: path: "{{ item.path }}" state: directory owner: "{{ item.owner }}" group: "{{ item.group }}" mode: 0755 loop: - { path: "{{ file_location }}", owner: "{{ user }}", group:

Ansible 无法访问主机时恢复和/或忽略致命错误

如何捕获致命的无法访问主机错误: fatal: [x.x.x.x]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: xxxx@x.x.x.x.: Permission denied (publickey).", "unreachable": true} 似乎忽略错误:yes不起作用,“rescue”也不起作用 使用Ansible 2.8.3确定,解决它: ignore_u

Ansible 运行meta:在循环中刷新\u库存?

我正在使用Ansible和a在libvirt中构建一些虚拟机。创建机器后,我需要等待它们获取ip地址。我不能简单地这样做: - wait_for_connection: 因为在创建虚拟机之后,它们就没有ip地址了。我需要做的是: - name: wait until node has acquired an address meta: refresh_inventory until: ansible_host|ipaddr retries: 30 delay: 1 - nam

如何将这两个ansible剧本连接起来,这两个剧本解决了一个与JIRA自动化相关的问题,并使用了他的RESTAPI

我试图解决的问题是使用JIRARESTAPI向JIRA添加用户。我想在createUser.yml文件中替换的行如下 loop: "{{ users }}") 我想用描述为JSON文件的用户形成的列表来代替它(继续阅读关于如何实现用户和列表的详细信息) 我在这里给你发邮件 createUser.yml文件 - hosts: localhost gather_facts: false vars_files: - vars.yml tasks: - name: Cr

在Ansible输出中显示角色?

我希望更好地调试Ansible脚本,并在已打印的任务名称之外搜索打印角色的选项。我四处寻找,但找不到任何解决办法,因此需要帮助 这就是我目前的输出 ### RUN ansible-playbook - install [WARNING]: Not prompting as we are not in interactive mode PLAY [Setup system] ************************************************************ T

与ansible'合作;s变量、列表和指令

我想使用ansible vault部署敏感数据。基本上,我希望遍历每个存储库,遍历其配置文件,查找保管在vault中的秘密,并用vault中的加密值替换它们。我希望将存储库的值作为一个变量传递,以查看秘密,但不断出现错误 我尝试了各种方法,但不确定如何使用这些数据结构。 非常感谢您的建议 我的代码结构: vars: 存储库:[“service1”、“service2”] 服务1: service1.conf:[“保险库用户1”、“保险库密码1”] service1.env:[“保险库加密1”]

Ansible-如何在启用差异的情况下复制模块显示内容和模式差异?

我正在尝试使用检查模式中的模板和复制模块查看我的存储库和目标文件之间的差异。我为每个文件定义了模式和所有权 我的行为是: 如果存在内容差异和模式差异-仅显示内容差异 如果内容相同,但模式不同,则仅显示模式差异 我想要的行为是: 如果存在内容差异和模式差异-显示内容差异和模式差异

如果Ansible中嵌套列表中的变量为true,则执行任务

如果嵌套堆栈中的变量为true,我将尝试在Ansible中执行任务,但无法使其正常工作 我的列表如下所示: apache_vhosts_ssl: - servername: local.host.com documentroot: "/var/www/html/web" - servername: webcontent1.com documentroot: "/var/www/webcontent1.com/web" - ser

Ansible win_find-不输入文件夹IIS日志

在LogFiles文件夹中,日志位于以下子文件夹中: 试验 W3SVC990866148 W3SVC1150242952 日志文件位于这些文件夹中。Ansible进入测试文件夹,但突然没有。为什么?UZ的管理员权限,根据该权限,用户可以 测试文件夹是手动创建的。如果路径:C:\inetpub\logs\LogFiles\W3SVC990866148 \-则他会看到所有文件 tasks: - name: Find older logs file win_find:

Ansible 关闭特定VLAN中未使用的Cisco IOS交换机接口

我希望改进现有的Ansible剧本。我现在的剧本使用iosfacts查找处于关闭状态的接口(无论是notconnect还是disabled),并仅向这些接口发出关闭命令。我希望更深入一点,做同样的事情,但只在特定的VLAN中的接口上,比如说VLAN 10。这是我目前的剧本: --- -名称:关闭未使用的端口 主机:交换机 连接:网络\u cli 收集事实:错误 变量: 项目描述:“{{Item.value.description}” 任务: -姓名:获取信息 ios_事实: 集合子集:接口 注册

Ansible 如何仅删除存在的*.web文件

我需要创建一个Ansible playbook来删除特定目录中的*.web文件,前提是这些文件存在 操作系统:分操作系统,红帽5x,6x 我尝试了以下方法,但没有成功: - stat: path=/opt/app/jboss/configuration/*.web register: web - shell: rm -rf /opt/app/jboss/configuration/*.web when: web.stat.exists rm-rf不关心文件是否存在。它不会抱怨。

Ansible VMware-从模板部署-应关闭VM电源

事实上,我正在使用Ansible自动化虚拟机的部署过程。我能够在我的ESX环境中部署带有Ansible的VM,此VM将从模板中解包 因此,现在我需要确保VM在部署时已关闭电源。 当我尝试添加命令时: state: poweredoff 在Ansible中,在我的剧本中,我得到了一个错误。所以我想我需要调整这个设置,可能是在VMware模板的VMX文件中 但是我在哪里可以找到一个特定的参数呢 我希望你们能帮我 请检查你的拼写。从:state:powered_off已执行此操作。仍然收到错误致命:

Ansible ec2:“;本模块所需的boto“;

当我运行这个简单的Ansible剧本时: - name: EC2 Test Example hosts: localhost connection: local gather_facts: False tasks: - name: EC2 Instance ec2: # Amazon EC2 key pair name key_name: my-key-pair # Amazon EC2 Security Group

将shell重写为Ansible任务

如何将shell任务重写为文件模块任务 比如说 - name: Change permissions. shell: "chown -R {{ project_user }}:{{ project_user }} {{ project_root }}" 如何在帮助下重写上述代码 这很简单: - file: path: "{{ project_root }}" owner: "{{ project_user }}" group: "{{ project_use

ansible命令列出所有已知主机

Ansible已安装在单独的ec2实例中。 我需要在ec2实例上安装apache 正在尝试查找已知主机的列表 我运行这个命令 ansible-i hosts all--列出主机 并得到这个消息 [警告]:找不到主机文件:主机 [警告]:提供的主机列表为空,只有本地主机可用 [警告]:没有匹配的主机,无需执行任何操作-列出主机-列出与限制匹配的主机。输入是-i。您的资源清册是一个名为hosts的文件,该文件不存在 您需要从某处创建或生成库存文件。Ansible无法直观地知道您的库存是什么。如果您是

如果库存仅为本地主机,则可与多个组共享ansible变量

我使用ansible通过本地机器上的kubectl命令将作业/配置发送到我的k8s集群。我有我的清单文件设置,这样每个集群都是它自己的组,每个集群基本上都是到本地主机的连接 # Inventory File # [east.k.example.com] localhost ansible_connection=local [east2.k.example.com] localhost ansible_connection=local 然后,

Ansible:如何使用寄存器选择特定字段

我使用的是一个包特定的命令,它没有现有的模块。命令的输出(stdout)为0或1。我正在尝试将stdout的值分配给一个变量,以便以后在剧本中使用。然而,我似乎无法孤立stdout,它显然正在被捕获 ok: [hostname1] => { "dmstate": { "changed": true, "msg": "All items completed", "results": [ { "_ansible_item_resu

Ansible vault未正确传递到剧本

我正在尝试使用ansible和ansible vault为用户提供服务。这是我当前的目录结构: |-- ansible-test.out |-- group_vars |-- inventory |-- roles | |-- bsd_sudoers | | |-- tasks | | |-- templates | | | `-- cde-admins | | `-- vars | `-- bsd_users | |-- files |

为什么Ansible注册变量未定义?

我有一个非常简单的Ansible任务模块,它执行以下操作: # Runs a couple of plays successfully... - name: check if php-fastcgi process running shell: ps -eaf | grep php5-cgi | grep -v grep register: php-fastcgi-status ignore_errors: True changed_when: False - debug:

Ansible“;模块执行期间出现意外故障“;错误 1.主机文件内容 3. /etc/ansible/group_变量/液滴含量: 4.登录并运行以下命令:

Ansible 2.4.1.0 配置文件=/etc/ansible/ansible.cfg makedirs中的文件“/usr/lib/python2.7/os.py”,第157行 mkdir(名称、模式) OSError:[Errno 13]权限被拒绝:“~” 如果有人能帮上忙,我会很感激的 谢谢。在文档中,“Ansible 2.0已经弃用了来自Ansible_ssh_用户、Ansible_ssh_主机和Ansible_ssh_端口的“ssh”以成为Ansible_用户、Ansible_主机

Ansible使用将ssh公钥从一个帐户复制到另一个帐户

我面临在远程服务器上的两个帐户之间复制ssh密钥的问题。我有一个名为“rmt”的远程服务器,在rmt上我有一个名为“clado”的帐户,我想使用Ansible将/root/.ssh/authorized_keys(在rmt上)复制到/home/clado/.ssh/authorized_keys(在rmt上) 我得到了以下示例代码: - name: Set authorized key in alternate location authorized_key: user: charl

Ansible:将命令参数作为列表传递

我想在一个变量中以列表的形式存储多个参数 vars: my_args: - --verbose - --quiet - --verify 然后将列表作为带引号的参数传递给命令。最明显的join 过滤器没有像我预期的那样工作。它生成一个包含所有列表元素的单词,而不是每个列表元素一个单词: tasks: - command: printf '%s\n' "{{ my_args | join(' ') }}" ... changed: [localhost] =>

ansible 2.5的模块副本未按预期工作(返回值中出现问题)

我对ansible 2.5有问题,我的行为与2.2不同。 当我复制一个文件夹时,其中包含一个文件夹,其中包含一个文件。我得到的是同意而不是改变 以下是我的例子: - name: copy files share copy: dest: "/opt/" mode: 0644 owner: root group: root src: "./share" 运行ansible后得到的状态是OK且未更改。即使它正确地完成了任务。 有人能给我解释一下

如何在Ansible中使用VirtualNVRapper创建virtualenv

如何在ansible模块中使用VirtualNVRapper创建virtualenv。不使用shell命令和mkvirtualenv命令 我尝试将mkvirtualenv作为ansible playbook中的任务之一 - name: Run virtualenvwrapper commands to create a virtualenv mkvirtualenv: "/home/miniconda3/bin/virtualenvwrapper.sh" virtualenv:

Ansible 在角色执行期间为其他主机执行任务

我尝试在主机上运行角色(Ansistrano),这很好: --- - name: perform role hosts: host_one roles: - ansistrano 我可以指定角色中包含的其他剧本: ansistrano_specify_playbook: playbook.yml 但是,现在我必须为另一个主机执行一个任务,这是角色执行过程中剧本的一部分。我无法通过导入剧本实现这一点 - name: include task for other host

Ansible-访问dict of dict of dict of dict

我有一个具有以下数据结构的外部数据文件: --- server1: service_name: jboss_prod_1: enabled: "True" started: "True" jboss_prod_2: enabled: "True" started: "True" jboss_prod_3: enabled: "True" started: "True" jboss_prod

Ansible Ansibl vault:来自终端的密码

如何将存储在环境变量中的ansible vault的密码传递给命令 ansible-playbook play.yml -i hosts --ask-vault-pass 我无法传递文件或使用交互式shell输入密码,因为这些命令是从不支持它们的管道运行的 我试过类似的东西 echo $PASS | ansible-playbook play.yml -i hosts --ask-vault-pass 但这并不奏效 我阅读了文档,但在那里找不到解决方案。github中有一个问题需要解决 作为

在Rundeck或Ansible中,您将主机定位在哪里?

我的问题是,当从Rundeck运行ansible playbook时,我应该在哪里设置目标主机? 在Rundeck作业/工作流或ansible playbook中?要使用ansible资源清册,需要添加新的ansible节点源。看一看。尤其是第三步 在Rundeck中添加Ansible节点源,您可以在Rundeck节点列表中看到Ansible资源清册(通常位于/etc/Ansible/hosts)。因此,您可以使用两个节点源(之前定义的Ansible资源清册和Rundeck资源清册:可能是res

Ansible hosts要设置为传递的变量的子字符串

我有一个这样的剧本: - name: Perform an action on a Runtime hosts: all roles: - role: mule_action_on_Runtime 调用时的变量(--extra vars'mule\u runtime=MuleS01-3.7.3-Testing')具有所需主机的前缀(MuleS01)。我想设置主机:MuleS01。如何做到这一点?鉴于您的模式始终是partWant part在otherDash之后关心另一个part您

无效用户的Ansible Cisco配置符合性检查

我正在尝试使用Ansible验证Cisco配置。我想知道除了有效的用户之外,是否配置了其他用户 有效用户: 用户名admin, 用户名只读 无效用户: 用户名secretbackdoor 我试图创建一个用户列表,然后标记任何无效的用户。我目前掌握的守则如下: --- - hosts: cisco gather_facts: no tasks: - name: show run ios_command: commands: - show run registe

在Ansible中使用json_查询查询字典列表中包含的字典列表

我在使用json_查询搜索下面的数据结构时遇到了问题,我想从中创建两个单独的列表 对于其成员列表包含子路径键且其值包含特定值的条目,列表1应包含每个字典中的名称键 对于成员列表不包含子路径键且名称包含特定值的条目,列表2应包含每个字典中的名称键 到目前为止,我能找到的最接近的词典是那些其成员词典具有子路径键的词典: - name: debug debug: msg: "{{ device_facts.gtm_a_pools | json_query(query) }}&qu

cat位于Ansible中文件目录中的文件

这是我的角色结构: $ tree my_role . ├── my_role │   ├── defaults │   │   └── main.yml │   ├── files │   │   └── foo.conf │   ├── handlers │   │   └── main.yml │   ├── meta │   │   └── main.yml │   ├── README.md │   ├── tasks │   │   └── main.yml │   ├── templ

上一页   1   2   3    4   5   6  ... 下一页 最后一页 共 195 页