Ansible命令行方式执行
Ansible ad-hoc
什么是ad-hoc?
临时命令,执行完不会保存,类似于批量执行命令。
ansible的选项
-i # 指定主机清单
ansible rsync -m ping -i 1.txt
-m # 指定模块
-a # 指定动作
[root@m01 ~]# ansible nfs_group -a 'df -h'
[root@m01 ~]# ansible nfs_group -m shell -a 'df -h'
ad-hoc返回的颜色
- 绿色:被管理的主机没有发生修改
- 黄色:被控主机发生了变更
- 粉色:ansible发出的警告
- 红色:报错
查看帮助文档
[root@m01 ~]# ansible-doc shell
# shell 是模块的名称,想查看什么模块直接在后面接上即可。
ad-hoc模块
command 模块
不支持管道符等特殊字符,用于执行系统命令,不仅限于linux。和shell模块差不多。
[root@m01 ~]# ansible web_group -m shell -a 'df -h'
[root@m01 ~]# ansible web_group -m command -a 'df -h'
shell 模块
用于执行命令
[root@m01 ~]# ansible web_group -m shell -a 'df -h'
script 模块
在本地执行的脚本,功能可以同步到其它机器上面去,被控制机器不需要脚本。
[root@m01 ~]# ansible web01 -m script -a '/root/a.sh'
yum 模块
# 查看帮助
[root@m01 ~]# ansible-doc yum
# 安装httpd
[root@m01 ~]# ansible web_group -m yum -a 'name=httpd state=latest'
[root@m01 ~]# ansible web_group -m yum -a 'name=httpd state=present'
# 一般使用present
# 卸载httpd
absent
[root@m01 ~]# ansible web_group -m yum -a 'name=httpd state=absent'
# 指定网络的rpm包
[root@m01 ~]# ansible web_group -m yum -a 'name=https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-agent-4.4.1-1.el7.x86_64.rpm state=present'
# 类似于
yum -y install https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/SRPMS/zabbix-4.4.1-1.el7.src.rpm
# 在db组安装nginx,前提是db组上的主机有本地安装的包。
[root@m01 ~]# ansible db_group -m yum -a 'name=/root/nginx-1.18.0-1.el7.ngx.x86_64.rpm state=present'
需要掌握的方法
name:
指定安装的软件。
可以是本地的也可以是远程的链接包
state:
prsent 正常安装,类似于yum -y install
absent 删除、卸载
lastet 最新版本
yum_repository 模块
[root@m01 ~]# ansible-doc yum_repository
[root@m01 ~]# ansible web_group -m yum_repository -a 'name=gong description=gong baseurl=zp.gong.com gpgcheck=0 enabled=no'
# web01生成的文件
[root@web01 ~]# cat /etc/yum.repos.d/gong.repo
[gong]
baseurl = zp.gong.com
enabled = 0
gpgcheck = 0
name = gong
# file指的是yum仓库的文件名,gong是[ ] 里面的内容,des是name的内容
[root@m01 ~]# ansible web_group -m yum_repository -a 'file=nginx name=gong description=gong baseurl=zp.gong.com gpgcheck=0 enabled=no'
# web01生成的文件
[root@web01 ~]# cat /etc/yum.repos.d/nginx.repo
[gong]
baseurl = zp.gong.com
enabled = 0
gpgcheck = 0
name = gong
# 删除yum仓库文件,最好是把文件名和仓库名都加上,防止误删。
[root@m01 ~]# ansible web_group -m yum_repository -a 'file=nginx name=gong state=absent'
# 直接在文件里面添加仓库,file不变,其它参数改变就会加上
[root@m01 ~]# ansible web_group -m yum_repository -a 'file=nginx name=liao description=liao baseurl=tencent.gong.com gpgcheck=0 enabled=yes'
[root@web01 /etc/yum.repos.d]# cat nginx.repo
[xiao]
baseurl = qq.gong.com
enabled = 1
gpgcheck = 0
name = xiao
[liao]
baseurl = tencent.gong.com
enabled = 1
gpgcheck = 0
name = liao
name #指定仓库名,如果没有file,则仓库名为文件名
baseurl #指定yum源
description # yum配置文件中的name
gpgcheck #指定检查秘钥,也可用数字
no
yes
enabled #是否启用仓库
no
yes
Ansible命令行方式执行的更多相关文章
- Windows命令行方式执行OracleSQL脚本
调用格式 sqlplus user/pwd@orcl @F:\DB_BAKFile\createpro.sql>>F:\DB_BAKFile\log\createpro.log SQL脚本 ...
- 以cmd命令行方式执行php文件时,传递参数
1. php自带的两个参数$argc, $argv: 1.1. $argv : (后面的v是variables的意思),传递进来的参数会以数组的方式保持在这个变量里 1.2. $argc : (后面的 ...
- 转 mysql mysql命令行中执行sql的几种方式总结
https://www.jb51.net/article/96394.htm 1.直接输入sql执行 MySQL> select now(); +---------------------+ | ...
- 在非SQL客户端使用命令行方式定期连接SQL Server 服务器并模拟用户查询操作,同时输出信息内容
一个很长的标题,实现的功能就是尽量使用非人力的方式模拟人去做一件事情,为了便于记录,将他们输出成文件方便查阅. 图形界面方式,使用微软自己的ConnMaker.exe,或者Microsoft 数据连接 ...
- MySQL命令行下执行.sql脚本详解
本文主要介绍一个在MySQL命令行下执行脚本文件的例子,通过这个例子让我们来了解一下在命令行下MySQL是怎样执行脚本的吧.现在我们开始介绍这一过程. 1.首先编写sql脚本,保存为的:book.sq ...
- iOS:命令行方式使用OSChina托管私有代码
一.介绍 在项目开发中,使用版本控制工具是必不可少的开发工具,它可以帮助我们程序员写完代码后及时提交备份,防止因个人操作导致代码被误删除了或者丢失了,安全可靠.同时,使用版本控制器工具也可以很方便的进 ...
- JAVA基础学习之命令行方式、配置环境变量、进制的基本转换、排序法、JAVA文档生成等(1)
1.命令行方式 dos命令行,常见的命令: dir:列出当前目录下的文件以及文件夹 md:创建目录 rd:删除目录 cd:进入指定目录 cd..:退回到上一级目录 cd/:退回到根目录 del:删除文 ...
- SoapUI命令行方式运行
http://stackoverflow.com/questions/9220132/soapui-groovy-script-calls-to-command-line SoapUI支持用命令行方式 ...
- Ubuntu下几个命令行方式使用的图片浏览工具
想找几个Ubuntu下可以以命令行方式使用的图片浏览工具. Google了一些资料,找到下面几个web: 1.pho:轻巧的命令行图片查看器 其中介绍了工具pho,其功能特点,见下面的转帖内容: ph ...
随机推荐
- HarmonyOS三方件开发指南(17)-BottomNavigationBar
目录: 1.引言 2.功能介绍 3.BottomNavigationBar使用指南 4.BottomNavigationBar开发指南 5.<HarmonyOS三方件开发指南>文章合集 引 ...
- Symmetry UVA - 1595
The figure shown on the left is left-right symmetric as it is possible to fold the sheet of paper ...
- Day06_31_接口(Interface)
java 接口(Interface) 接口和抽象类的区别? 子类只能通过extends关键字去继承抽象类(Abstract),子类(如果不是抽象类)则必须覆写抽象类之中的全部抽象方法(如果子类没有实现 ...
- hdu4400 BFS+STL
题意: 煤矿爆炸,每个煤矿有自己的x,y,d,d是他爆炸后会是d距离内的爆炸,每次输入一个爆炸的煤矿,问你这个煤矿爆炸会有多少个煤矿爆炸. 思路: 爆炸的过程就是搜索的过程, ...
- hdu1024 最大m子序列和
题意: 给你一个序列n个数组成,然后让你在里面找到m个子序列,让这m个子序列的和最大. 思路: dp[i][j]表示的是第j个数字在第i个子序列时的当前最优值. dp[i][j] ...
- 数据链路层协议(Ethernet、IEEE802.3、PPP、HDLC)
目录 数据链路层协议 Ethernet以太网协议 以太网数据帧的封装 IEEE802.3协议 PPP协议 HDLC协议 数据链路层协议 首先Ethernet.IEEE802.3.PPP和HDLC都是数 ...
- 【vue-04】模块化开发
组件化开发,一般是将重复的代码抽取成一个组件,供其他地方复用,一般情况下,提到组件化开发,都是指前端的组件化开发. 模块化开发,一般是将同一类功能模块的代码放到一起统一进行管理,是基于代码层面的,一般 ...
- jpa模糊查询(表中的某些数据)
业务代码 Controller @GetMapping({"/task/project"}) public ResponseEntity findByProjectTitle(@R ...
- idea下不能运行main 函数
解决办法: 需要修改.idea/workspace.xml 在<component name="PropertiesComponent">里添加<property ...
- Window内核学习之保护模式基础
段寄存器 段寄存器有6个分别是 cs,ss,ds,es,fs,gs.这些段寄存器包含16位的可见部分和80位的隐藏部分,共90位. 16位的可见部分就是我们知道的cs等段寄存器的值,我们可以在od中查 ...