【From】 https://blog.csdn.net/zhydream77/article/details/81223805

ansible命令基础

• ansible <host-pattern> [options]
host-pattern 主机戒定义的分组
-M 指定模块路径
-m 使用模块,默认 command 模块
-a or --args 模块参数
-i inventory 文件路径,戒可执行脚本
-k 使用交亏式登彔密码
-e 定义变量
-v 详绅信息,-vvvv 开吭 debug 模式

• 列出要执行的主机,不执行任何操作
ansible all --list-hosts

• 批量检测主机
ansible all -m ping

• 批量执行命令
ansible all -m command -a 'id' -k

批量部署证书文件
• 每次交亏输入密码比较麻烦
• 密码写入配置文件安全性很差
• 不同主机不同密码,配置文件要上天
• 使用 key 方式认证,是一个不错的选择
• 给所有主机部署公钥

ansible all -m authorized_key -a "user=root exclusive=true manage_dir=true key='$(</root/.ssh/authorized_keys)'" -k -v

举例说明:

批量检测主机
[root@ansible ~]# ansible web  -m ping

批量执行命令
[root@ansible ~]# ansible all -m command -a 'uptime'
[root@ansible ~]# ansible web  -m command -a 'uptime'
[root@ansible ~]# ansible web  -m command -a 'uptime' -k
SSH password: 
web1 | SUCCESS | rc=0 >>
 14:37:12 up  5:12,  3 users,  load average: 0.01, 0.03, 0.02

web2 | SUCCESS | rc=0 >>
 14:37:12 up  5:03,  2 users,  load average: 0.00, 0.01, 0.03

批量部署证书文件
[root@ansible ooxx]# ansible all -m authorized_key -a "user=root exclusive=true manage_dir=true key='$(</root/.ssh/id_rsa.pub)'" -k

注意:

/root/.ssh/id_rsa.pub是通过命令生成的ssh-keygen -t rsa并且在/root/.ssh/目录下可以看到的
---------------------
作者:zhy-dream
来源:CSDN
原文:https://blog.csdn.net/zhydream77/article/details/81223805
版权声明:本文为博主原创文章,转载请附上博文链接!

[转] ansible批量执行命令展示的更多相关文章

  1. ssh模仿ansible批量执行命令的功能

    #!/bin/bash ssh_hosts=("IP" "IP1".......) user=root remote_cmd="df -h" ...

  2. linux集群批量执行命令

    因为工作需要,需要修改集群中机器的配置,一台一台的修改太浪费时间,就想能不能通过自动化脚本批量执行命令,尝试写一个,自己shell不熟悉,写的有点渣渣 if [ "$#" -ne ...

  3. linux下远程服务器批量执行命令及SFTP上传文件 -- python实现

    之前写过一个python远程执行命令的脚本,但在一个性能测试中,要将程序批量分发到不同服务器,程序无法使用,再将之前的脚本更新,加入批量上传的功能.之前脚本地址:http://www.cnblogs. ...

  4. shell脚本批量执行命令----必需判断上一步执行结果--没有捷径

    # 注意:shell脚本批量执行命令,不能只写一个函数,然后把所有命令复制进去,之前试过这样是不行的.必须要有一个判断命令执行成功与否的语句 # 简单的命令可以不加结果判断符号,但是遇到解压包.sed ...

  5. Perl脚本通过Expect登陆多台设备批量执行命令并Log

    本例子尝试使用Perl脚本借助Expect模块实现如下目的: 登陆多台设备 设备登陆信息按如下格式存放于文件中. $ cat hosts.txt 192.168.30.7:node1:telnet:b ...

  6. Python 实现远程服务器批量执行命令

    paramiko 远程控制介绍 Python paramiko是一个相当好用的远程登录模块,采用ssh协议,可以实现linux服务器的ssh远程登录.首先来看一个简单的例子 import parami ...

  7. ansible安装和批量执行命令

    yum install -y ansible 编辑 /etc/ansible/hosts 文件 # This is the default ansible 'hosts' file.## It sho ...

  8. ansible安装(批量执行命令

    rpm安装 下载epl源 :  Download the latest epel-release rpm from:http://dl.fedoraproject.org/pub/epel/6/x86 ...

  9. paramiko模拟ansible远程执行命令

    主模块 #!/usr/bin/env python from multiprocessing import Process import paramiko import time import sys ...

随机推荐

  1. uva 1440 & uvalive 4597

    题目链接 题意: DAG的最小路径覆盖,一条边可以被重复覆盖多次,但是一次只能沿着DAG的方向覆盖一条链,问最少覆盖次数. 思路: 看了半天没有思路,所以去搜索了题解,然后发现是有源汇上下界的最小流, ...

  2. springboot-rabbitmq的使用

    一.RabbitMQ的介绍 RabbitMQ是消息中间件的一种,消息中间件即分布式系统中完成消息的发送和接收的基础软件.这些软件有很多,包括ActiveMQ(apache公司的),RocketMQ(阿 ...

  3. 卸载nginx

    sudo apt-get remove nginx nginx-common # 卸载删除除了配置文件以外的所有文件. sudo apt-get purge nginx nginx-common # ...

  4. 修改mysql5.7数据表字符集编码的命令

    查看表中字符集的命令 show variables like '%char%' 更改数据库中数据表的字符集靠谱命令,亲测可行,在workbench和phpmyadmin上都通过 alter table ...

  5. Hadoop-No.1之数据存储选型

    文件格式 Hadoop支持多种面向数据存储的文件格式,包括纯文本和Hadoop特有的格式,如SequenceFile.还有一些更加复杂但功能更加丰富的格式可供选择,如Avro与Parquet.不同的格 ...

  6. web 9个令人震惊的WebGL示例

    20个使用WebGL和Three.js实现的网页场景 https://www.open-open.com/news/view/9d8136 20个使用WebGL和Three.js实现的网页场景 htt ...

  7. WCF错误:由于目标计算机积极拒绝,无法连接;127.0.0.1:3456

    问题描述 最近Windows打完补丁,原来部署在本机的WCF无法连接:出现如下WCF错误:由于目标计算机积极拒绝,无法连接:127.0.0.1:3456 解决方案 检查一下本机的服务:NetTcpAc ...

  8. Js模块化开发--seajs和gruntJs

    1.Seajs库 解决开发中的冲突依赖等问题,提供代码可维护性. SeaJS 是由玉伯开发的一个遵循 CommonJS 规范的模块加载框架,可用来轻松愉悦地加载任意 JavaScript 模块和css ...

  9. HDU 5791 Two ——(LCS变形)

    感觉就是最长公共子序列的一个变形(虽然我也没做过LCS啦= =). 转移方程见代码吧.这里有一个要说的地方,如果a[i] == a[j]的时候,为什么不需要像不等于的时候那样减去一个dp[i-1][j ...

  10. hive序列化和反序列化serde

    一.简介 SerDe是Serializer/Deserializer的缩写.SerDe允许Hive读取表中的数据,并将其以任何自定义格式写回HDFS. 任何人都可以为自己的数据格式编写自己的SerDe ...