官方手册地址:http://docs.saltstack.com/topics/tutorials/multimaster.html

总结起来,有以下几步:

  1. Create a redundant master server(创建另一个salt master)
  2. Copy primary master key to redundant master(将主master的key复制到辅助master)
  3. Start redundant master(启动辅助master)
  4. Configure minions to connect to redundant master(配置minions使其链接到辅助master)
  5. Restart minions(重启minions)
  6. Accept keys on redundant master(在辅助master上接受minion的keys认证要求)

但是按照手册配置后,无法执行命令,看log报如下错误:

[ERROR ] The master key has changed, the salt master could have been subverted, verify salt master's public key
[CRITICAL] The Salt Master server's public key did not authenticate!
The master may need to be updated if it is a version of Salt lower than 0.16.4, or
If you are confident that you are connecting to a valid Salt Master, then remove the master public key and restart the Salt Minion.
The master public key can be found at:
/etc/salt/pki/minion/minion_master.pub

解决方法:

要将/etc/salt/pki/master/下的master.pem和master.pub一起拷贝到辅助服务器的相同目录下。

扩展:

1.salt key的认证过程

2.使用非root用户启动辅助salt master应该如何配置

关于扩展1的一点补充

刚刚安装好,启动salt-master,salt-minion会在/etc/salt/pki/master/ & /etc/salt/pki/minion/目录下分别生成master.pem,master.pub & minion.pem, minion.pub key文件

root@aka-ostro:/etc/salt# tree
.
├── master
├── master.d
├── minion
├── minion.d
├── minion_id
└── pki
        ├── master
        │   ├── master.pem
        │   ├── master.pub
        │   ├── minions
        │   ├── minions_pre
        │   │   └── aka-ostro.example.com
        │   └── minions_rejected
        └── minion
             ├── minion.pem
             └── minion.pub

8 directories, 9 files

使用salt-key -L查看没有发送key认证的minion ,使用salt-key -A 认证所有的key

认证后实际就是将master.pub 送到minion,并且重命名为:minion_master.pub

将minion.pub文件送到master的minions目录下,重命名为该minion的主机名

root@aka-ostro:/etc/salt# tree
.
├── master
├── master.d
├── minion
├── minion.d
├── minion.dpkg-old
├── minion_id
└── pki
       ├── master
  │   ├── master.pem
  │   ├── master.pub
  │   ├── minions
  │   │   └── aka-ostro.example.com
  │   ├── minions_pre
  │   └── minions_rejected
  └── minion
  ├── minion_master.pub
  ├── minion.pem
  └── minion.pub

其中aka-ostro.example.com 和 minion.pub的文件内容完全一致, master.pub和minion.pub的文件内容完全一致,即验证!

saltstack:multi-master configuration的更多相关文章

  1. SaltStack之Master配置文件详解

    salt-master的配置文件位于/etc/salt/master,可用选项如下: #######################主配置 interface默认值:0.0.0.0(所有的网络地址接口 ...

  2. 17.1.1.1 Setting the Replication Master Configuration 设置复制的master 配置:

    17.1.1.1 Setting the Replication Master Configuration 设置复制的master 配置: 在一个复制master,你必须启用binary loggin ...

  3. saltstack(master迁移)

    环境:http://www.cnblogs.com/zzzhfo/p/6126223.html 在添加一台master 把master的/etc/salt目录下的pki打包 上传至第二台master的 ...

  4. saltstack(二) master、minion常用配置选项

    master常用配置选项: interface: 指定bind的地址(默认0.) publish_port:指定发布端口(默认4505) ret_port: 指定结果返回端口,与minion配置文件的 ...

  5. Does not contain a valid host:port authority: Master:8031 (configuration property 'yarn.resourcemanager.resource-tracker.address')

    问题解决: 这个错误是:yarn里面的配置的格式有错误:如: <property> <name>yarn.resourcemanager.address</name> ...

  6. slatstack Master的配置

    Salt系统非常简单并且易于配置,Salt系统的两个组件都有各自的配置文件.如"salt-master"是通过主配置文件来配置的,"salt-minion"是通 ...

  7. saltstack手册(含官方pdf)

    官方手册 https://docs.saltstack.com/en/pdf/Salt-2019.2.1.pdf 快速入门 SALTSTACK是什么? Salt是一种和以往不同的基础设施管理方法,它是 ...

  8. Saltstack

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

  9. saltstack实战3--配置管理之pillar

    数据系统-Pillar pillar和grains类似,但是它能给minion指定它想要的数据,安全性较好,另外它是在master端设置的   应用场景: grains的特性–每次启动汇报.静态决定了 ...

  10. MySQL Master High Available 源码篇

    https://m.aliyun.com/yunqi/users/1287368569594542/articles https://yq.aliyun.com/articles/59233 MySQ ...

随机推荐

  1. 关于javascript的一个小问题,请问有人看出啥问题吗?

    最近学习javascript,有一个问题挺奇怪的,先贴出代码: function binarySearch(){ var arr = [0,1,2,3]; var res = actbinarySea ...

  2. 一种跨平台的C++遍历目录的方法

    参考了网络上各路大神的实现方法.主要使用了io.h库 #include <iostream> #include <cstring> #include <io.h> ...

  3. Vue-cli 工具 / 通过 Vue-cli 工具重构 todoList

    本博文归纳在 Vue 学习过程中, Vue-cli 工具的使用说明.除此之外还通过 Vue-cli 工具将之前 Vuejs 基本语法当中实现的 todoList 进行重构. 安装 npm instal ...

  4. PAT-甲级解题目录

    PAT甲级题目:点这里 pat解题列表 题号 标题 题目类型  10001 1001 A+B Format (20 分)  字符串处理  1003 1003 Emergency (25 分) 最短路径 ...

  5. 【未完】训练赛20190304:KMP+树状数组+线段树+优先队列

    头炸了啊,只做出L题,前两天刚看的Shawn zhou的博客学习的,幸亏看了啊,否则就爆零了,发现题目都是经典题,线段树,KMP,我都没看过,最近又在复习考研,真后悔大一大二没好好学习啊,得抽时间好好 ...

  6. mouseover 和 mouseout 事件是可以冒泡的 取消

    mouseover 和 mouseout 事件是可以冒泡的,子元素上触发的事件会冒泡到父元素上.可以改用 mouseleave 和 mouseenter 事件,这两个事件不冒泡.

  7. Repair the Wall (贪心)

    Long time ago , Kitty lived in a small village. The air was fresh and the scenery was very beautiful ...

  8. [基于NetCore的简单博客系统]-登录

    0-项目背景 一个基于.NET CORE RAZOR PAGES的简单博客系统 技术栈全部采用微软官方实现方式,目的是熟悉新技术 项目地址:https://github.com/ganqiyin/BL ...

  9. TCP/IP 三次握手四次挥手

    TCP运输连接 TCP连接建立过程中要解决以下三个问题: (1)要使每一方能够确知双方的存在. (2)要允许双方协商一些参数(如最大窗口值.是否使用窗口扩大选项和时间戳选项以及服务质量等). (3)能 ...

  10. error LNK2019: 无法解析的外部符号 该符号在函数 中被引用 解决方案

    需要添加lib或者dll库.项目-属性-配置属性-链接器-输入-附件依赖项,添加需要的lib. 例如我在运行OSG程序的时候,忘记添加了附件依赖项就会报这个错. 解决方案如图.