首页 > 解决方案 > Ansible 从变量声明主机

问题描述

所以我正在运行一个 ansible playbook,它创建一个服务器(使用 terraform)并将服务器的 IP 地址保存到一个变量中。我想在给定的 IP 地址上执行另一个任务。如何声明新主机?

我试过了:

- hosts: "{{ remotehost }}" tasks: - name: test lineinfile: path: /etc/environment line: test1234

我运行剧本:ansible-playbook variable.yaml --extra-vars='playbook=ip-address'

标签: ansibleansible-inventory

解决方案


如果您只想执行一个任务,您可以使用delegate_to

例如:

tasks:
  - name: another host execute
    command: ls -ltr
    delegate_to: "{{ remotehost }}"

服务器应该具有与新主机一起使用的 ssh 连接


推荐阅读