在 Ansible 中,如何在没有 ssh 的情况下在本地运行我的 playbook?

pla*_*unt 3 ssh localhost ansible ansible-inventory

我想在 Ansible 中无需 ssh 的情况下在 localhost 上运行我的 playbook。我怎样才能做到这一点?我有一个虚拟机。我希望它在那台机器上本地运行。

Vla*_*tka 5

使用connection: local。请参阅本地剧本。例如

- hosts: localhost
  connection: local
  tasks:
    - command: echo Hello World!
      register: result
    - debug:
        var: result.stdout
Run Code Online (Sandbox Code Playgroud)

给出

TASK [debug] ***************************************************************
ok: [localhost] => 
  result.stdout: Hello World!
Run Code Online (Sandbox Code Playgroud)

如果您想调试连接,请运行带有三重-vvv选项的剧本

shell> ansible-playbook playbook.yml -vvv
Run Code Online (Sandbox Code Playgroud)

您将在输出中看到连接的详细信息,例如

...
TASK [command] ************************************************************
task path: /scratch/playbook.yml:4
<127.0.0.1> ESTABLISH LOCAL CONNECTION FOR USER: admin
...
Run Code Online (Sandbox Code Playgroud)