目录
1.剧本(playbook)
1.playbook介绍
2. playbooks 的组成
3.案例:编写httpd的playbook
4.定义、引用变量
5.指定远程主机sudo切换用户
6.when条件判断
7.迭代
2.playbook的模块
1.Templates 模块
2.tags 模块
3.Roles 模块
1.剧本(playbook)
1.playbook介绍
playbook是ansible用于配置,部署,和管理被控节点的剧本。通过playbook的详细描述,执行其中的tasks,可以让远端主机达到预期的状态。playbook是由一个或多个”play”组成的列表。 当对一台机器做环境初始化的时候往往需要不止做一件事情,这时使用playbook会更加适合。通过playbook你可以一次在多台机器执行多个指令。通过这种预先设计的配置保持了机器的配置统一,并很简单的执行日常任务。
ansible通过不同的模块实现相应的管理,管理的方式通过定义的清单文件(hosts)所管理的主机包括认证的方式连接的端口等。所有的功能都是通过调用不同的模块(modules)来完成不同的功能的。不管是执行单条命令还是play-book都是基于清单文件。
playbook格式:
(1)playbook由YMAL语言编写。YMAL格式是类似于JSON的文件格式,便于人理解和阅读,同时便于书写。文章来源:https://www.toymoban.com/news/detail-432376.html
(2)一个剧本里面可以有多个play,每个play只能有一个tasks,每个tasks可以有多个name。文章来源地址https://www.toymoban.com/news/detail-432376.html
2. playbooks 的组成
- Tasks:任务,即通过 task 调用 ansible 的模块将多个操作组织在一个playbook 中运行。
- Variables:变量
- Templates:模板
- Handlers:处理器,当 changed 状态条件满足时,(notify)触发执行的操作。
- Roles:角色
3.案例:编写httpd的playbook
vim test1.yaml
--- #yaml文件以---开头,以表明这是一个yaml文件,可省略
- name: first play #定义一个play的名称,可省略
gather_facts: false #设置不进行facts信息收集,这可以加快执行速度,可省略
hosts: webservers #指定要执行任务的被管理主机组,如多个主机组用冒号分隔
remote_user: root #指定被管理主机上执行任务的用户
tasks: #定义任务列表,任务列表中的各任务按次序逐个在hosts中指定的主机上执行
- name: test connection #自定义任务名称
ping:
到了这里,关于Ansible的脚本-playbook 剧本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!