Salt可以使用SSH来管理,对于没有安装salt-minion的客户端,可以使用salt-ssh。但是其执行速度要比安装salt-minion 慢。


Salt-SSH的使用

如果要使用salt-ssh,需要在管理端安装salt-ssh:

# yum install salt-ssh -y

使用salt-ssh不能配置job-cache,否则会产生冲突。

修改配置文件 /etc/salt/roster,配置要管理的主机

# vim  /etc/salt/roster
node1:
  host: 172.16.10.60
  user: root
  port: 22
  passwd: password
  sudo: True
  tty: True
node2:
  host: 172.16.10.61
  user: root
  port: 22
  passwd: password
  sudo: True
  tty: True

执行salt-ssh命令:

# salt-ssh '*' -i test.ping       
node2:
    True
node1:
    True

 在初次使用的时候会输入密码进行确认,从而生产一对密钥。       


salt-ssh 支持的命令:

# salt-ssh '*'  -r 'ifconfig'   # -r 参数直接执行命令

salt 也可以使用高级状态:

#salt-ssh '*'  state.highstate

salt-ssh可以和minion来结合使用,如升级minion或者执行命令。


普通用户执行sudo命令:

salt-ssh '*' -r "cd /tmp && sudo rpm -ivh zabbix-agent-3.2.5-1.el7.x86_64.rpm"
salt-ssh '*' -r "sudo systemctl start zabbix-agent"


提示:

在使用salt-ssh会提示输入指纹验证之类,可以通过修改配置让系统不再提示。

[root@node1 ~/.ssh]# echo "StrickHostKeyChecking no" > config