ansible-doc的使用

  1.ansible-doc -h可以看见ansible-doc的所有参数

  2.ansible-doc 命令格式:ansible-doc [-l|-F|-s] [options] [-t <plugin type> ] [plugin]

    2.1 -j #以json的方式返回数据

    2.2 -l, --list #列出所有的模块

    2.3 -s, --snippet #以片段式显示模块信息

  3.ansible-doc -s 模块名字    以片段的形式查询模块的信息,如ansible-doc -s shell

  4.ansible-doc 模块名  查询模块的全部信息,如ansible-doc shell

  5.ansible-doc -l|wc -l  这个命令可以统计出一共有多少个模块

1.command模块

  1.1 ansible-doc -s command  查询command的参数

  1.2chdir 切换目录并执行命令

  1.3creates 目录存在,不执行随后的命令

  1.4removes 目录存在,执行随后的命令

  1.5 command命令一般在编译软件的时候会用到,因为要切换到软件的当前目录下在执行软件

ansible web -m command -a "pwd"
ansible web -m command -a "ls"
ansible web -m command -a "chdir=/tmp pwd" #切换目录并执行命令
ansible web -m command -a "creates=/tmp pwd" #因为tmp目录存在,pwd不会执行
ansible web -m command -a "creates=/tmp2 pwd" #因为tmp2不存在,pwd执行
ansible web -m command -a "removes=/tmp2 pwd" #因为tmp2不存在pwd不执行
ansible web -m command -a "removes=/tmp pwd" #因为tmp目录存在,pwd会执行
#web是一个组的名称,相当于一个IP地址,如192.168.8.128
#-m 后面加模块的名字 -a后面加指定的参数
#pwd 获取当前的工作目录的命令
  • echo "密码" |passwd --stdin 用户名      #设置用户的密码
ansible 192.168.8.128 -m shell -a "echo '密码'|password --stdin 用户名"

2.shell模块

  2.1 ansible-doc -s shell查询shell的参数 

  2.2chdir 切换目录并执行命令

  2.3creates 目录存在,不执行随后的命令

  2.4removes 目录存在,执行随后的命令

ansible web -m shell -a "echo '1234' |passwd --stdin al“ 更改用户的密码
ansible web -m shell -a "chdir=/tmp pwd" shabang
ansible 192.168.226.101 -m shell -a "bash a.sh" #执行shell脚本
ansible 192.168.226.101 -m shell -a "/root/a.sh" # 执行shell脚本,文件要有执行的权限
ansible 192.168.226.101 -m shell -a "/root/a.py" #执行Python文件
#web是一个组的名称,相当于一个IP地址,如192.168.8.128
#bash是一个解释器

3.script模块

  3.1 ansible-doc -s script查询script的参数

  3.2chdir 切换目录并执行命令

  3.3creates 目录存在,不执行随后的命令

  3.4removes 目录存在,执行随后的命令

ansible db -m script -a "/root/a.sh" #执行本地的文件,管控机的文件
ansible db -m script -a "creates=/root/a.sh /root/a.sh" # 判断被控机上的文件是否存在,如果不存在,就执行,如果存在,就跳过
ansible db -m script -a "creates=/tmp /root/a.sh" #判断被控机上的文件
#db是一个组的名称,相当于一个IP地址,如192.168.8.128

4.copy模块

   4.1 ansible-doc -s copy 查询copy的参数

  4.2 backup  创建一个备份文件,以时间戳结尾(管控机和被控机都有备份文件)

 4.3 content  直接往文件里面写内容

4.4 dest  目标文件地址

  4.5 group  文件属组

  4.6 mode  文件的权限 (W--2  R--4  X--1)

  4.7 owner  文件属主

  4.8 src  源文件地址

ansible web -m copy -a "src=/etc/fstab dest=/tmp/f" #复制本地文件到远程主机,并修改文件名,多次执行不会改变,因为checksum值是一样的
ansible web -m copy -a "src=a.sh dest=/tmp/a.sh backup=yes" #复制本地文件到远程主机,并备份
ansible web -m copy -a "src=a.sh dest=/tmp/a.sh backup=yes group=alex mode=755"# 复制本地文件到远程主机,并指定属组和权限
ansible web -m copy -a "src=/etc/init.d dest=/tmp backup=yes group=alex mode=755" #复制本地的目录到远程主机,修改目录权限,则目录里面的文件也会跟着变更
ansible web -m copy -a "src=/etc/init.d/ dest=/tmp backup=yes group=alex mode=755" #复制本地目录下的所有文件,
ansible web -m copy -a "content='大弦嘈嘈如急雨,小弦切切如私语,嘈嘈切切错 杂弹,大珠小珠落玉盘' dest=/tmp/b" #直接往文件里面写内容,覆盖写,慎用
#web是一个组的名称,相当于一个IP地址,如192.168.8.128
#-m 后面加模块的名字 -a后面加指定的参数
#a.sh是一个文件

5.file模块

6.fetch模块

7.yum模块

8.pip模块

9.service模块

10.cron模块

11.user模块

12.group模块

13.setup模块

  13.1 ansible 192.168.8.128 -m setup 查看被控机的setup信息 192.168.8.128为被控机的IP地址

    如果要查询本机的setup信息的话,IP地址应该使用127.0.0.1或者localhost

  13.2

14.ping模块

15.replace模块

ansible模块的介绍与使用的更多相关文章

  1. Ansible 模块命令介绍

    copy模块: 目的:把主控端/root目录下的a.sh文件拷贝到到指定节点上 命令:ansible 10.1.1.113 -m copy -a 'src=/root/a.sh dest=/tmp/' ...

  2. ansible模块之yum、pip、service、corn、user、group

    ansible相关模块 yum rpm 和yum 的区别 rpm:全称redhat package manager (红帽包管理器) 不能解决包之间的依赖关系 yum:可以解决依赖关系 yum 源配置 ...

  3. ansible模块

    ansible模块: 模块(Modules),类似于 "任务插件"("task plugins")或"库插件"("library ...

  4. Ansible自动化运维笔记2(Ansible的组件介绍)

    1.Ansible Inventory (1)静态主机文件 默认的ansible invetory是/etc/hosts文件,可以通过ANSIBLE_HOSTS环境变量或者通过运行命令的时候加上-i ...

  5. 基于Metronic的Bootstrap开发框架--工作流模块功能介绍(2)

    本篇继续<基于Metronic的Bootstrap开发框架--工作流模块功能介绍>,继续介绍基于Metronic的Bootstrap开发框架的工作模块功能,介绍工作流模块中相关业务表单的界 ...

  6. Winform开发框架中的内容及文档管理模块功能介绍

    在开发项目的时候,我们有一些场景需要编辑一些HTML文档,作为内容发布系统的一部分,有时候也需要对一些文档如WORD文档进行编辑管理,这样需要我们对这些内容及文档进行合适的管理.本文主要介绍在WInf ...

  7. ansible笔记(3):ansible模块的基本使用

    ansible笔记():ansible模块的基本使用 在前文的基础上,我们已经知道,当我们使用ansible完成实际任务时,需要依靠ansible的各个模块,比如,我们想要去ping某主机,则需要使用 ...

  8. python shutil模块简单介绍

    python shutil模块简单介绍 简介 shutil模块提供了大量的文件的高级操作.特别针对文件拷贝和删除,主要功能为目录和文件操作以及压缩操作. shutil 模块方法: copy(src, ...

  9. request 模块详细介绍

    request 模块详细介绍 request Requests 是使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库,其在Python内置模块的基础上进行了高度的封装 ...

随机推荐

  1. memcached 的多线程是什么?如何使用它们?

    线程就是定律(threads rule)!在 Steven Grimm 和 Facebook 的努力下, memcached 1.2 及更高版本拥有了多线程模式.多线程模式允许 memcached 能 ...

  2. (转载) MOS管区分NP沟道

    三极管是流控型器件,MOS管是压控型器件,两者存在相似之处.三极管机可能经常用,但MOS管你用的可能较少.对于MOS管先抛出几个问题: 如何区分P-MOS和N-MOS:   如何区分MOS的G.D.S ...

  3. Java 中应该使用什么数据类型来代表价格?

    如果不是特别关心内存和性能的话,使用 BigDecimal,否则使用预定义精度的 double 类型.

  4. 怎么创建maven项目

    1.Eclipse中用Maven创建项目 2.点击[next] 3.选maven-archetype-webapp后,next 4.填写相应的信息,Packaged是默认创建一个包,不写也可以 4右击 ...

  5. 学习k8s(三)

    一.Kubernetes核心概念 1.Kubernetes介绍 Kubernetes(k8s)是自动化容器操作的开源平台,这些操作包括部署,调度和节点集群间扩展.如果你曾经用过Docker容器技术部署 ...

  6. scrapy基于请求传参实现深度爬取

    请求传参实现深度爬取 请求传参: 实现深度爬取:爬取多个层级对应的页面数据 使用场景:爬取的数据没有在同一张页面中 在手动请求的时候传递item:yield scrapy.Request(url,ca ...

  7. ros系统21讲—前六讲

    课程介绍(第一讲) linux介绍安装(第二讲) linux的基础操作(第三讲) ROS中语言c++与python介绍(第四讲) 安装ROS系统(第五讲) 第一个: sudo sh -c echo d ...

  8. 利用angular4和nodejs-express构建一个简单的网站(一)——构建前后端开发环境

    学习了一段时间的angular4知识,结合以前自学的nodejs-express后端框架知识,做了一个利用angular4作为前端,node-express作为后端服务器的网站.这个网站的功能很简单, ...

  9. 自定义View的onDraw 函数不执行

    解决办法:    在自定义的View 的构造方法中添加一句话:   this.setWillNotDraw(false);解释:那么加这条语句的作用是什么?先看API:        If this ...

  10. 【图像处理】Golang 获取JPG图像的宽高

    一.背景 有些业务需要判断图片的宽高,来做一些图片相关缩放,旋转等基础操作. 但是图片缩放,旋转,拼接等操作需要将图片从 JPG 格式转成 RGBA 格式操作,操作完毕后,再转回 JPG 图片. 那如 ...