ansible - 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'
解决方案
如果您只想执行一个任务,您可以使用delegate_to
例如:
tasks:
- name: another host execute
command: ls -ltr
delegate_to: "{{ remotehost }}"
服务器应该具有与新主机一起使用的 ssh 连接
推荐阅读
- php - Azure 应用服务:应用程序设置与环境变量 (php-fpm)
- java - 为什么我的卡片布局中没有显示第一个面板
- javascript - 如何在同一函数中将“onclick”事件添加到 .appendChild?
- javascript - 带有 cookie 的 Javascript 覆盖弹出窗口
- arrays - 替代多个 padarray 调用以获取图像的周边掩码
- list - 列表序言中的第二大
- azure - 在 SQL Server Data Tools (SSDT) 中,我们可以使用访问令牌进行单元测试吗?
- python - 不确定浮动对象错误发生在哪里
- excel - Excel/VBA - 提取句子的一部分
- google-apps-script - 在 Google App Script 中创建 OAuth 服务时如何设置资源