1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
ansible常用模块详解: ansible <host - pattern> [ - m module_name] [ - a args] [options] #ansible命令格式
指定主机组或ip地址 指定调用模块 传递给模块的参数
ansible - doc - l #列出可用模块
ansible - doc - s model_name #查看指定模块详细用法
command:ansible默认模块,对指定主机执行命令,不能理解特殊字符 例:ansible web - a 'date' #对web组里的主机执行date命令,web需要在hosts中定义
shell:执行命令操作,比command更强的,能够理解特殊字符 例:
ansible web - m shell - a 'useradd www'
ansible web - m shell - a 'echo centos | passwd --stdin www'
script:将本地主机的脚本放到远程主机执行 例:(脚本自己写)
ansible web - m script - a '/root/test.sh'
ping:测试远端主机是否在线 例:ansible web - m ping
user:用户管理模块 常用参数:
name = #指定用户名(必须指定)
state = present / absent #添加/删除用户
system = yse / no #是否创建为系统用户
uid = #指定用户uid
shell = #指定用户shell环境
home = #指定用户家目录
group = #指定用户组
groups = #指定用户组附加组,以”,“分隔
例:
ansible web - m user - a 'name=HR state=present system=yes uid=100 groups=root,ntp shell=/bin/csh home=/home/HR_home'
#创建用户
ansible web - m user - a 'name=HR state=absent' #删除用户
group:组管理模块 常用参数:
gid = #指定组gid
name = #指定组名(必须指定)
state = present / absent #添加/删除组
system = yse / no #是否创建为系统组
cron:计划任务管理模块 name #任务计划的描述信息(必须指定)
minute #分(0-59 ,* ,*/2)
hour #时(0-23 ,* ,*/2)
day #日(1-31 ,* ,*/2)
month #月(1-12 ,* ,*/2)
weekday #周(0-6 ,*)
job = path #执行的命令的绝对路径
backup = yes / no #是否先备份再创建新的任务计划
user #以哪个用户新建任务计划,默认 root
state = present / absent #创建删除计划任务
例:
ansible web - m cron - a 'name=A user=root job="/bin/date &>/dev/null" weekday="*/1" state=present'
copy:文件分发模块 常用参数:
src = path #指定源文件路径
dest = path #指定保存文件路径(必须指定)
mode = #拷贝到远程主机上的文件权限
例:
ansible web - m copy - a 'src=/abc dest=/root mode=600'
#注意:拷贝文件夹是在文件夹默认加上"/"表示只拷贝文件夹里的内容不拷贝目录
yum模块:基于yum源安装程序 常用参数:
name = #安装程序名(必须指定)
state = #present:安装 latest:安装最新版 absent:卸载
例:
ansible web - m yum - a 'name=httpd state=latest' service模块:服务管理模块 常用参数:
name = #服务名称
state = stopped / started / restarted / reloaded #停止/启动/重启/重读配置文件
enabled = yes / no #是否开机自启动
setup模块:系统信息收集 例:
ansible web - m setup
|
本文转自 红尘世间 51CTO博客,原文链接:http://blog.51cto.com/hongchen99/1921695