ansible模块
ansible模块:
模块(Modules),类似于 “任务插件“(”task plugins”)或“库插件”(“library plugins”)的东西。
模块 可以单独的被ansible命令调用;也可以在palybook的每个任务中被执行。
每个模块都能接收参数(arguments),绝大部分arguments的格式是key=value,用空格隔开。
一些如 ansible servers -m command -a "/sbin/reboot -t now",不是key=value格式,而是直接传shell命令。
命令行调用:
ansible webservers -m service -a "name=httpd state=started"
ansible webservers -m ping
ansible webservers -m command -a "/sbin/reboot -t now"
命令行中的-m表示调用哪个模块,-a表示模块的参数(arguments)。
palybook中调用:
- name: reboot the servers
action: command /sbin/reboot -t now
- name: reboot the servers
command: /sbin/reboot -t now // 可省略action,等同于action: command
- name: restart webserver
service: name=httpd state=restarted
也可以用yaml的语法传入参数:
- name: restart webserver
service:
name: httpd
state: restarted
所以的模块都有统一的json格式的返回值。
模块是等幂的
避免使用模块改变,模块必须是幂等的(idempotent,不改变的)???
模块会尽可能避免对系统作出改动,除非必须要改动的时候。
当使用playbooks时, 模块能够触发 ‘change events’,触发后会通知 ‘handlers’ 去运行附加任务。
了解模块的方法:
ansible-doc 模块名称 , ansible-doc -l列出所有模块。
常用模块:
setup 查看主机的一些基本信息
ping 测试主机的运行状态
file 文件操作
copy 复制文件到主机
command 在主机上执行命令
shell 切换到shell,执行指定的指令
其他模块:
service:系统服务管理
cron:计划任务管理
yum:yum软件包安装管理
synchronize:使用rsync同步文件
user:系统用户管理
group:系统用户组管理
统一返回值
- backup_file
- changed
- failed
- invocation
- msg
- rc
- results
- skipped
- stderr
- stderr_lines
- stdout
- stdout_lines
ansible模块的更多相关文章
- ansible笔记(3):ansible模块的基本使用
ansible笔记():ansible模块的基本使用 在前文的基础上,我们已经知道,当我们使用ansible完成实际任务时,需要依靠ansible的各个模块,比如,我们想要去ping某主机,则需要使用 ...
- 第4天:Ansible模块
Ansible对远程服务器的实际操作实际是通过模块完成的,其工作原理如下: 1)将模块拷贝到远程服务器 2)执行模块定义的操做,完成对服务器的修改 3)在远程服务器中删除模块 需要说明的是,Ansib ...
- ansible模块command、shell、raw、script
简介 环境: ansible端: ip:192.168.100.129 hostname:node1.lansgg.com client端: ip:192.168.100.131 hostname:v ...
- win10的pycharm中安装ansible模块过程
前面的安装报错信息 ansible模块安装报错:Could not install packages due to an OSError: [Errno 2] No such file or dire ...
- Ansible 模块命令介绍
copy模块: 目的:把主控端/root目录下的a.sh文件拷贝到到指定节点上 命令:ansible 10.1.1.113 -m copy -a 'src=/root/a.sh dest=/tmp/' ...
- ansible 模块 分享
A a10_server 管理A10 Networks AX / SoftAX / Thunder / vThunder设备 a10_service_group 管理A10网络设备的服务组 a10_v ...
- ansible 模块
1. #vim /etc/ansible/yaml/back.yml - hosts: siyi tasks: - name: "yum rsync" yum: name=rsyn ...
- ansible模块学习
ansible的功能: 模块化任务,调用特定的模块,完成特定的任务 基于python语言实现,由paramiko.pyyaml和jinja2三个模块构建 部署简单,agentless,ansible基 ...
- 4.1、Ansible模块
ansible-doc -l 列出所有模块 ansible-doc 模块名 查看模块的help说明 ansible-doc -s module_name:获取指定模块的使用信息 ***文 ...
随机推荐
- 对开发中常见的内存泄露,GDI泄露进行检测
对开发中常见的内存泄露,GDI泄露进行检测 一.GDI泄露检测方法: 在软件测试阶段,可以通过procexp.exe 工具,或是通过任务管理器中选择GDI对象来查看软件GDI的对象是使用情况. 注意点 ...
- 多名Uber司机被指刷单遭封号 一周薪水为0
昨天,一司机在Uber“司机之家”办公地墙上写了泄愤的话 摄/法制晚报记者 苏妮 司机展示的账单显示,上周的薪水几乎为零,上面用英文标注了“欺诈行为”的字样 摄/法制晚报记者 苏妮 法制晚报讯(记者 ...
- 送给刚刚開始学cocos2d-x引擎 移植Android的同学
刚刚開始学cocos2-x,不过依照教程把已经安了一般Android的开发环境的eclipse又一次升级到安装好cdt和ndk就花了我几十小时,差点都要放弃了. 參考博客 http://blog.cs ...
- hdu2554-N对数的排列问题
http://acm.hdu.edu.cn/showproblem.php?pid=2554 假设所有的2n个数据的位置分别从1~2n标号. 现在假设其中第ai个数据(双胞胎),和bi.那么他们的位置 ...
- TabelView的多选模式
@interface ViewController ()<UITableViewDelegate,UITableViewDataSource> @property(nonatomic,st ...
- 大夏VIEW使用技巧
HDXTextView *remark=[[HDXTextView alloc] initWithFrame:CGRectMake(leftmargin-5,labbackView.top, cell ...
- 循环获取<ul>下拉列表的的值。进行对比,正确的家样式
$(function () { //要对比的值 var mysqlanswer = $("#wds-mysqlcuranswer").val(); // topic-opt ...
- mysql server5.6.28 修改数据目录
1.查看配置文件 mysql --help | grep my.cnf 列出使用哪个配置文件(顺序推) 2.service mysql stop 3.创建新目录 mkdir /data 4.迁移之前的 ...
- 【转】System.Data.OracleClient requires Oracle client software version 8.1.7 or greater
安装完ASP.NET,Oracle9i客户端后,使用System.Data.OracleClient访问Oracle数据库如果出现这种错误:System.Data.OracleClient requi ...
- idea中使用sbt构建scala项目及依赖
1.安装scala插件 http://www.cnblogs.com/yrqiang/p/5310700.html 2. 详细了解sbt: http://www.scala-sbt.org/0.13/ ...