实例学习ansible系列(10)常用模块之script

时间:2022-05-03 19:09:13

知识点:使用script模块可以实现到对象节点上执行本机脚本。有点类似copy+shell+删除copy的脚本的这样一个综合的功能。

事前准备

为了更好地确认其功能,在ansible的控制节点和对象节点上的同样目录放置同样名称内容不同的文件,确认其

  • >能否正常动作
  • >动作后是否能保证对象节点不受影响
[root@host31 ~]# /tmp/hello.sh
this is test from host31
[root@host31 ~]#
[root@host31 ~]# ssh host32 /tmp/hello.sh
hello world ->同样名称 内容不同
[root@host31 ~]#

使用script模块到对象节点上执行本地脚本

[root@host31 ~]# ansible host32 -m script -a /tmp/hello.sh
host32 | SUCCESS => {
"changed": true,
"rc": 0,
"stderr": "",
"stdout": "this is test from host32\r\n",
"stdout_lines": [
"this is test from host32" ->执行结果
]
}
[root@host31 ~]#

执行后确认

[root@host31 ~]# /tmp/hello.sh
this is test from host31
[root@host31 ~]# ssh host32 /tmp/hello.sh
hello world ->未受影响
[root@host31 ~]#