user模块
用于实现linux用户管理
常用选项:
name:待创建的用户名
uid:用户id
group:设置主组
groups:设置附加组
home: 设置家目录
password:设置用户密码
state:状态。 present表示创建,为默认选项。absent表示删除
remove:删除家目录、邮箱等,值可以写为yes或true
ansible webservers -m user -a "user=lisi"
#创建lisi用户
ansible webservers -m user -a "name=zs uid=1010 group=adm groups=deamon,root home=/home/zs"
# 在webservers组中的主机上,创建zs用户。设置其uid为1010,主组是adm,附加组是daemon和root,家目录是/home/zs
ansible webservers -m user -a "name=lisi password={{'123456 | password_hash('sha512')'}}"
# 设置lisi的密码是123456
# {{}}是固定格式,表示执行命令。password_hash是函数,sha512是加密算法,则password_hash函数将会把123456通过sha512加密变成zhangsan的密码
ansible websewrvers -m user -a "name=lisi state=absent"
# 删除lisi用户,不删除家目录
ansible webservers -m user -a "name=zs state=absent remove=yes"
# 删除lisi用户,同时删除家目录
group模块
创建、删除组
常用选项:
name:待创建的组名
gid:组的ID号
state:present表示创建,默认选项;absent表示删除
ansible webservers -m group -a "name=devops"
# 在webservers组中的主机上创建名为devops的组
ansible webservers -m group -a "name=devops state=absent"
# 在webservers组中的主机上删除名为devops的组
yum_repository模块
用于配置yum
常用选项:
file:指定文件名
其他选想,请与文件内容对照
可以配置多个文件
对应关系:file -- 文件名 name-- [myApp] description --name = Base OS
ansible webservers -m yum_repository -a "file=myrepo name=mayapp description='my app' baseurl=ftp://ip地址/dvd/AppStream gpgcheck=no enable=yes"
#执行成功后,登录webservers组的任意一台主机中,查看文件就可知道对应关系
cat /etc/yum.repos.d/myrepo.repo
yum模块
用于rpm软件包管理,如安装、升级、卸载
常用选项:
name:包名
state:状态。 present表示安装,如果安装则忽略 latest表述安装或升级到最新版 absent卸载
anxible webservers -m yum -a "name=tar state=present"
# 在webservers组中的主机上安装tar
ansible webservers -m yum -a "name=wget,net-tools "
# 在webservers组中的主机上安装wget、net-tools
ansible sebservers -m yum -a "name=wget state=absent"
# 在webservers组中的主机上卸载wget
service模块
用于控制服务。启动、关闭、重启、自启
常用选项:
name:控制的服务名
state:started启动 stopped关闭 restarted重启
enabled:yes自启 no开机不自启
ansible webservers -m yum -a "name=nginx state=latest"
ansible webservers -m service -a "name=nginx state=started enabled=yes "
# 在test主机上启动nginx,并设置它开机自启