ansible☞常用模块-系统相关

阅读量: zyh 2020-04-29 17:16:44
Categories: > Tags:

cron

crontab 计划任务

参数介绍:

name 计划任务注释,多次操作同名任务,只会修改,而不会新加

时间参数:

  • minute hour day month weekday

  • special_time : @reboot @yearly @monthly @weekly @daily @hourly (每xxx执行)

user 添加到指定用户计划任务中

job 计划任务执行命令

state 当值为absent时,指删除任务. 只需指定 name.

disabled 注释任务,若任务信息和之前不一致,会同时修改任务

backup 先备份再操作, 备份文件位于 /tmp/crontabxxxx

ansible localhost -m cron -a "name='test cron module' user=zyh special_time=hourly job='ls /home/zyh > /home/zyh/cron.log 2>&1'"
ansible localhost -m cron -a "name='test cron module' state=absent"

service

调用远程系统自身的服务管理模块,例如 centos6 的 service ,或者 centos7 的 systemctl

参数介绍:

name 服务名

state 执行动作 started, stopped, restarted, reloaded

enabled 开机自启动

user

用户管理

常用参数介绍:

name 用户名

group 用户组 groups 用户附加组

  • append 额外附加用户附加组

shell 指定默认shell,比如/usr/sbin/nologin

state 值为 absent 表示删除用户,值为 present 表示用户必须存在

  • remove 删除用户时,同时删除用户家目录

password 用户密码。(需要传递加密密码,不能是明文密码)

import crypt:
passwd=
print(crypt.crypt(passwd))

generate_ssh_key 相当于远程执行 ssh-keygen 命令(不加任何参数,一路回车)。若已经存在~/.ssh/{id_rsa, id_rsa.pub}, 则不执行

  • ssh_key_file 自定义私钥名和私钥存放路径, 公钥也会在自定义路径下生成

group

管理用户组

参数介绍:

name 组名

state 组状态, 值为 absent 指删除(组本身并非用户主要组)

setup

获取机器信息

参数介绍:

gather_subset 获取某个子集(all, min, hardware, network, virtual, ohai, facter)

filter 获取某个集合的某个key

fact_path 自定义信息存放目录

# setup 默认会搜索目标主机/etc/ansible/facts.d 下的自定义信息,例如 family.ini
[family]
father=Zhangsan
son=Zhangxiaosan