第4天:Ansible模块

Ansible对远程服务器的实际操作实际是通过模块完成的,其工作原理如下:

  1)将模块拷贝到远程服务器

  2)执行模块定义的操嘴,完成对服务器的修改

  3)在远程服务器中删除模块

需要说明的是,Ansible中的模块是幂等的。也就是说,多次执行相同的操作,只有第一次会起作用。这也是在编写自定义Ansible模块的需要注意的地方。

Ansible提供了大量的模块,ansible-doc命令用于在命令行查看模块列表,也可以使用该工具在命令行获取模块帮助信息

ansible-doc -l

下面命令用户获取file模块的帮助信息

ansible-doc file
ansible-doc -l file

下面是一些比较基础,重要,同时也是使用频率比较高的模块

ping

ping模块是Ansible中最简单的模块,用来测试现有的SSH参数是否能够顺利连通远程服务器 

ansible test -m ping

远程命令模块

command 是Ansible的默认模块,可以不指定模块名称直接运行Linux命令, 也可以显示地通过-m指定command模块

command在执行Linux命令时不能使用管道

ansible test -a 'hostname'
ansible test -m command -a 'hostname' 

raw模块相当于使用SSH直接执行Linux命令,不会进入到Ansible的模块子系统中

ansible test -m raw -a 'cat /etc/passwd|wc -l'

shell

file

..

copy

...

user/group

...

apt

...

get_url

...

unarchive

...

git

...

stat

...

cron

...

service

...

sysctl

...

mount

...

synchronize

...

猜你喜欢

转载自www.cnblogs.com/sellsa/p/9952121.html
今日推荐