运行命令 ansible 和 ansible-playbook 有什么区别

adb*_*dkb 5 ansible

我是 ansible 的新手,正在学习 ansible 并致力于定义 ansible 脚本以在服务器上安装 confluent。在查看有关如何定义和运行 ansible 脚本的示例时,一些示例使用“ansible”命令来执行脚本,而一些示例使用“ansible-playbook”命令。但是我一直无法找到它们之间的区别或关于何时使用哪一个的指南。

这两个命令有什么区别?

谢谢

小智 17

Ansible 脚本称为playbooks.

根据定义

剧本是剧本列表。戏剧至少是由主机说明符选择的一组主机(通常由组选择,但有时由主机名全局选择)与在这些主机上运行以定​​义这些系统将执行的角色的任务之间的映射。剧本中可以有一个或多个剧本。

https://docs.ansible.com/ansible/latest/reference_appendices/glossary.html#term-plays

然后,您使用命令执行 playbook ansible-playbook,例如此命令在文件中的服务器test.yml上执行 playbook :allinventory

ansible-playbook test.yml -i inventory all
Run Code Online (Sandbox Code Playgroud)

使用ansible命令,您可以仅对服务器执行任务,例如此命令使用文件中服务器ping上的模块执行任务:allinventory

ansible -m ping -i inventory all
Run Code Online (Sandbox Code Playgroud)

不同之处在于,ansible-playbook您可以执行包含很多任务的剧本,而ansible您只能执行一个任务。

欢迎来到 ansible 世界。Red Hat提供了ansible的入门课程,你可以学习一下,对你有很大帮助。

https://www.redhat.com/en/services/training/do007-ansible-essentials-simplicity-automation-technical-overview

  • 我清楚地了解这两个命令的功能,但分离的“意图”对我来说仍然模糊。请纠正我,但“ansible”的用例只是“ansible-playbook”的一个特殊情况(需要一个额外的命令开关),但与“ansible-playbook”相比,发生的情况要少得多,这是非常尴尬的输入。 (3认同)