ansible的六个常用模块

  • shell模块: 

sudo提权:

首先在116上面:

useradd user

visudo加上user    ALL=(ALL)       ALL

运行ansible,加上普通用户和提权用户root,k是普通用户密码,K是提权用户密码:

[root@localhost ~]# ansible 192.168.3.116 -m shell -a "ls /root" -uuser -k --become --become-user root -K
SSH password:
BECOME password[defaults to SSH password]:
192.168.3.116 | CHANGED | rc=0 >>
anaconda-ks.cfg
apache-maven-3.5.0
apache-maven-3.5.0-bin.tar.gz
apache-tomcat-8.5.59.tar.gz
jdk-8u45-linux-x64.tar.gz

也可以把K换成ask-become-pass,效果一样:

[root@localhost ~]# ansible 192.168.3.116 -m shell -a "ls /root" -uuser -k --become --become-user root --ask-become-pass
SSH password:
BECOME password[defaults to SSH password]:
192.168.3.116 | CHANGED | rc=0 >>
anaconda-ks.cfg
apache-maven-3.5.0
apache-maven-3.5.0-bin.tar.gz

  • copy模块:

  • file模块:

 新建目录,如果目录存在就修改权限:

 删除目录:

 创建文件:

 修改文件属性:

  •  yum模块:

 

  • user模块:

删除用户

 创建用户

 

 创建不能直接登录的用户:

git模块:

拉取代码:

首先在目标主机用yum装git:

 

  • service模块:

设置开机启动:

 

service模块启动服务(也可以用restarted,stopped):

  • setup模块:

收集目标主机信息:

filter后面的变量是上一条语句的输出信息获取到的:

 

通配符*获取:

 

posted @ 2021-06-14 11:18  jamespeng2020  阅读(161)  评论(0)    收藏  举报