ansible模块介绍(二)
yum模块
用于远程主机安装yum包
参数:
name:yum包名称
list:等同于yum list,列出相关的yum包,与name互斥
conf_file:指定远程主机yum源位置
state:安装状态
--latest:更新指定包到最新版
--present:安装需要的包,也可指定为installed
--absent:卸载指定的包,也可指定为removed
update_only:当指定state为latest时,只更新已安装的包
update_cache:检查yum缓存是否已过期,如果已过期则重新下载
示例:
批量安装httpd
ansible change -m yum -a'name=httpd state=present'
批量升级vim
ansible change -m yum -a'name=vim state=latest'
批量卸载httpd
ansible change -m yum -a'name=httpd state=absent'
service模块
参数:
name:服务名称
state:服务状态
---started:启动服务
---stopped:停止服务
---restarted:重启服务
---reload:重读配置文件
enabled:设置开机自动启动,yes/no,默认为no
示例:
启动keepalived,并设置为开机自启动
ansible change -m service -a'name=keepalived state=started enabled=yes'
也可以只设置是否开机自动启动
ansible change -m service -a'name=httpd enabled=yes'
file模块
在远程服务器上进行目录/文件的操作
path:指定的文件路径
state:要进行的操作,相关参数设置如下
---directory:指定创建目录
---touch:指定创建文件
---absent:递归删除目录,所有文件和软链接都会被删除
---file:指定的文件是否存在
---hard:建立硬链接
---link:建立软链接
owner:设置文件/目录属主
group:设置文件/目录属组
mode:设置文件/目录权限,需要在权限的数字前加0,如0755
src:当指定建立文件链接时,指定要链接的文件
recurse:设置为yes时,会递归的修改目录下所有文件的属性
force:设置为yes时,且指定建立文件链接,如果链接的目录下面有同名的文件,强制覆盖
示例:
建立目录
路径为:/opt/es,属主为esuser,属组为esuser,权限为750
ansible change -m file -a'path=/opt/es state=directory owner=esuser group=esuser mode=0750'
设置软链接
在/opt/es路径下设置软链接,链接源文件为/var/es1
ansible change -m file -a'path=/opt/es/esfile state=link src=/var/es1'
修改已有文件的属性
将/var/hadfile.txt的属主设置为haduser,属组设置为haduser,权限设置我750
ansible change -m file -a'path=/var/hadfile.txt owner=haduser group=haduser mode=0750'
判断指定的文件是否存在
判断文件/opt/es/esfile是否存在
ansible change -m file -a'path=/opt/es/esfile state=file'
指定的文件路径存在
判断/opt/es文件是否存在
ansible change -m file -a'path=/opt/es state=file'
指定路径是一个目录,非文件
ansible change -m file -a'path=/opt/es1 state=file'
指定的文件路径不存在