用ssh和互信链接建立批量执行

main server: 192.168.100.101

sub sever1: 192.168.100.102

sub server2: 192.168.100.103

main server执行脚本:/data/release/run.sh

#!/bin/sh
if [ -z "$1" ]; then
  echo "need para!"
  exit
fi
port=22
target=/data/release/run.sh
srvs=(192.168.100.102 192.168.100.103)

for srv in ${srvs[*]}
do
        ssh -f -p $port $srv $target \"$1\" &
done

sub server执行脚本:/data/release/run.sh

#!/bin/sh
if [ -z "$1" ]; then
 echo "need para!"
  exit
fi
cd /data/release
#echo "web1 $1"
$1

互信连接建立:

1. 创建密钥对

[[email protected]_165_58_tlinux ~]# ssh-keygen

2. 传送公钥到sub server

ssh-copy-id -p 22 -i /root/.ssh/id_rsa.pub [email protected]

时间: 2024-10-15 07:37:52

用ssh和互信链接建立批量执行的相关文章

“[email protected]'s password:”说明ssh互信没有建立起来

ssh-keygen -t dsa出现提示都回车就行.cd ~/.sshcat id_dsa.pub >> authorized_keys然后ssh localhost如果不需要密码就是设置成功了.如果不成功,检查authorized_keys和.ssh目录的权限chmod 644 authorized_keyscd ~chmod 700 .ssh应该就可以了. "[email protected]'s password:"说明ssh互信没有建立起来

python 通过paramiko模块批量执行ssh命令

多台设备批量执行ssh命令,目前是串行,后期会加入多线程实现并行,直接上源码 # 多台设备批量执行ssh命令     #!/usr/bin/env python     # -*- coding:utf-8 -*-     __author__  = 'babyshen'     __version__ = '1.0.0'     import paramiko     class SSh(object):     def __init__(self,port,username,password

python 批量执行脚本(服务端和客户端建立TCP连接)

有很多开源的批量部署的工具可以使用,比如puppet, ansible , saltstack , chef . 但这些工具都有自己的一套语法规则,你得按照他的语法来编写程序,然后批量执行. 那有没有方法可以直接写bash 或者Python脚本,然后批量执行呢? 方法当然是有的,需要自己写程序来传输脚本,拷贝文件,再复杂点,可以自定义脚本式同步还是异步执行,自定义要执行的主机组,等等,需要根据自己的业务需要来想. 这里只是抛砖引玉,我采用建立socket(TCP)连接来批量执行脚本. 服务端脚本

记录一则Linux SSH的互信配置过程

需求:四台Linux主机,IP地址为192.168.10.10/11/12/13,配置root用户的等价性1.各节点ssh-keygen生成RSA密钥和公钥 ? 1 ssh-keygen -q -t rsa  -N "" -f  ~/.ssh/id_rsa 2.将所有的公钥文件汇总到一个总的授权key文件中在10执行汇总: ? 1 2 3 4 ssh 192.168.10.10 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

批量执行SQL文件

原文:批量执行SQL文件 摘要:很多时候我们在做系统升级时需要将大量的.sql文件挨个执行,十分不方便.而且考虑到执行顺序和客服的操作方便性,能不能找到一种简单的方法来批量执行这些sql文件呢? 主要内容: 准备工作 利用osql/ocmd命令批量执行sql文件 使用master..xp_cmdshell存储过程调用osql/ocmd命令 总结 一.准备工作 既然是要批量执行sql文件,首先我们建立两个sql文件:1.sql和2.sql. 1.sql的内容: INSERT INTO dbo.Pr

Paramiko模块基本使用,通过ssh远程连接服务器,并执行操作

Paramiko模块 通过ssh远程链接服务器并执行响应的操作,类似于XShell ps:ansible批量管理服务器工具,底层用的就是paramiko模块 安装 pip3 install paramiko 基本使用 远程链接服务器的方式 用户名和密码 公钥私钥的方式 paramiko上面两种方式都支持 执行命令 用户名和密码的方式 import paramiko # 创建SSH对象 ssh = paramiko.SSHClient() # 允许链接不在know_hosts文件中的主机 ssh.

批量执行shell命令

虽然目前都实现了自动化如puppet saltstack在环境中的应用,但工作中不可避免的要自己写一些简单的批量执行shell命令的脚本. python paramiko模块是目前使用得较为顺手的模块,执行命令时基本无需要转换,直接将shell命令扔进去执行就OK 简单示例,10个线程同时执行ssh或scp动作,未设置timeout时间,如执行长时间无反应会导致脚本执行问题: #!/usr/bin/python # _*_ coding: utf-8 _*_ import paramiko im

python批量执行paramiko

puppet 分发软件  同步文件 ssh-批量执行-paramiko-比较好的模块 直接修改远端主机的host文件 python批量执行paramiko,布布扣,bubuko.com

2.3-命令批量执行脚本

命令批量执行脚本,同样需要两个脚本来实现:1 exe.expect 2 exe.sh 3 ip.list    IP列表 cat exe.expect #!/usr/bin/expect set host [lindex $argv 0]            #第一个参数,IP列表 set passwd "hd792310" set cm [lindex $argv 1]              #第二个参数,cm要执行的命令 spawn ssh [email protected]