安装ansible请参考 https://blog.csdn.net/weixin_48496901/article/details/116601384?spm=1001.2014.3001.5501
- ruanlu为主控端,node1和node2是被控端
- 在主控端的家目录下创建/root/ansible目录
2.设置配置文件路径为/root/ansible/ansible.cfg,主机清单文件为/root/ansible/inventory
3.设置主机清单文件,要求组名为web组,组成员为node1,node2; mysql组,组成员为node3 , node4;db组包含web组和node5主机
查看配置清单中是否含有web组和node3
4.设置/root/ansible/ansible.cfg,远程登录用户为ansible,并设置sudo提权
5.在web组上执行,用shell模块创建文件/tmp/redhat,并在文件内写入hello world!
6.在web组上执行,用file实现创建文件,/tmp/ansible.txt,要求文件的拥有人为ansible,权限为755,最后删除文件
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210524153735506.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80ODQ5NjkwMQ==,size_16,color_FFFFFF,t_70
7,在web组上执行,用group模块创建组,组名为it组,组的id为1200
8. 在web组上执行,用user模块创建用户,用户名为user1,uid为1300,gid为1200,附加组为ansible,家目录为/home/user111,最后删除该用户,并删除家目录
总结:
一, ansible配置文件常用参数
vim /etc/ansible/ansible.cfg
inventory = /etc/ansible/inventory #定义主机清单文件的路径
remote_user=ansible
[privilege_escalation] #sudo提权配置
become=True
become_method=sudo
become_user=root
become_ask_pass=False
remote_tmp = ~/.ansible/tmp #远程主机python脚本保存的路径
local_tmp = ~/.ansible/tmp #本地python脚本保存的路径
forks = 5 #并行执行的数量
remote_port = 22 #远程主机ssh的端口号
二,ansible的模块学习
ad-doc 语法规则
ansible 主机/主机组 -m 模块 -a 参数
帮助信息
ansible-doc -l 列出所有的模块
anisble-doc -s 模块 列出该模块的参数
官网查询地址:
https://docs.ansible.com/ansible/