ansible使用2-命令
并发与shell
# bruce用户身份,-m指定模块名称,默认模块名command,all所有目标主机,也可以指定组名或者主机名
ansible all -m ping -u bruce
# bruce用户身份,sudoing到root用户
ansible all -m ping -u bruce --sudo
# bruce用户身份,sudoing到batman用户,-U(--sudo-user)指定sudo用户,-K(--ask-sudo-pass)指定sudo用户密码
ansible all -m ping -u bruce --sudo -U batman
# -f指定并发数, command模块不支持变量
ansible atlanta -m command -a '/sbin/reboot' -f 10
# -k指定用户密码,-a模块参数,shell模块支持变量,命令参数必须使用双引号
ansible all -u root -k -m shell -a "/bin/echo $i"
文件传输
# copy模块可以拷贝文件
ansible atlanta -m copy -a 'src=/etc/hosts dest=/tmp/hosts'
# file模块可以改变文件属性,建立删除目录文件
ansible webservers -m file -a 'dest=/srv/foo/b.txt mode=600 owner=mdehaan group=mdehaan'
ansible webservers -m file -a 'dest=/path/to/c mode=755 owner=mdehaan group=mdehaan state=directory'
ansible webservers -m file -a 'dest=/path/to/c state=absent'
包管理(yum模块)
ansible webservers -m yum -a 'name=acme state=present' # 确保acme包被安装,但是不升级
ansible webservers -m yum -a 'name=acme-1.5 state=present' # 指定acme包版本号
ansible webservers -m yum -a 'name=acme state=latest' # acme包升级到最新版本
ansible webservers -m yum -a 'name=acme state=absent' # 确保acme包不被安装
用户&组(user&group模块)
ansible all -m user -a 'name=foo password=<crypted password here>' # 建立用户
ansible all -m user -a 'name=foo state=absent' # 删除用户或者组
版本控制工具(git模块)
ansible webservers -m git -a 'repo=git://foo.example.org/repo.git dest=/srv/myapp version=HEAD'
服务管理(service模块)
ansible webservers -m service -a 'name=httpd state=started' #启动
ansible webservers -m service -a 'name=httpd state=restarted' #重启
ansible webservers -m service -a 'name=httpd state=stopped' #停止
有时限的后台操作
# 后台运行long_running_operation命令,时间为1小时(3600s),系统会给执行同一任务主机一个jid
ansible all -B 3600 -a '/usr/bin/long_running_operation --do-stuff'
# 轮询任务的执行状态
ansible all -m async_status -a 'jid=123456789'
# 后台运行时间1800秒,每60分钟轮询检查一次
ansible all -B 1800 -P 60 -a '/usr/bin/long_running_operation --do-stuff'
系统facts(setup模块)
# 获取目标主机信息
ansible all -m setup
ansible使用2-命令的更多相关文章
- Ansible常用模块命令
Ansible常用模块命令 一.安装ansible yum install epel-release yum install ansible 二.配置文件配置 vi /etc/ansible/ansi ...
- Ansible之系列命令详解
ansible系列命令有:ansible.ansible-doc.ansible-playbook.ansible-vault.ansible-console.ansible-galaxy.ansib ...
- ansible 安装 使用 命令 笔记 生成密钥 管控机 被管控机 wget epel源
ansible 与salt对比 相同 都是为了同时在多台机器上执行相同的命令 都是python开发 不同 agent(saltstack需要安装.ansible不需要) 配置(salt配置麻烦,a ...
- ansible的Ad-hoc命令
本文主要介绍了ansible的Ad-hoc命令. Ansible提供两种方式去完成任务,一是 ad-hoc 命令,一是写 Ansible playbook.前者可以解决一些简单的任务, 后者解决较复杂 ...
- paramiko模拟ansible远程执行命令
主模块 #!/usr/bin/env python from multiprocessing import Process import paramiko import time import sys ...
- Ansible 远程执行命令
写法如下: [root@localhost ~]$ ansible 192.168.119.134 -m command -a 'date' # 对指定的主机远程执行命令,-m 指定使用哪个模块,-a ...
- Ansible学习 ad-hoc命令
Ansible提供两种方式去执行命令,一种是ad-hoc命令,一种是写入Ansible playbook.类似于前者在命令行敲shell,后者是写shell-script脚本,前者解决一些简单的任务, ...
- [转] ansible批量执行命令展示
[From] https://blog.csdn.net/zhydream77/article/details/81223805 ansible命令基础 • ansible <host-patt ...
- Ansible 清单与命令解析
在大规模的配置管理工作中我们需要管理不同业务的不同机器,这些机器的信息都存放在 Ansible 的 Inventory 组件里面,在我们工作中配置部署针对的主机必须先存放在 Invento 组里面,这 ...
- ansible使用临时命令通过模块来执行任务
使用临时命令通过模块来执行任务 一.查看系统上安装的所有模块 ansible-doc -l 查看ping模块帮助文档 ansible-doc ping 1.ansible模块 文件模块: copy:将 ...
随机推荐
- Eclipse报错:Attribute "xmlns" was already specified for element "web-app".
原因: 在Eclipse中修改了已有的Web工程的工程名,然后出现该错误. Attribute "xmlns" was already specified for element ...
- 【STL基础】list
list 构造函数: //default: list<T> l; //空的list //fill: list<T> l(n); //n个元素, 元素默认初始化 list< ...
- SprimgMVC学习笔记(六)—— 全局异常的处理
一.处理思路 springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑. 系统中异常包括两类:预期异常和运行时异常RuntimeExcept ...
- java的Spring学习1--spring引用及属性(setter,getter)注入
1.目录结构 项目->src->main->java->com.test.ppmoney 设置java文件夹为代码 在Project Structure 里的 Modules ...
- Linux网络编程基础
1. Linux网络模型 ① OSI七层模型和Linux四层模型 ② 各种协议之间的关系及在Linux模型中的位置 ③ 协议封装:各种协议处于一种层层封装的关系 (1)Ethernet (2)IP * ...
- jconsole如何查看
https://www.jdon.com/idea/jvm-gc.html 场景: https://www.cnblogs.com/yszzu/p/9648579.html 查看大对象到底占用多 ...
- MySQL之concat以及group_concat的用法
本文中使用的例子均在下面的数据库表tt2下执行: 一.concat()函数 1.功能:将多个字符串连接成一个字符串. 2.语法:concat(str1, str2,...) 返回结果为连接参数产生的字 ...
- es6数组新方法
(1)Array.from(aarr,fn,obj) function fn(dr, sd, d) { /*Array.from 类数组转化为数组*/ console.log(arguments) v ...
- python 矢量化的字符串
- pandas DataFrame数据转为list
dfpath=df[df['mm'].str.contains('20180122\d')].values dfplist=np.array(dfpath).tolist()