1. 主机规划

salt 版本

 [root@salt100 ~]# salt --version
salt 2018.3. (Oxygen)
[root@salt100 ~]# salt-minion --version
salt-minion 2018.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-syndicsalt-master组成。其中salt-master用于控制更低级的minion节点,salt-syndic用于连接更高级的master节点(有时也称为mastermaster)。

重点:

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上修改

 [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
-rw-r--r-- root root Dec : minion_master.pub
-r-------- root root Nov : minion.pem
-rw-r--r-- root root Nov : minion.pub
-rw-r--r-- root root Feb : 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:
salt '*' grains.item roles

———————————————END———————————————

Saltstack_使用指南16_syndic的更多相关文章

  1. Saltstack_实战指南02_各主机Pillar信息指定

    1. 实战项目GitHub地址 该项目已经放在了GitHub上,地址如下: https://github.com/zhanglianghhh/salt-example-lnmp 2. 主机规划 3. ...

  2. Saltstack_实战指南01_系统规划

    1. 实战项目GitHub地址 之前<Saltstack_使用指南>详细讲解了saltstack的使用.那么从这节开始实战讲解,当然不会再像之前那样详细说明了.只是讲一些系统规划之类的信息 ...

  3. Saltstack_使用指南17_salt-ssh

    1. 主机规划 salt 版本 [root@salt100 ~]# salt --version salt (Oxygen) [root@salt100 ~]# salt-minion --versi ...

  4. Saltstack_使用指南12_配置管理-jinja模板

    1. 说明 下文的案例是根据上一篇文章进行的修改.因此请优先读取上一章博文内容<Saltstack_使用指南11_配置管理-状态之间依赖关系> 2. 主机规划 salt 版本 [root@ ...

  5. Saltstack_使用指南07_远程执行-执行模块

    1. 主机规划 远程执行教程文档 https://docs.saltstack.com/en/latest/topics/tutorials/modules.html 所有模块文档 https://d ...

  6. Saltstack_使用指南06_远程执行-指定目标

    1. 主机规划 Targeting Minions文档 https://docs.saltstack.com/en/latest/contents.html 另请参见:自动化运维神器之saltstac ...

  7. Saltstack_使用指南05_数据系统-Pillar

    1. 主机规划 Pillar文档 https://docs.saltstack.com/en/latest/topics/pillar/index.html 注意事项 修改了master或者minio ...

  8. Saltstack_使用指南04_数据系统-Grains

    1. 主机规划 Grains文档 https://docs.saltstack.com/en/latest/topics/grains/index.html 注意事项 修改了master或者minio ...

  9. Saltstack_使用指南03_配置管理

    1. 主机规划 注意事项 修改了master或者minion的配置文件,那么必须重启对应的服务. 2. 了解YAML 具体地址 https://docs.saltstack.com/en/latest ...

随机推荐

  1. Mac 安装nginx之后重启、停止、开启等操作

    操作系统:macOs High Sierra 10.13.6 1.我用的homebrew安装的nignx1.15.9,安装完成之后会有下面的提示: 网站根目录在:/usr/local/var/www ...

  2. Linux - CentOS 7 通过Yum源安装 MySql 5.7

    添加MySQL Yum存储库 从官网下载最新的mysql源 官网地址:https://dev.mysql.com/downloads/repo/yum/ 选择并下载适用于平台的发行包. 然后,在Lin ...

  3. JS中遍历对象属性的四种方法

    Object.keys().Object.values().Object.entries().for...in.Map (1)Object.keys(): let ex1 = {c1: 'white' ...

  4. 使用ReentrantLock

    /** * java.util.concurrent.locks包提供的ReentrantLock用于替代synchronized加锁* 因为synchronized是Java语言层面提供的语法,所以 ...

  5. shiro实战(1)--web

    目录结构:  数据库结构: 一·web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app ...

  6. 利用Fiddler对Jmeter的请求进行抓包

    前言 有时候,为了得到更详细的请求结果,我们可能需要使用Fiddler结合Jmeter来抓包分析,从而更好的辅助测试. 遇到的问题 这里以一个获取学生信息的接口为例进行说明. 当我在Jmeter里按接 ...

  7. WebShell代码分析溯源(六)

    WebShell代码分析溯源 一.一句话变形马样本 <?php call_user_func('assert', $_REQUEST['assert']); ?> 二.代码分析 1.分析代 ...

  8. sqlserver 标准系统数据库

    SQL server系统数据库很重要,大部分时候都不应该修改他们.唯一例外的是model数据库和tempdb数据库.model数据库允许部署更改到任何新创建的数据库(如存储过程),而更改tempdb数 ...

  9. 一分钟理解Java公平锁与非公平锁

    本人免费整理了Java高级资料,涵盖了Java.Redis.MongoDB.MySQL.Zookeeper.Spring Cloud.Dubbo高并发分布式等教程,一共30G,需要自己领取.传送门:h ...

  10. react官方脚手架添加less配置

    装两个包 npm install --save less less-loader 在node-modules/react-scripts/config/webpack.config.js中 在大概58 ...