ansible的各种模板命令

-f 指定并发数

异步执行功能
例子: -P 0 直接返回job_id,大于0会自动根据job_id查询,再根据job_id查询,这就是异步执行

1 执行命令模块(shell)(command)
后面所跟的内容,就是我们平常所使用的命令

command模块
命令模块 适合使用简单的命令 无法支持"<",">","|",";","&"等符号
参数:
chdir 在执行命令前,进入到指定目录中
creates 判断指定文件是否存在,如果存在,不执行后面的操作
removes 判断指定文件是否存在,如果存在,执行后面的操作
free_form 必须要输入一个合理的命令

shell模板
类似command,但是功能会比较强大


2文件处理模板

复制文件模块 (copy)(其实就是服务机下发文件)
src=文件名 dest=文件路径 owner=用户名 group=用户组名 mode=用户权限 backup=yes
src和dest必须是文件的内容
owner,gourp,mode设置为所发送目标机的用户
参数:
src 指定将本地管理主机的什么数据信息进行远程复制

backup no* yes 默认数据复制到远程主机,会覆盖原有文件(yes 将源文件进行备份)
content 在文件中添加信息

dest(required) 将数据复制到远程节点的路径信息

group 文件数据复制到远程主机,设置文件属组用户信息

mode 文件数据复制到远程主机,设置数据的权限 eg 0644 0755

owner 文件数据复制到远程主机,设置文件属主用户信息

remote_src no* yes 如果设置为yes,表示将远程主机上的数据进行移动操作如果设置为no, 表示将管理主机上的数据进行分发操作

注意:

如果发送文件的时候,不加用户,组和权限的话,一般就是默认用户和组,权限就会变成没有执行权限

ansible client -m copy -a 'src=/root/test.sh dest=/root/'
ansible client
-m shell -a './test.sh' 结果: /bin/sh: ./test.sh: 权限不够non-zero return code

如果重复发送同样的文件,会有

 

 

 

 

fetch模板(抓取文件到管理机上)
参数:
src(required) 要获取的远程系统上的文件,必须是文件,而不是目录
dest 用于保存文件的目录
注意: src后面要文件整个路径 dest为root路径最好


file模板(实现创建/删除文件信息 对数据权限进行修改)
参数:
dest/path/name(required) 将数据复制到远程节点的路径信息

group 文件数据复制到远程主机,设置文件属组用户信息

mode 文件数据复制到远程主机,设置数据的权限 eg 0644 0755
owner 文件数据复制到远程主机,设置文件属主用户信息

src 指定将本地管理主机的什么数据信息进行远程复制

state absent 将数据进行删除

= directory 创建一个空目录信息

= file 查看指定目录信息是否存在

= touch 创建一个空文件信息

= hard/link 创建链接文件

unarchive模板(压缩解压文件)

详情https://docs.ansible.com/ansible/latest/modules/unarchive_module.html#unarchive-module

3 包和服务管理

yum模块(使用yum软件包管理器安装,升级,降级,删除和列出软件包和组)
参数:
name(required) 指定软件名称信息
state absent/removed 将软件进行卸载(慎用)
= present/installed 将软件进行安装
latest 安装最新的软件 yum update

service模块 (用于管理服务运行状态)
参数:
enabled no yes 设置服务是否开机自启动 如果参数不指定,原有服务开机自启动状态进行保留

name (required) 设置要启动/停止服务名称

state= reloaded 平滑重启
= restarted 重启

= started 启动

= stopped 停止

4用户管理

user模块 (远程批量创建用户信息)
参数:
password 请输入密码信息

name 指定用户名信息

uid 指定用户uid信息

group 指定用户主要属于哪个组

groups 指定用户属于哪个附加组信息

shell /bin/bash或/sbin/nologin 指定是否能够登录

create_home yes/no 是否创建家目录信息

home 指定家目录创建在什么路径 默认/home

group模板(远程批量创建用户组信息)
参数:
gid 指创建的组ID信息
name 指创建组名称信息
state absent 删除指定的用户组
= present 创建指定的用户组


5 磁盘使用

mount (挂载模板)
参数:
fstype 指定挂载的文件系统类型

opts 指定挂载的参数信息

path 定义一个挂载点信息
src 定义设备文件信息

state absent 会进行卸载,也会修改fstab文件信息

= unmounted 会进行卸载,不会修改fstab文件

= present 不会挂载,只会修改fstab文件

= mounted 会进行挂载,会修改fstab文件

6 定时任务

cron(定时任务模块)
参数:
minute/hour/day/month/weekday 和设置时间信息相关参数

job 和设置定时任务相关参数

name(required) 设置定时任务注释信息

state absent 删除指定定时任务

disabled yes 将指定定时任务进行注释

= no 取消注释

posted on 2020-03-25 10:59  学习永远没有尽头  阅读(225)  评论(0)    收藏  举报