实例演示:
command模块: -m command可以忽略
批量创建用户test1,并在主控端进行验证,已经创建成功:getent passwd test1
被控端也可以验证:
但是使用command模块有局限性,它不支持一些特殊符号,例如$,|等,因此无法给创建的用户设置密码,所以需要用到另一个模块,shell模块。
shell模块
利用shell模块给test1用户设置密码
利用shell模块查找文件
如果存在脚本文件需要执行时,需要多次复制脚本文件到不同被控端主机,因此ansible提供了script模块,很方便的将主控端编写好的脚本自动复制到其他多个不同的被控端主机上去
script模块
在主控端上编写一个shell脚本
加执行权限后,在主控端利用script模块将脚本自动复制到其他两个被控端主机上去
其中有一些参数需要注意:
chdir参数 : 此参数的作用就是指定一个远程主机中的目录,在执行对应的脚本之前,会先进入到 chdir 参数指定的目录中。
creates参数 :使用此参数指定一个远程主机中的文件,当指定的文件存在时,就不执行对应脚本
removes参数 :使用此参数指定一个远程主机中的文件,当指定的文件不存在时,就不执行对应脚本