二、Ansible的Ad-hoc介绍篇
一、什么是Ad-hoc
称为临时命令,简单说,就是在命令行界面,直接通过一条ansible命令,去指定主机执行指定指令,功能有限
例如:ansible localhost -m command -a "df -h"
二、Ad-hoc用法
Usage: ansible <host-pattern> [options]
<host-pattern> #主机或主机组,被执行的客户端设备,必填项 [option]:
-m module #【常用】模块,指定要执行使用的模块
-a #【常用】代模块参数,使用-m指定某个模块,该模块可能需要跟某些参数,此时参数就放在-a 后面的双引号内" "。不加-m 模块,直接使用-a 指默认指定了-m command 模块
-u USERNAME #--user=USERNAME:指定远程主机以USERNAME运行命令
-k #--ask-pass SSH:认证密码,回车手动输入密码
-c CONNECTION #--connection=CONNECTION:指定连接方式,可用选项paramiko,ssh,local
-f NUM #--forks=NUM:并发线程数,默认是5个线程
--list-hosts #列出符合条件的主机列表,不执行任何命令
-v #--verbose:输出更详细的执行过程信息
-vvv #可得到执行过程所有信息
-i PATH #--inventory(清单,即主机列表文件路径)=PATH:指定inventory(清单)信息,默认路径是/etc/ansible/hosts
--private-key=PRIVATE_KEY_FILE #指定密钥文件
-M DIRECTORY #--module-path=DIRECTORY:指定模块存放路径,默认/usr/share/ansible/,也可通过ANSIBEL_LIBRARY设定默认路径
-K #--ask-sudo-pass sudo:用户的密码(--sudo时使用)
-o #--one-line:标准输出至一行
-s #--sudo:相当于linux系统下的sudo命令
-t DIRECTORY #--tree=DIRECTORY:输出信息至DIRECTORY目录下,结果文件以远程主机命名
-T SECONDS #--timeout=SECONDS:指定连接远程主机的最大超时,单位是秒
-B NUM #--background=NUM:后台执行命令,超过NUM秒后中止正在执行的任务
-P NUM #--poll=NUM:定期返回后台任务进度
-l SUBSET #--limit=SUBSET:指定运行主机
-l ~REGEX #--limit=~REGEX:指定运行主机(正则)
三、Ansible的帮助文档ansible-doc
3.1 命令用法
ansible-doc [options] [module...]
3.2 options选项
--version #显示工具版本号
-h #显示该help说明
-M MODULE_PATH #--module-path=MODULE_PATH指定ansible模块的默认加载目录
-l #--list:列出所有可用模块
-s #--sinppet:只显示playbook说明的代码段
-v #等同于--version,显示工具版本号 例如:ansible-doc -l #列出所有可用模块
3.3 module选项
例如:ansible-doc yum #查看yum模块的使用说明

四.实例
实例1:测试远端网络设备的ssh服务是否能正常访问
命令:ansible 192.168.62.41 -m ping -U cisco -c local -k

#此命令,各参数解析
#192.168.62.41 #此ip已存在/etc/ansible/hosts文件,并开启了inventory功能(/etc/ansible/ansible.cfg)
-m ping #使用ping模块,用于测试远端服务ssh的可登陆性
-U cisco #以用户名cisco登录远端主机
-c local #local指定从本地执行python脚本,默认是在远端执行python脚本,因此采用默认连接方式,远端必须是有python环境的
#因此远端若是网络设备,因为不可能还有python环境,因此都需要指定采用本地连接方式-c local
-k #回车,输入ssh密码
实例2:获取远端网络设备的设备配置信息
命令:ansible 192.168.62.41 -c local -m ios_facts -a 'auth_pass=cisco gather_subset=all authorize=yes' -u cisco -k
-c local #使用本地连接,默认是远端链接
-m ios_facts #ios_facts是思科ios的设备信息模块
-a #模块里的参数
-a 'auth_pass=cisco gather_subset=all authorize=yes'
auth_pass #enable密码
gather_subset #收集给定子集的范围,如收集所有all;只收集配置信息config;不只收集硬件信息!hardware
-u username #登录设备用户名
-k #回车输入设备登录密码
二、Ansible的Ad-hoc介绍篇的更多相关文章
- 个性二维码开源专题<介绍篇>
由C#编写的个性二维码底层,已应用到 码晒客/疯狂创意二维码等项目上,并获得多项软件著作专利. 疯狂创意二维码 疯狂创意二维码是可用于生成风格独特的个性化二维码生成器,用户可以将目标信息输入到二维码生 ...
- ansible常用ad hoc操作
ansible group001 -i hosts.ip -m shell -a -v
- 使用ADMT和PES实现window AD账户跨域迁移-介绍篇
使用 ADMT 和 pwdmig 实现 window AD 账户跨域迁移系列: 介绍篇 ADMT 安装 PES 的安装 ADMT:迁移组 ADMT:迁移用户 ADMT:计算机迁移 ADMT:报告生成 ...
- 二、Redis基本操作——String(实战篇)
小喵万万没想到,上一篇博客,居然已经被阅读600次了!!!让小喵感觉压力颇大.万一有写错的地方,岂不是会误导很多筒子们.所以,恳请大家,如果看到小喵的博客有什么不对的地方,请尽快指正!谢谢! 小喵的唠 ...
- Ad hoc sql
SQL Server如何启用Ad Hoc Distributed Queries? 2011-08-11 14:53 wangdingbang CSDN博客 字号:T | T 本文主要介绍了SQL ...
- XE7 & IOS开发之开发账号(3):证书、AppID、设备、授权profile的申请使用,附Debug真机调试、Ad hoc下iPA文件生成演示(XCode5或以上版本推荐,有图有真相)
网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,以下讨论都是以&q ...
- XE7 & IOS开发之开发账号(2):发布证书、发布授权profile的申请使用,附Ad hoc真机调试、生成ipa文件演示(XCode所有版本通用,有图有真相)
网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,以下讨论都是以&q ...
- 最牛逼android上的图表库MpChart(一) 介绍篇
最牛逼android上的图表库MpChart一 介绍篇 MpChart优点 MpChart是什么 MpChart支持哪些图表 MpChart效果如何 最牛逼android上的图表库MpChart(一) ...
- ios开发 ad hoc
iOS证书分2种,1种是开发证书,用来给你(开发人员)做真机测试的:1种是发布证书,发布证书又分发布到app store的(这里不提及)和发布测试的ad hoc证书. 那ad hoc证书和开发证书区别 ...
- 未打开Ad Hoc Distributed Queries
SSAS访问ORACLE数据仓库读取数据创建CUBE的时候报如下错误: SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'Open ...
随机推荐
- I/O:DataInput
DataInput: boolean readBoolean() :读取一个输入字节,如果该字节不是零,则返回 true,如果是零,则返回 false. byte readByte() :读取并返回一 ...
- opatch卸载weblogic12.1.3.0补丁
1.首先进入opatch目录 2.查看opatch命令(心急于卸载的朋友直接跳过这步) [weblogic@localhost OPatch]$ ./opatch -help Oracle 中间补丁程 ...
- 从无到有构建vue实战项目(六)
十.徒手撸一个vue下拉左侧二级导航 先附上最终效果图: vue代码: <div class="dropdown-menu-explore" v-on:mouseover=& ...
- [HDU4135]CO Prime(容斥)
也许更好的阅读体验 \(\mathcal{Description}\) \(t\)组询问,每次询问\(l,r,k\),问\([l,r]\)内有多少数与\(k\)互质 \(0<l<=r< ...
- springboot4自动配置的原理(浅层)
自动配置的原理(浅层) @Configuration //这是一个配置类 @EnableConfigurationProperties(HttpProperties.class)//启用Configu ...
- 以for循环的方式了解var与let的区别
var是ES5定义变量的一种声明方式. let是ES6定义变量的一种声明方式---可定义局部变量,即定义块级作用域. 以下列简单的函数进行表现二者作用域的不同 在ES6之前,我们都是用var来声明变量 ...
- c++容器简单总结
数据结构 描述 实现头文件 向量(vector) 连续存储的元素 <vector> 列表(list) 由节点组成的双向链表,每个结点包含着一个元素 <list> 双队列(deq ...
- 14. 流、文件和IO
前言 InputStream/OutStream流用来处理设备之间的数据传输 Java.io 包几乎包含了所有操作输入.输出需要的类.所有这些流类代表了输入源和输出目标. Java.io 包中的流支持 ...
- 【JDK】JDK源码分析-TreeMap(2)
前文「JDK源码分析-TreeMap(1)」分析了 TreeMap 的一些方法,本文分析其中的增删方法.这也是红黑树插入和删除节点的操作,由于相对复杂,因此单独进行分析. 插入操作 该操作其实就是红黑 ...
- ASP.NET Core Web Api之JWT刷新Token(三)
前言 如题,本节我们进入JWT最后一节内容,JWT本质上就是从身份认证服务器获取访问令牌,继而对于用户后续可访问受保护资源,但是关键问题是:访问令牌的生命周期到底设置成多久呢?见过一些使用JWT的童鞋 ...