ansible模块的介绍与使用
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模块的介绍与使用的更多相关文章
- Ansible 模块命令介绍
copy模块: 目的:把主控端/root目录下的a.sh文件拷贝到到指定节点上 命令:ansible 10.1.1.113 -m copy -a 'src=/root/a.sh dest=/tmp/' ...
- ansible模块之yum、pip、service、corn、user、group
ansible相关模块 yum rpm 和yum 的区别 rpm:全称redhat package manager (红帽包管理器) 不能解决包之间的依赖关系 yum:可以解决依赖关系 yum 源配置 ...
- ansible模块
ansible模块: 模块(Modules),类似于 "任务插件"("task plugins")或"库插件"("library ...
- Ansible自动化运维笔记2(Ansible的组件介绍)
1.Ansible Inventory (1)静态主机文件 默认的ansible invetory是/etc/hosts文件,可以通过ANSIBLE_HOSTS环境变量或者通过运行命令的时候加上-i ...
- 基于Metronic的Bootstrap开发框架--工作流模块功能介绍(2)
本篇继续<基于Metronic的Bootstrap开发框架--工作流模块功能介绍>,继续介绍基于Metronic的Bootstrap开发框架的工作模块功能,介绍工作流模块中相关业务表单的界 ...
- Winform开发框架中的内容及文档管理模块功能介绍
在开发项目的时候,我们有一些场景需要编辑一些HTML文档,作为内容发布系统的一部分,有时候也需要对一些文档如WORD文档进行编辑管理,这样需要我们对这些内容及文档进行合适的管理.本文主要介绍在WInf ...
- ansible笔记(3):ansible模块的基本使用
ansible笔记():ansible模块的基本使用 在前文的基础上,我们已经知道,当我们使用ansible完成实际任务时,需要依靠ansible的各个模块,比如,我们想要去ping某主机,则需要使用 ...
- python shutil模块简单介绍
python shutil模块简单介绍 简介 shutil模块提供了大量的文件的高级操作.特别针对文件拷贝和删除,主要功能为目录和文件操作以及压缩操作. shutil 模块方法: copy(src, ...
- request 模块详细介绍
request 模块详细介绍 request Requests 是使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库,其在Python内置模块的基础上进行了高度的封装 ...
随机推荐
- Less使用@import进行Mixins
Import 指令 从其他样式表导入样式 在标准CSS中,@ import at-rules必须在所有其他类型的规则之前.但Less.js并不关心你放置@import语句的位置 Example: .f ...
- memcached 和 MySQL 的 query ?
cache 相比,有什么优缺点? 把 memcached 引入应用中,还是需要不少工作量的.MySQL 有个使用方便的 query cache,可以自动地缓存 SQL 查询的结果,被缓存的 SQL 查 ...
- 本地存储和cookies之间的区别是什么?
cookies本地存储客户端/服务器端既可以从客户端也可以从服务器端访问数据.每个请求都会发送cookie数据到服务器.只能在本地浏览器端访问数据.服务器无法访问本地存储,除非特意通过POST或GET ...
- 开发一个自己的 CSS 框架(四)
这一节,我们来讲规矩,谈网格,做人可以不要脸,不讲规矩,不讲道理(特指傲娇兽),但底线还是要有的,如同网格一样,不能超出. jeet 这里我们别人封装好的模块,不过呢,我们也会详细介绍一下原理.首先我 ...
- gulp详细基础教程
一.gulp简介 1.gulp是什么? gulp是前端开发过程中一种基于流的代码构建工具,是自动化项目的构建利器:它不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成: ...
- webpack+vue-cli+ElementUI+vue-resource 前端开发
线上商城项目(电脑0环境)1.安装node.js (参考http://www.runoob.com/nodejs/nodejs-install-setup.html): 2.安装 webpack (全 ...
- 理解Android Framework
一 . Android 系统架构 Android是一个包括操作系统,中间件和关键应用的移动设备软件堆: 作为一个开源的软件,android包含了众多的功能和庞大的代码,他的代码基于linux. 1. ...
- vuecli中配置webpack加快打包速度
webpack4中webpack 的DllPlugin插件可以将常见的库文件作为dll文件来,每次打包的时候就不用再次打包库文件了. 但是游鱼西在vuecli中已经去除这个选项,意识到带来的打包速度提 ...
- JAVASE Scanner
package com.huang.boke.flowPath;import java.util.Scanner;public class test01 { public static void ma ...
- 带码农《手写Mybatis》进度3:实现映射器的注册和使用
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获!