saltstack 不只是zeromq这一个方式,他也有像ansible那样的ssh的方式,组件的名字叫做salt-ssh ,这是个好东西,看最近群里也在关注这东西,就学习下。 

嗯哼,这里标记我的原文地址,blog.xiaorui.cc     只恨爬虫太刁 !

salt-ssh 可以独立运行的,不用minion的~ 要是需要用salt-ssh的特殊参数,比如grains获取数据的话,还是需要安装minion的,不然他是不好判断你是redhat,debian的 ~ 说句废话 要是能安装minion,谁还用salt-ssh呀。。。。


这类ssh的集群工具还是不少的,我这边简单分析下优缺点!

pdsh、pssh 这东西是要建立在你做好了key关联之后,他的优点就是简单,并发执行。 

expect 最大的有点就是交互,但是要成高性能的话,需要自己写多线程的。

fabric、paramiko python之利器,用过一段时间,该有的都有的,很是强大

但是个人觉得salt-api背靠着saltstack这个大树,前景还是不错的。 


salt-ssh 可以代替expect之类的密码推送脚本,另外说明下 salt-ssh 用的是sshpass进行密码交互的,首先看下版本,17版本后才开始有的,现在基本都是2014了。 

我们先开始安装 salt-ssh ~

salt-ssh


我们可以把要执行的信息,也就是ip,帐号,密码等 都放到一个文件里面。当然


文件路径是可以随便定义的,官方是指定到了 /etc/salt/roster

那我们先来测试下salt-ssh最基本的用法。


接着来测试下他的性能,注重于是不是并发执行 ~ 结果让人很爽,是多进程并发执行的~

详细的参数:

指定roster信息文件,这样可以随意配置定义了。 

配置一个默认的密码,然后帮你推送下 ~~~ 这个功能有点怪,规范点的公司,大家的密码都是随机生成的。当然也可以配置成不同的ip不同的密码。 

重大发现: 我在这里补充下~

salt-ssh 第一次执行是根据roster的账号密码推送密码,来实现自动交互的。

执行完了后 会在目标的服务器里面,追加master端的key

然后你就可以删除roster里面的passwd 密码条目了。

我给大家测试下,我把passwd删除了,还是可以运行,这里就不是用sshpass推送密码了,而是直接通过key了 !!!

那关于salt-ssh的参数还是不少的,大家自己看吧 ~

那么如果想针对salt-ssh模块进行二次开发,或者加点下功能扩展。 




那我们来总结下:

     其实没有ansible之前,他是个ssh工具的好选择,但是ansible来了 ! 那为了更好的控制集群,还是推荐用ansible。当然,你就是喜欢salt-ssh ! (你妹呀,介绍了半天的salt-ssh,后面居然又推荐起ansible了)






对Python及运维开发感兴趣的朋友可以加QQ群 : 478476595 !!!
{ 2000人qq大群内有各厂大牛,常组织线上分享及沙龙,对高性能及分布式场景感兴趣同学欢迎加入该QQ群 }

另外如果大家觉得文章对你有些作用!   帮忙点击广告. 一来能刺激我写博客的欲望,二来好维护云主机的费用.
如果想赏钱,可以用微信扫描下面的二维码. 另外再次标注博客原地址  xiaorui.cc  ……   感谢!
暂无相关产品

发表评论