文章目录
项目环境:
管理端:192.168.200.20
被管理端1:192.168.200.30
被管理端2:192.168.200.40
该环境是基于上一篇安装ansible设置的基础环境而进行的。
一、command 默认模块 - 执行命令
适合使用简单的命令,无法支持"<",">","|",";","&"等符号
--------command模块-------
命令格式:ansible [主机] [-m 模块] [-a args]
ansible-doc -l #列出所有已经安装的模块 注:按q退出
ansible-doc -s yum #-s 列出yum 模块描述信息和操作动作
ansible 192.168.200.30 -m command -a 'date' #指定ip执行date命令
ansible webservers -m command -a 'date' #指定分类执行date命令
ansible all -m command -a 'date' #所有hosts主机执行date命令
192.168.200.30 | CHANGED | rc=0 >>
2021年 04月 02日 星期五 12:15:54 CST
192.168.200.40 | CHANGED | rc=0 >>
2021年 04月 02日 星期五 12:15:54 CST
[root@localhost ~]# ansible all -a 'ls /' #如果不加-m模块,则默认运行command模块
二、cron - 定时任务模块
-----------cron模块-----------
两种状态(state):present表示添加(可以省略),absent表示移除。
nsible-doc -s cron #查看cron模块信息
[root@localhost ~]# ansible mysql -m cron -a 'minute="*/1" job="/bin/echo gccgcc" name="test cron job"'
192.168.200.40 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": true,
"envs": [],
"jobs": [
"test cron job"
]
}
注释:
-m cron:使用-m 指定cron模块
-a 'minute="*/1":使用-a指定参数,时间参数为每分钟1次
job="/bin/echo gccgcc":job参数指定在/bin下面执行echo命令输出gccgcc
name="test cron job":name参数指定名称,可以任意起
[root@localhost ~]# ansible mysql -a 'crontab -l' #查看上一条命令设置的cron详细信息
192.168.200.40 | CHANGED | rc=0 >>
#Ansible: test cron job
*/1 * * * * /bin/echo gccgcc
[root@localhost ~]# ansible mysql -m cron -a 'name="test cron job" state=absent' #移除定时性任务
192.168.200.40 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": true,
"envs": [],
"jobs": []
}
三、user模块 - 用户管理
user 模块请求的是useradd,userdel,usermod 三个指令
[root@localhost ~]# ansible all -m user -a 'name="test01"' #在两台被控制主机上均创建用户test01
192.168.200.40 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": true,
"comment": "",
"create_home": true,
"group": 1001,
"home": "/home/test01",
"name": "test01",
"shell": "/bin/bash",
"state": "present",
"system": false,
"uid": 1001
}
192.168.200.30 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": true,
"comment": "",
"create_home": true,
"group": 1001,
"home": "/home/test01",
"name": "test01",
"shell": "/bin/bash",

本文详细介绍了如何使用Ansible的command、cron、user、group、copy、file、ping、yum、service和shell模块进行服务器管理,包括执行命令、定时任务、用户管理、文件操作和远程连接测试。通过实例演示了如何安装软件、配置用户权限、设置定时任务和管理服务状态。
最低0.47元/天 解锁文章
1927





