可靠的控制节点-它能自我配置吗



我刚刚开始使用Ansible-如果这个问题被误导了,请耐心等待。

我在网络上有几个服务器,其中一个我计划设置为控制节点(Rhel7.9(。我想在该系统上本地使用ansible,使用一些感兴趣的剧本来配置自己,并在推广到其他系统之前将其作为一种测试。我正在设置我的ansible配置和清单——从我读到的所有内容来看,它似乎是为了简单地将配置推送到托管节点。。。而不是为你所在的机器运行1次。

如果我只是想从易感星系中提取一个剧本,并在控制节点上本地运行它呢?

这会像运行一样简单吗

ansible-playbook -i "localhost," -c local playbook.yml

我甚至需要为我所在的机器设置库存和配置吗?有没有因为我的愚蠢而错过的最佳实践?

谢谢!

Q:">从Ansible Galaxy中提取一个剧本,并在控制节点上本地运行">

A: 是的。例如战术手册

shell> cat playbook.yml
- hosts: all
gather_facts: false
tasks:
- debug:
var: inventory_hostname

就像运行一样简单

shell> ansible-playbook playbook.yml -i localhost,
PLAY [all] **********************************************************************
TASK [debug] ********************************************************************
ok: [localhost] => 
inventory_hostname: localhost
...

最佳实践

  • 查看剧本并确保您了解剧本将要配置的内容。

  • 首先检查语法

shell> ansible-playbook playbook.yml -i localhost, --syntax-check
  • 试运行剧本并显示更改
shell> ansible-playbook playbook.yml -i localhost, --check --diff
  • 如果你认为一切都好,那就照着剧本
shell> ansible-playbook playbook.yml -i localhost,

特权升级

以用户身份运行Ansible,成为root。请参阅上面关于如何做到这一点的链接。例如,编辑剧本

shell> cat playbook.yml
- hosts: localhost
gather_facts: false
become: true
tasks:
- command: ls -la /root/.ssh
register: result
- debug:
var: result.stdout_lines

最新更新