3.Ansible.playbook剧本
就是一个文件
playbook其实是由play和task组成。(文件)
play:我要操作谁(主机或者主机组)
task:具体执行什么任务 ( 模块 )
总结:我要对哪个主机做什么任务,可以是一个任务,也可以是多个任务。而每一个任务都需要一个模块来实现。
其实就是使用多个不同的模块,来完成一件事情。playbook。
例如:部署一个nginx
部署nginx会涉及到以下3个步骤,每一个步骤都是一个模块,通过三个模块来完成部署nginx这一件事情:
安装:yum
配置:copy
启动:systemd
playbook是对AD-hoc的一种编排方式
playbook可以持久运行,AD-hoc只能临时运行
playbook适合做复杂的任务,AD-hoc适合做快速简单的任务
playbook可以控制任务的先后顺序
yml语法
缩进:固定的缩进表示层级关系,每个缩进由两个空格组成, 不能使用tabs
冒号:以冒号结尾的除外,其他所有冒号后面所有必须有一个空格
短横线:短横线后必须加一个空格,多个项使用同样的缩进级别作为同一列表
例:
缩进,冒号
例:
多个项使用同样的缩进级别作为同一列表:
这就是一个列表,有执行的先后顺序
检测写的yml文件是否有误:
ansible-playbook nfs_server.yml --syntax-check
不检测也行,有错会报错