saltstack之salt-ssh的细枝末节

Posted DevOps

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了saltstack之salt-ssh的细枝末节相关的知识,希望对你有一定的参考价值。

1、roster定义

花名册(roster)定义存放主机列表文件,默认存放在/etc/salt/roster

格式:

<Salt ID>:    # ID,用于salt-ssh引用
host:     # IP或域名
user:     # 登录用户名
passwd:   # 登录密码

    # 可选参数
port:     # 自定义的端口
sudo:     # 是否允许sudo到root,默认不允许
priv:     # ssh登录key路径,默认为salt-ssh.rsa
timeout:  # 等待超时


2、添加ssh信任

salt-ssh会在自己配置目录下产生公私钥,也可通过添加公钥配置进行验证

saltstack之salt-ssh的细枝末节

saltstack之salt-ssh的细枝末节

3简单测试,直接执行命令

salt-ssh 使用sshpass 进行远程控制,另,操作的时候会发现初次认证需要确认,一个验证的提示出现了而且是一下子走到最后了,没办法按Y之类的按键,非常烦人,如下所示:

saltstack之salt-ssh的细枝末节

解决的办法有两种:

  • 添加本机known_hosts

saltstack之salt-ssh的细枝末节

  • 增加salt免校验参数


4、执行格式:


salt [参数] [对象] [命令]

其中对象支持多种匹配方式,常见的 通配符、正则表达式、列表、分组、复合匹配等

相关参数:

查看文件及执行命令


-r 执行shell命令

–roster-file 指定roster文件

–refresh 强制刷新master端缓存数据

–max-procs 设置客户端并发数,默认25

–passwd 设置默认密码

–out-file=output_file, –output-file=OUTPUT_FILE 把信息输出到指定文件

–no-color 输出的结果不带颜色

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

执行完了后 会在目标的服务器里面,追加master端的key,以后再对服务器执行操作不再依赖于密码。



欢迎关注运维自研堂订阅号,运维自研堂是一个技术分享平台,主要是运维自动化开发:python、django、saltstack、tornado、bootstrap、redis等经验分享。





以上是关于saltstack之salt-ssh的细枝末节的主要内容,如果未能解决你的问题,请参考以下文章

SaltStack之salt-ssh

SaltStack之salt-ssh

SaltStack之salt-ssh

SaltStack之salt-ssh

SaltStack的salt-ssh使用及LAMP状态设计部署

SaltStack salt-ssh 用法