Ansible批量在远程主机执行命令
Ansible直接执行远程命令,不用ssh登陆交互执行。
如下:
ansible all -i 192.168.199.180, -m shell -a "ifconfig" -u supermap
参数解释:
-i 连接到远程主机“192.168.199.180,”,注意这里的“,”直接指定主机名列表,没有“,”该参数则被解释为主机名的列表文件。
-m 为ansible模块名称,执行shell命令。
-a 远程shell命令,为ifconfig(获取网络配置参数)。
-u 指定执行的远程主机用户名。
-k 可以指定是否交互输入参数,如果没有,则需要在本机有预存的访问密钥。
可以先使用ssh登录,选择保存,即可自动保存下来。
主机文件格式,样例参考( host-list):
[local]
192.168.199.173 ansible_ssh_port=22 ansible_ssh_host=192.168.199.173 ansible_ssh_user=supermap ansible_ssh_pass=SuperMap
192.168.199.180 ansible_ssh_port=22 ansible_ssh_host=192.168.199.180 ansible_ssh_user=supermap ansible_ssh_pass=SuperMap
192.168.199.249 ansible_www.yongshi123.cn ssh_port=22 www.dfgjpt.com ansible_ssh_www.yongshiyule178.com host=192.168.199.249 ansible_ssh_user=openswitch ansible_ssh_pass=SuperMap
使用主机文件,自动登录后,批量执行命令:
ansible all -i host-list -m shell -a "ifconfig" -u my-username
这个还是很方便的。
最近遇到一些FreeBSD的故障,在这种操作系统上我们平时用的一些命令无法执行,FreeBSD的一些配置文件也和其他很多Linux系统不一样。为了方便以后查阅,我特别整理了这篇文档。
1. 网络
重启网络的命令:
/etc/rc.d/netif restart , /etc/netstart restart
网络配置文件:
root@mhxy-compile02:~ # cat /etc/rc.conf
ifconfig_em0="DHCP"
sshd_enable="NO"
ntpd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="AUTO"
zfs_enable="YES"
puppet_enable="YES"
ipv6_enable="NO"
hostname="mhxy-compile02.i.nease.net"
nfs_client_enable="YES"
rpc_lockd_enable="YES"
rpc_statd_enable="YES"
2. SSH
命令:
/etc/rc.d/sshd start , /etc/rc.d/sshd restart
SSH配置文件:
root@mhxy-compile02:~ # cat /etc/ssh/sshd_config
# THIS FILE IS AUTOMATICALLY GENERATED BY PUPPET.
# DO NOT EDIT THIS FILE.
# 1. Basic
Port 32200
Protocol 2
# 2. Authentication
HostKey /etc/ssh/ssh_host_rsa_key
HostKey www.boyunylpt1.com /etc/ssh/ssh_host_dsa_key
KeyRegenerationInterval 3600
ServerKeyBits 768
UsePrivilegeSeparation yes
LoginGraceTime 120
PermitRootLogin no
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
PermitEmptyPasswords no
ChallengeResponseAuthentication no
PasswordAuthentication no
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
# 3. Features
UseDNS no
X11Forwarding www.maituyul1.cn yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
AcceptEnv LANG LC_*
# 4. Logging
SyslogFacility AUTH
LogLevel INFO
# 5. x509
Subsystem sftp www.enzuovip.com /usr/libexec/sftp-server
#CACertificateFile www.huarenyl.cn /etc/ssh/ca/ca.cer
3. 防火墙
1)停止ipfw防火墙:
ipfw disable firewall
/etc/rc.d/ipfw stop
2)开启ipfw防火墙:
ipfw enable firewall
/etc/rc.d/ipfw start
3)清防火墙
ipf -Fa
4.赋予用户root权限
1)pw groupmod www.furongpt.com wheel -m
2)pw user mod -g wheel
5.查看CPU和内存
1)sysctl kern.smp.cpus或dmesg |grep cpu #查看CPU个数
2)dmesg|more或top #查看内存
参考:
Ansible快速开始-指挥集群
Ansible :一个配置管理和IT自动化工具(1/3)
Ansible :一个配置管理和IT自动化工具(2/3)
Ansible :一个配置管理和IT自动化工具 (3/3)
部署生产级的 Kubernetes 集群,使用kubespray
Kubeflow等镜像部署到集群多节点
Ansible批量在远程主机执行命令的更多相关文章
- Ansible 直接请求远程主机执行命令
ansible -all -i host1.abc.com, -m ping #注意主机名称后面的逗号,就算一台主机也是必须的.多台主机可以用逗号隔开 ansible all -i host1.abc ...
- Ansible批量更新远程主机用户密码 (包括Ansible批量做ssh互信)
按照集团运维信息安全制度, 需要每个一段时间对线上服务器密码进行一次变更,通过shell脚本部署比较繁琐,所以决定采用ansible脚本对远程主机root密码进行批量重置,该脚本已经在稳定运行在正式环 ...
- 批量复制及执行命令shell脚本
平时在处理一个或几个机器运行环境时,一个机器一个机器处理也能接受,但是如果是一批机器,几十或几百台,要是一台一台去安装环境,光是输入同一的命令,估计你自己都想吐,所有聪明的人会想一些偷懒的办法,确实可 ...
- Python-SSH批量登陆并执行命令
Python-SSH批量登陆并执行命令 #!/usr/bin/env python #-*- coding:utf-8 -*- import paramiko from time import cti ...
- ansible 批量在远程主机上执行命令
ansible 和 saltstack 都是为了同时在多台主机上执行相同的命令, 但是 salt配置麻烦,ansible基本不用配置, ansible 通过ssh来连接并控制被控节点 1. 安装 第一 ...
- Python通过paramiko批量远程主机执行命令
一.前言 在日常运维的过程中,经常需要登录主机去执行一些命令,有时候需要登录一批主机执行相同的命,手动登录执行的化效率太慢, 所以可以通过Python的paramiko模块批量执行,本篇文章基于pyt ...
- Linux centosVMware 自动化运维Ansible介绍、Ansible安装、远程执行命令、拷贝文件或者目录、远程执行脚本、管理任务计划、安装rpm包/管理服务、 playbook的使用、 playbook中的循环、 playbook中的条件判断、 playbook中的handlers、playbook实战-nginx安装、管理配置文件
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,ce ...
- ssh批量登录并执行命令(python实现)
局域网内有一百多台电脑,全部都是linux操作系统,所有电脑配置相同,系统完全相同(包括用户名和密码),ip地址是自动分配的.现在有个任务是在这些电脑上执行某些命令,者说进行某些操作,比如安装某些软件 ...
- Python实现ssh批量登录并执行命令
局域网内有一百多台电脑,全部都是linux操作系统,所有电脑配置相同,系统完全相同(包括用户名和密码),ip地址是自动分配的.现在有个任务是在这些电脑上执行某些命令,者说进行某些操作,比如安装某些软件 ...
随机推荐
- 解决Ubuntu14.04安装Chrome浏览器打不开的问题
1.安装Chrome浏览器 wget http://www.linuxidc.com/files/repo/google-chrome.list -P /etc/apt/sources.list.d/ ...
- Javascript与后台相互访问
(1)Javascript访问C#后台变量或函数 A.通过<%=%>的形式访问 var str = "<%=GetStr() %>"; var str = ...
- python 生成器按指定大小读取文件
#!/usr/bin/env python import osimport sys def read_file(fpath): Block_Size = 1024 with open(fpath,&q ...
- task1
centos定时任务 清空特定目录文件 https://www.jb51.net/article/151066.htm 这次linux下不生成日志文件主要是因为日志框架冲突问题,我解决问题的思路错了 ...
- centos7 安装 telnet
https://blog.csdn.net/wfh6732/article/details/55062016/ https://blog.csdn.net/typa01_kk/article/deta ...
- JavaScript闭包简单应用
闭包定义 在JavaScript中,当一个内部函数被其外部函数之外的变量引用时,就形成了一个闭包.简单说,闭包就是能够读取其他函数内部变量的函数. 闭包的作用: 1. 可以读取函数内部的变量 2. 让 ...
- 【原】Github+Hexo+NextT搭建个人博客【1】
该系列博客列表请访问:http://www.cnblogs.com/penglei-it/category/934299.html 摘要 GitHub 是一个开源项目的托管网站,相信很多人都听过.在上 ...
- Linux Socket 编程简介
在 TCP/IP 协议中,"IP地址 + TCP或UDP端口号" 可以唯一标识网络通讯中的一个进程,"IP地址+端口号" 就称为 socket.本文以一个简单的 ...
- 【zigbee 】2.4G信号发放器 AT2401C PA功放
概述 AT2401C 是一款面向Zigbee,无线传感网络以及其他2.4GHz 频 段无线系统的全集成射频功能的射频前端单芯片.AT2401C 是采用 CMOS 工艺实现的单芯片器件,其内部集成了功率 ...
- PAT甲题题解-1015. Reversible Primes (20)-素数
先判断n是否为素数然后把n转化成d进制下再反转,转化为十进制的num判断num是否为素数 注意n为0和1时,不是素数!!!注意反转后的num也有可能为1,不是素数!!! #include <io ...