从SaltStack 一开始的文章《saltstack入门概述(1)》就说明了saltstack架构的几种运行模式,今天就开始讲一下如何针对通过ssh协议的方式,使用salt-ssh管理做一个小笔记说明。saltstack的官方说明是:
Execute salt commands and states over ssh without installing a salt-minion.
大概意思是说:可以不在客户端安装minion,直接通过ssh协议进行通信进行salt命令和states执行。这样下来,对免客户端安装agent的这种需求提供了解决方案,同时,也可以和Minion共同使用,建议多进入官网学习了解。话外音,如果master所处的服务器沦陷,那么其他服务器也跟着遭殃。
1,安装salt-ssh
git clone https://github.com/saltstack/salt.git
python setup.py install
2,配置文件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: # 等待超时
这里说明下,不建议提交root用户以及密码,避免泄露。最好使用sudo,最小的权限就是最大的安全。关于sudo的用法请参考《linux命令su和sudo区别小结》
我这里做测试使用,sudu 的用户21yunwei设置的比较大的,以后注意实际环境来定,不要搞这么大。我设置的是:
aliserver: host: 115.29.249.xxx user: 21yunwei passwd: xxxxxx port: 33 sudo: True
3,执行测试。可以看如下显示:
[root@Master ~]# salt-ssh 'aliserver' test.ping aliserver: True
[root@Master ~]# salt-ssh 'aliserver' -r 'sudo /sbin/ifconfig' aliserver: ---------- retcode: 0 stderr: Could not chdir to home directory /home/21yunwei: No such file or directory stdout: 21yunwei@115.29.249.xxx's password: eth0 Link encap:Ethernet HWaddr 00:16:3E:00:31:4F inet addr:10.162.51.xxx Bcast:10.162.63.255 Mask:255.255.240.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:977061 errors:0 dropped:0 overruns:0 frame:0 TX packets:326 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:43794854 (41.7 MiB) TX bytes:13692 (13.3 KiB) Interrupt:165 eth1 Link encap:Ethernet HWaddr 00:16:3E:00:35:65 inet addr:115.29.249.xxx Bcast:115.29.251.255 Mask:255.255.252.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:19752359 errors:0 dropped:0 overruns:0 frame:0
salt-run命令使用小总结:
(1) -r 里边加原始shell命令,类似本机执行。
(2) salt 还可以执行state,其执行命令方式和salt命令一模一样。
(3) target上使用有差别,如果没有安装minion等,无法调用grains等,请根据实际情况结合定义参数或结合minion混合使用。
官网地址https://docs.saltstack.com/en/latest/topics/ssh/index.html 建议详细了解,这里只简单做笔记。
china地址:saltstack用户组官网地址http://docs.saltstack.cn/topics/ssh/index.html#targeting-with-salt-ssh
转载请注明:西数超哥博客www.ysidc.top» [原创]Saltstack 运行架构扩展:salt-ssh使用方法
https://www.ysidc.top 西数超哥博客,数据库,西数超哥,虚拟主机,域名注册,域名,云服务器,云主机,云建站,ysidc.top