gossh是一个极简的ssh管理工具,go语言开发,编译成一个二进制程序,无任何依赖;用于远程串行或者并行管理多台Linux主机;支持远程执行命令和传递文件。
1.gossh是什么
gossh是一个使用go语言开发的极度简洁的ssh工具,只有一个二进制程序,无任何依赖,真正开箱即用。用于远程管理linux(类unix)机器:包括远程执行命令和推拉文件,支持单机和批量模式。
2.gossh能干什么
gossh提供3种核心功能:
连接到远程主机执行命令。
推送本地文件或者文件夹到远程主机。
拉取远程主机的文件到本地。
3.gossh运行模式
gossh支持单机模式和批量并行模式,也就是可以一次向一台机器发送命令执行,也可以一次向成千上万台台机器批量发送命令。批量并行模式也是gossh最大的一个特点,充分利用go在并发执行方面的优势。
单机模式。 单机模式支持上文说的三种功能:远程执行命令,推送文件或者目录,拉取文件。
批量模式。
可以通过-i 参数指定ip文件,通过-c 指定并发度。 批量并行模式同样支持上文说的三种功能:远程执行命令,推送文件或者目录,拉取文件。
并行和串行执行
批量模式默认通过-c控制并发度,如果-c 设置为1默认是串行执行模式, -c 的值大于1是并行执行模式。
并行执行模式下某台机器连不上或者执行失败不会自动退出,串行模式也一样,但是串行模式通过-s 参数可以使gossh执行过程中出错立即退出。
并行模式下没有提供出错退出的原因是,并行执行下,很难立即停止整个任务的执行,串行模式比较容易控制,在日常使用中,可以先使用串行模式验证功能,然后开启并行模式提升效率。
Github地址
请登录之后再进行评论