1.playbook类似于shell脚本
用—开头,…结尾(但是可以不写)
严格遵守缩进和大小写
name是描述,task是动作,一个name只能包含一个task
两个缩进
1 - linux
2 shell: bash
3 ps: ax
4 gongsi: wang
尝试写一个playbook
tasks:后面又成了新的字典,所以另起一行按照-name的格式继续写。在12中执行hostname这个命令
相当于
[root@bastion ansible]# ansible 172.25.250.12 -m shell -a 'hostname'
[root@bastion ansible]# ansible-playbook -C chihao1.yml
检查语法格式
[root@bastion ansible]# ansible-playbook chihao1.yml
执行playbook
[root@bastion ansible]# ansible-playbook --list-hosts chihao1.yml
列出执行主机
[root@bastion ansible]# ansible-playbook --list-tasks chihao1.yml
列出动作
[root@bastion ansible]# ansible-playbook --limit 172.25.250.11 chihao1.yml -C
检测在哪几台主机执行的
[root@bastion ansible]# ansible-playbook chihao1.yml -vvv
详细地展示执行过程
推荐写一个
[root@bastion ansible]# vim ~/.vimrc
方便书写playbook
一个task有两个动作,两个列表元素
两个不能写在一起
列表当中的每一个元素之前必须要加-
如果不写name,那么就要在shell和之前加上-,严格按照格式
3.简单示例和vim的设定
name可以不写
效果是一样的
name可以不写,但是hosts和tasks都必须写
一般都是按照这种格式写的
写一个playbook,利用dnf模块,service模块,firewall模块来安装配置阿帕齐
[root@bastion ~]# ansible-doc firewalld
如果忘记了就查看帮助
输入EXAMPLE,直接复制粘贴就行
再书写默认发布目录
书写规矩:开头—
-name后面空格
模块:
模块的子元素,要空两格
如上
tasks只有一个,后面的都是子模块
还是编辑~/.vimrc
FileType yaml就是只针对yaml格式
ts=2表示tab键是两个空格
ai表示自动缩进
et表示把tab转换成空格
sw=2 表示缩进长度为2个空格。