ndor preset: di>
Active: inactive (dead)
Docs: man:httpd.service(8)
lines 1-4/4 (END)
//启动受控主机上的httpd服务
[root@ansible ~]# ansible 192.168.118.130 -m service -a 'name=httpd state=started'
192.168.118.130 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": true,
"name": "httpd",
"state": "started",
...
//查看受控机上的httpd服务是否启动
[root@ansible ~]# ansible 192.168.118.130 -a 'systemctl is-active httpd'
192.168.118.130 | CHANGED | rc=0 >>
active
//设置受控机上的vsftpd服务开机自动启动
[root@ansible ~]# ansible 192.168.118.130 -m service -a 'name=httpd enabled=yes'
192.168.118.130 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": true,
"enabled": true,
"name": "httpd",
...
//查看受控机上的httpd服务是否开机自启
[root@ansible ~]# ansible 192.168.118.130 -a 'systemctl is-enabled httpd'
192.168.118.130 | CHANGED | rc=0 >>
enabled
//停止受控机上的httpd服务
[root@ansible ~]# ansible 192.168.118.130 -m service -a 'name=httpd state=stopped'
192.168.118.130 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": true,
"name": "httpd",
"state": "stopped",
...
//查看受控机上的httpd服务是否启动
[root@ansible ~]# ansible 192.168.118.130 -a 'systemctl is-active httpd'
192.168.118.130 | FAILED | rc=3 >>
inactivenon-zero return code
[root@ansible ~]# ansible 192.168.118.130 -a 'ss -antl'
192.168.118.130 | CHANGED | rc=0 >>
State Recv-Q Send-Q Local Address:Port Peer Address:PortProcess
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 128 [::]:22 [::]:*
file模块的用法
file 模块可以帮助我们完成一些对文件的基本操作。比如,创建文件或目录、删除文件或目录、修改文件权限等。
path参数 :必须参数,用于指定要操作的文件或目录
state参数 :
我们想要创建目录,那么则需要设置path=/test/abc
,我们无法从”/test/abc
“这个路径看出b是一个文件还是一个目录state的值设置为directory,”directory”为目录之意,当它与path结合,ansible就能知道我们要操作的目标是一个目录。同理,当我们想要操作的/testdir/a/b
是一个文件时,则需要将state的值设置为touch。
当我们想要创建软链接文件时,需将state设置为link。
想要创建硬链接文件时,需要将state设置为hard。
当我们想要删除一个文件时(删除时不用区分目标是文件、目录、还是链接),则需要将state的值设置为absent.
src参数 :当state设置为link或者hard时,表示我们想要创建一个软链或者硬链,所以,我们必须指明软链或硬链链接的哪个文件,通过src参数即可指定链接源。
**force参数 : **当state=link的时候,可配合此参数强制创建链接文件,当force=yes时,表示强制创建链接文件。不过强制创建链接文件分为三种情况。
情况一:当要创建的链接文件指向的源文件并不存在时,使用此参数,可以先强制创建出链接文件。
情况二:当要创建链接文件的目录中已经存在与链接文件同名的文件时,将force设置为yes,会将同名文件覆盖为链接文件,相当于删除同名文件,创建链接文件。
情况三:当要创建链接文件的目录中已经存在与链接文件同名的文件,并且链接文件指向的源文件也不存在,这时会强制替换同名文件为链接文件。
owner参数 :用于指定被操作文件的属主,属主对应的用户必须在远程主机中存在,否则会报错。
group参数 :用于指定被操作文件的属组,属组对应的组必须在远程主机中存在,否则会报错。
mode参数:用于指定被操作文件的权限。
recurse参数:当要操作的文件为目录,将recurse设置为yes,可以递归的修改目录中文件的属性。
//在受控主机上根目录中创建scripts目录
[root@ansible ~]# ansible 192.168.118.130 -m file -a 'path=/scripts state=directory'
192.168.118.130 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": true,
"gid": 0,
"group": "root",
"mode": "0755",