与此类似的问题,但我知道什么是任务,并且找不到标签和角色之间的太多区别。
在我看来,标签可能是角色的更简单版本,它们的唯一用途是通过--tags和--skip-tagsCLI 参数访问。
另一方面,角色用于“自动加载”任务和变量之类的东西吗?
请解释使用角色的好处,因为在我看来,角色要求您为不同的部分(任务、变量等)使用不同的 yaml 文件,我可以使用includeandtags
指令以更少的代码完成。
在我看来,标签可能是角色的更简单版本。
对不起,但这是完全错误的。
角色是独立的可重用单元(具有自己的变量、任务、处理程序甚至插件和模块!)。您可以在多个剧本和/或项目中使用它们。您可以在多个项目之间共享它们。您可以使用角色依赖项。您可以通过外部资源(例如 Ansible Galaxy)重新分发它们。例如,nginx安装和配置nginx服务器的角色,以及apacheapache服务器的角色。
标签用于仅执行项目中的特定任务。您可以用标签标记播放/角色/任务。例如,标记config以仅标记我们nginx和apache角色中与配置相关的任务。因此,稍后您可以执行ansible-playbook -t config site.yml为所有类型的服务器而不是整个剧本运行仅配置任务。
| 归档时间: |
|
| 查看次数: |
1526 次 |
| 最近记录: |