Saltstack_使用指南16_syndic

1. 主机规划

服务器名称 操作系统版本 内网IP 外网IP(模拟) Hostname 部署模块
salt100 CentOS7.5 172.16.1.100 10.0.0.100 salt100 salt-master、salt-minion、mariadb
salt01 CentOS7.5 172.16.1.11 10.0.0.11 salt01 salt-master、salt-syndic、salt-minion
salt02 CentOS7.5 172.16.1.12 10.0.0.12 salt02 salt-master、salt-syndic、salt-minion
salt03 CentOS7.5 172.16.1.13 10.0.0.13 salt03 salt-master、salt-syndic、salt-minion
salt 版本
[root@salt100 ~]# salt --version
salt 2018.3.3 (Oxygen)
[root@salt100 ~]# salt-minion --version
salt-minion 2018.3.3 (Oxygen)
salt syndic文档
https://docs.saltstack.com/en/latest/topics/topology/syndic.html
salt-syndic文档
https://docs.saltstack.com/en/latest/ref/cli/salt-syndic.html

2. salt-syndic案例架构

在这里插入图片描述

说明:

Syndic 节点可以看作是一个特殊的直通minion节点。Syndic 节点由salt-syndic和salt-master组成。其中salt-master用于控制更低级的minion节点,salt-syndic用于连接更高级的master节点(有时也称为master的master)。

重点:

Syndic的file_roots和pillar_roots必须与高级master保持一致

缺点:

高级Master并不知道自己到底有多少个minion。

3. 结构图下部分实现

在这里插入图片描述

3.1. 部署salt-master

在salt02、salt03部署salt-master
yum install -y salt-master	

说明:salt100和salt01之前已经部署了salt-master

3.2. 其他配置与部署

具体实现可参见:《Saltstack_使用指南01_部署》和《Saltstack_使用指南15_多master
按照步骤走即可实现

4. Syndic实现步骤

4.1. 部署salt-syndic

在salt01、salt02、salt03部署salt-syndic
yum install -y salt-syndic	

4.2. syndic配置修改

在salt01、salt02、salt03上修改
[root@salt01 ~]# vim /etc/salt/master  
…………
# If this master will be running a salt syndic daemon, syndic_master tells
# this master where to receive commands from.
#syndic_master: masterofmasters
syndic_master: salt100   # salt100 是master of master
…………
在salt100上修改
在salt100上修改
[root@salt100 ~]# vim /etc/salt/master  
………………
# Set the order_masters setting to True if this master will command lower
# masters' syndic interfaces.
#order_masters: False
order_masters: True   # 修改处
………………
注意:

每个Syndic必须提供自己的file_roots目录。文件不会自动从Master node传输。

4.3. 启动salt-syndic并加入开机自启动

systemctl start salt-syndic.service 
systemctl enable salt-syndic.service 

4.4. master of master接受syndic

[root@salt100 ~]# salt-key -A
The following keys are going to be accepted:
Unaccepted Keys:
salt01
salt02
salt03
Proceed? [n/Y] y
Key for minion salt01 accepted.
Key for minion salt02 accepted.
Key for minion salt03 accepted.

在这里插入图片描述

4.5. syndic秘钥认证位置

[root@salt01 minion]# pwd
/etc/salt/pki/minion
[root@salt01 minion]# ll
total 16
-rw-r--r-- 1 root root  450 Dec  3 21:54 minion_master.pub
-r-------- 1 root root 1674 Nov 25 23:12 minion.pem
-rw-r--r-- 1 root root  450 Nov 25 23:12 minion.pub
-rw-r--r-- 1 root root  450 Feb 11 15:46 syndic_master.pub   # syndic 秘钥认证位置

4.6. 测试验证

[root@salt100 ~]# salt '*' test.ping
salt02:
    True
salt03:
    True
salt01:
    True
salt100:
    True

5. syndic操作示例

salt '*' pillar.items 
salt '*' pillar.item level1:level2:my_user:0 
salt '*' grains.item roles 

微信公众号

发布了129 篇原创文章 · 获赞 128 · 访问量 67万+

猜你喜欢

转载自blog.csdn.net/woshizhangliang999/article/details/90085481