一、SaltStack 原理:

1、SaltStack 也是基于CS模式的主控master和client被控端 minion 结构;也是一个异构平台基础设置管理工具;遵守Apache2协议,完全开源。

2、通过ZeroMQ消息队列通信、用Python写成的批量管理工具,远程执行命令。

3、Minion上线后先与Master端联系,把自己的pub key发过去,这时master端通过salt-key -L命令就会看到minion的key,接受该minion-key后,也就是master与minion已经互信。

4、允许一个管理者Master对多个系统minion的统一管理操作。

二、SaltStack 监听端口:

SaltStack master 启动后默认监听4505和4506两个端口。

1、4505(publish_port)为 saltstack 的消息发布系统,对应的是ZMQ的PUB system;

2、4506(ret_port)为 saltstack 被控端与服务端通信的端口。

三、SaltStack 认证原理:

1、minion在第一次启动时,会在/etc/salt/pki/minion/(可以在/etc/salt/minion里面设置)下自动生成minion.pem(private key 私钥)和 minion.pub(public key 公钥),然后将 minion.pub发送给master。

2、master在接收到minion的public key后,通过salt-key命令accept minion public key,这样在master的/etc/salt/pki/master/minions下的将会存放以minion id命名的 public key,然后master就能对minion发送指令了。

当/etc/salt/master没有配置auto_accept: True时,需要通过salt-key命令来进行证书认证操作
salt-key -L 显示已认证或未认证的被控端id
salt-key -D 删除所有认证主机id证书
salt-key -d id 删除单个id证书
salt-key -A 接受所有id证书
salt-key -a id 接受单个id证书
salt-key -j id 拒绝单个id证书
salt-key –J 拒绝所有id证书

四、工作机制

SaltStack 通信模式是使用的ZeroMQ;

Master下发任务匹配到的Minion上去,Minion执行模块函数,并返回执行结果。

salt的核心功能:
使用命令 发送到远程系统上是并行,而不是串行
使用安全加密协议
使用最少最快的网络载荷
提供简单的编辑接口

SaltStack 理解的更多相关文章

  1. SaltStack入门篇(四)之深入理解SaltStack远程执行

    1.目标 2.执行模块 3.返回 salt ‘*’ cmd.run ‘uptime’ 命令 目标 执行模块 执行模块参数 1.SlatStack远程执行–目标 执行目标:https://docs.sa ...

  2. Saltstack

    一.Satlstack的概述 Saltstack是什么? Salt是一种和以往不同的基础设施管理方法,它是建立在大规模系统高速通讯能力可以大幅提升的想法上.这种方法使得Salt成为一个强大的能够解决基 ...

  3. Saltstack 介绍、安装、配置(一)

    Slatstack 介绍 官网:https://saltstack.com/ 官方源:http://repo.saltstack.com/  (介绍各操作系统安装方法) http://repo.sal ...

  4. 部署搭建 Saltstack(centos6.6)

    SaltStack介绍 官网:https://docs.saltstack.com/en/latest/ 中国saltstack用户组http://www.saltstack.cn/ 下图是它的子系统 ...

  5. 1.saltstack基础笔记

    环境: master: 节点node1:阿里云:121.42.195.15 centos6.6 minion: 节点node2:腾讯云:182.254.157.19 centos6.6 一.salts ...

  6. saltstack实战4--综合练习3

    Saltstack配置管理-业务引用haproxy 在业务模块里写它的配置 各个业务是不同的,这里有差异性,所以没写在配置模块里. 对minion02也执行安装haproxy [root@master ...

  7. saltstack实战4--综合练习4

    Saltstack配置管理-给minion增加Zabbix-agent zabbix-agent的包 [root@A ~]# rpm -qa |grep zabbix zabbix-2.4.8-1.e ...

  8. saltstack实战4--综合练习2

    Saltstack配置管理-功能模块-安装haproxy 配置管理,我们分了3层 最底层是系统初始化部分 倒数二层是功能模块,就是具体的产品的安装了 假如你的环境需要nginx,php,memcach ...

  9. saltstack实战2--远程执行之返回(returner)

    saltstack有3大功能:远程执行,配置管理,云管理 其中远程执行又可分解为:目标,模块,返回  这3个部分. 比如下面语句 [root@master ~]# salt '*' test.ping ...

随机推荐

  1. (三)flask中的请求钩子函数

    请求勾子 在客户端和服务器交互的过程中,有些准备工作或扫尾工作需要处理,比如: 在请求开始时,建立数据库连接: 在请求开始时,根据需求进行权限校验: 在请求结束时,指定数据的交互格式: 为了让每个视图 ...

  2. POJ--1328 Radar Installation(贪心 排序)

    题目:Radar Installation 对于x轴上方的每个建筑 可以计算出x轴上一段区间可以包含这个点 所以就转化成 有多少个区间可以涵盖这所有的点 排序之后贪心一下就ok 用cin 好像一直t看 ...

  3. BZOJ2288 生日礼物

    本题是数据备份的进阶版. 首先去掉所有0,把连续的正数/负数连起来. 计算所有正数段的个数与总和. 然后考虑数据备份,有一点区别: 如果我们在数列中选出一个负数,相当于把它左右连起来. 选出一个正数, ...

  4. matlab无法打开.m文件查看

    maybe其它程序正在运行 Ctrl+C end the running code

  5. Linux上svn搭建

    安装svn yum -y install subversion 2.创建版本库 svnadmin  create /home/svn/test 3.配置用户 vim /home/svn/test/co ...

  6. mac 修改root密码

    1.用当前用户登录进去bash: 输入命令: sudo passwd root

  7. Map的嵌套

    package cn.lijun.demo2; import java.util.HashMap; import java.util.Iterator; import java.util.Set; p ...

  8. 离线提取目标机hash

    ##看了大佬的文章学习到一个姿势在此将其记录一下复现过程 github项目地址:https://github.com/SecureAuthCorp/impacket.git python setup ...

  9. vue初始化页面dom操纵 $nextTick

    new Vue({ el: '#app', data:{ }, mounted: function () {/*生命周期函数*/ this.$nextTick(function () { $(&quo ...

  10. Linux中rpm的使用

    1.安装 rpm -i 需要安装的包文件名 举例如下: rpm -i example.rpm 安装 example.rpm 包: rpm -iv example.rpm 安装 example.rpm ...