基本原理
一个基本的salt配置方式是一个master指挥一群minion,为了不再有假设使用任何单一拓扑结构,考虑多种布局的情况下,主控master(top master)可以控制一群master,通过syndic将操作命令传输给受控master(syndic相当于是master的助手),受控master来完成对自己旗下minion的管理,并将结果传回主控master(top master), 从而实现了主控master对所有minion的间接管理。
数据走向
任务发放:
user------->top master------->syndic----->syndic-master--------->minion.
(1)用户将需求交给top master 完成;topmaster将任务下放给master助手syndic;
(2)由syndic将任务交给master,master和top master 之间通过syndic通信;
(3)master拿到任务后再将任务分配给相应的minion端,top master并不知道有多少minion;
执行反馈:
salt-minion-------->syndic-------->top master.
minion端在执行完任务后,直接通过syndic将执行反馈返回给top master 这一过程中并不经手master
注意要点
- Syndic上得master配置文件里得file_roots,pillar_roots与主master一致
- Syndic 必须运行在master上,并且连接到另一个master(比他更高级)
- syndic有点类似于代理,本质上对与主master来说还是minion
具体实现
实验说明:
| server | ip | role |
|---|---|---|
| server4 | 172.25.3.4 | top master |
| server1 | 172.25.3.1 | master+syndic |
| server2 | 172.25.3.2 | minion |
| server3 | 172.25.3.3 | minion |
实现步骤:
在server1:
下载syndic,编辑配置文件,让master知道top master是谁,开启服务
[root@server1 salt]# yum install -y salt-syndic
[root@server1 salt]# vim /etc/salt/master
1048 syndic_master: 172.25.3.4
[root@server1 salt]# systemctl restart salt-master
[root@server1 salt]# systemctl start salt-syndic
在server4:
(1)搭建好yum源,下载salt-master
[root@server4 yum.repos.d]# pwd
/etc/yum.repos.d
[root@server4 yum.repos.d]# cat lin.repo
[rhel7]
name=rhel7
baseurl=http://172.25.254.3/rhel7.3/
gpgcheck=0
[salt]
name=salt
baseurl=http://repo.saltstack.com/yum/redhat/7.3/x86_64/2019.2/
gpgcheck=0
[root@server4 ~]# yum install -y salt-master
(2)编辑配置文件,启动服务,并查看端口是否开启
[root@server4 ~]# vim /etc/salt/master
1044 order_masters: True
[root@server4 ~]# systemctl start salt-master

(3)授权master端
[root@server4 ~]# salt-key -L
[root@server4 ~]# salt-key -A

top master端测试:
[root@server4 ~]# salt '*' test.ping
server2:
True
server3:
True
实验现象:top master 并不知道实际minion有多少也不知道都是谁,只有master这一个授权主机,但通过多级管理得到所有minion端的反馈。可以看到server4(topmaster)是通过master来和minion端通信的。
本文阐述了SaltStack中一种特殊的多级管理架构,通过topmaster、syndic和minion的角色分配,实现大规模系统的高效管理和任务调度。syndic作为master的助手,协助topmaster间接管理众多minion,确保任务的顺利执行与反馈。
1187

被折叠的 条评论
为什么被折叠?



