Ansible-doc里面的一些简单模块使用

ansible-doc  -l |grep 模块名                  //模块搜索

ansible-doc  模块名  =============>    /EXAMPLE      //查看帮助

1.command模块:    远程执行命令

ansible 主机集合   -m(模块) command -a(命令) ‘远程命令‘

2.shell模块:同于command模块 ,但shell模块是通过/bin/sh执行命令的,可以执行任意的命令

eg:

ansible webs -m shell -a ‘echo ${HOSTNAME}‘                 //取消本地的结果输出,直接在ansible远程主机上执行echo ${HOSTNAME}

ansible webs -m shell -a "echo ${HOSTNAME}"                 //在本机事先执行echo ${HOSTNAME},再输出到远程的ansible被管理主机上

Ansible-doc里面的一些简单模块使用

3.yum模块

ansible 主机或主机集合   -m yum -a ‘name=软件包名  state=状态‘

                                                                                             installed \removed

4.service模块

ansible 主机或主机集合  -m service -a ‘‘name=服务名     enabled=yes\no     state=状态’

                                                                                           开机是否自启         state: started    stopped   restarted   reloaded

5.copy模块:同于rsync 中的/                      //只能拷贝文件

/opt/test/    /mnt                   把/opt/test/下的内容拷贝到/mnt下

/opt/test     /mnt                   把/opt下的test拷贝到/mnt下

ansible 主机或主机集合  -m copy -a ‘src=本地文件   dest=ansible远程主机文件路径‘

6.lineinfile模块  : 类似于sed中的s(替换)

ansible 主机或主机集合  -m lineinfile -a 

‘path=要修改的文件                  "/etc/my.cnf"

regexp="正则表达式 "                "^binlog_format"

line="替换的新值 "  ‘                    "binlog_format=row"

7.replace模块  修改匹配的字段

ansible 主机或主机集合 -m replace -a 

‘path=修改文件                           "/etc/my.cnf"

regexp=正则表达式                    "row"

replace=替换的新值‘                   "mixed"

相关推荐