SaltStack salt-ssh 用法

时间:2023-03-09 04:59:35
SaltStack salt-ssh 用法

以下在 master 操作:

(1) 我们在安装部署 SaltStack 的时候,需要安装 salt 客户端,还要与 salt 服务端进行认证才能互相通信
(2) 如果我们使用 salt-ssh 的方式就不需要安装 salt 客户端,也不需要做认证,是 master 基于 ssh 去连接 minion 的

[root@localhost ~]$ yum install -y https://repo.saltstack.com/yum/redhat/salt-repo-latest-2.el7.noarch.rpm    # 安装salt源
[root@localhost ~]$ yum install -y salt-ssh # 安装salt-ssh
[root@localhost ~]$ cat /etc/salt/roster    # 编辑salt-ssh配置文件
minion01: # 指定客户端主机名
host: 192.168.119.140 # 指定客户端IP
user: root # 指定登录用户
passwd: root # 指定登录密码
port: 22 # 指定ssh端口
[root@localhost ~]$ salt-ssh --key-deploy '*' -r 'w'    # 使用salt-ssh远程执行'w'命令,-r 表示直接使用 shell 命令
minion01: # --key-depoly表示第一次执行的时候会把master上的公钥推送到minion上,这样我们就可以把/etc/salt/roster里的密码删掉了
---------- # 以下,第一次执行会提示是否确认连接,所以要再跑一次salt-ssh
retcode:
254
stderr:
stdout:
The host key needs to be accepted, to auto accept run salt-ssh with the -i flag:
The authenticity of host '192.168.119.140 (192.168.119.140)' can't be established.
ECDSA key fingerprint is SHA256:CxwMdrL3tICHpeDJ3sa97XInJlKjs4oNFZ0/0wV9Vmk.
ECDSA key fingerprint is MD5:a6:25:3c:a6:02:fc:f0:12:70:76:43:33:6c:55:d5:39.
Are you sure you want to continue connecting (yes/no)?
[root@localhost ~]$ salt-ssh --key-deploy '*' -r 'w'    # 再跑一次就不会有提示了
[root@localhost ~]$ vim /etc/salt/roster # 把密码去掉
[root@localhost ~]$ salt-ssh '*' -r 'w' # 继续再跑一次,不需要再加--key-depoly