:
不管当前客户端情况如何,都默认按照次序执行,这样次序执行就会造成问题,如果更新了配置文件,将来复制了配置文件,将服务启动起来,结果再次更新配置文件,再用playbook执行,配置文件是更新了,但是由于服务已经启动,就不会重启了
handler和task是平级关系,监控task的action动作,其中一个动作执行成功了,将会出发handlers的定义的一些命令,
需要配合,notify通知,
handler处理操作(触发器)
希望某个操作发生变化了,希望通知handler来触发操作
把配置文件放到files,可以作为相对路径
修改配置文件
之前因为都安装了,所以这次先卸载
-C试着检查跑一次
端口正常启动
现在修改配置文件
重新执行,配置文件进行修改,服务已经启动,就不会再重启了
依然是80端口
现在想如果配置文件改变,服务会自动重启,需要借助handler实现
再执行一次(需要再改一次配置文件
现在重启,9527端口成功开启
当配置文件复制过去,重启服务,检查服务是否正常启动
killall -0探测此服务是否成功启动,如果返回非0 ,就说明nginx服务有问题
加标签效果,就是将来可以调用标签内容,通过标签指定关键字来调用它,可以单独的只执行标签
把服务停了
可以单独的只执行标签
确认9527端口没有了
可以挑着标签执行
也可以针对多个标签都执行
验证包是否成功卸载
可以只挑安装和启动服务的标签
80端口打开
能否两个动作使用一个标签
则两个动作都对应httpd是否可行
先卸载
可以使用同一个标签
可以只看标签信息
setup是个模块,里面内置了系统中的变量
之前的所有主机都是按照这个顺序执行,不是很灵活,可以用变量
setup是系统内置变量,可以看到主机信息
其实调用的就是setup模块里的内容
filter专门的过滤
这些变量可以将来作为判断条件,当是什么什么改怎么这么
想看eth0网卡的配置就可以筛选出来
rx发送包,tx接收包
可以在playbook定义或引用变量
pkname有值了就进行操作 ,变量赋值有-e选项
ftp服务21端口

也可以定义多个变量

想对两个包进行安装

成功安装

卸载安装的

也可以在playbook中直接定义变量

执行成功



可以以定义每个主机不同的端口号




成功

因为www和magedu.com是固定就可以定义为一个变量




这样使用起来更加灵活


设置的值有效还是主机清单的值有效

命令行的优先级一般优于配置文件





**
hosts
task
user
remote
handler 配合notify使用的 ,触发器,当一个动作发生的时候,触发另一个动作
tags标签
变量的使用
,命令行中定义,主机清单定义,还可以在playbook中定义**