Saltstack:Multi-Master搭建

本文档介绍了从Saltstack 0.16.0版本开始的多主节点(multi-master)特性,允许所有活跃的master向minions发送命令。主要内容包括Master Keys的配置、Minions的设置以及文件在不同Master之间的共享。配置步骤涉及复制Master私钥、修改Minion配置文件、重启Minions等。此外,还讨论了Master之间的文件同步,如minion keys、file_roots和pillar_roots的同步策略。
摘要由CSDN通过智能技术生成

Multi MasterTutorial

从salt 0.16.0版本开始,管理minions可以使用multi-master特性。当使用multi-master时,所有masters均可以正常运行,任何一个active-master都可以向minions发送命令。

 

在0.16.0版本,masters之间并不会共享信息,public keys需要在每台master上accept,文件共享需要手动完成,或者使用类似git工具确保file_roots目录文件一致。

 

建立Multi-Master的大概步骤:

1.安装新的master server

2. copy masterkeys到新的master对应目录

3.启动新的master进程

4.配置minions配置文件

5.Restart minions

6.在新的masteraccept keys

Master Keys

配置Multi-Master主要的问题是,每一个master使用相同的private key。Private key在master第一次启动时自动生成的(注意:配置Multi-Master时,一定要在启动新master前将老master的private key copy到对应目录)。

 

Master的private key在pki_dir目录下,默认的位置是:/etc/salt/pki/master/master.pem,将该key copy到新的master对应的目录下,谨记,一定是在启动新master之前copy。

 

Configure Minions

修改minion config文件,这样每一个minion将会认证到所有master上。Config文件默认在:/etc/salt/minion

i.e 修改minionconfig file

master:

 - saltmaster1.example.com

 - saltmaster2.example.com

最后,restart minion

此时,所有master都alive,并且可以控制minon

 

i.e 配置过程

1.安装master

Rpm装,就不说了(注意:先不要启动salt-master)

2.copyprivate keys(可以使用nc copy文件)

3.启动新的salt-master

/etc/init.d/salt-masterstart

4.配置minion端config files

4.重启salt-minion

/etc/init.d/salt-minionrestart

 

 

有一个问题:master之间无法容灾!!!

如果主salt-master当机,salt-call将会失败,无法完成同步,但是其他冗余salt-master还是可以向下highstate

 

==测试==

1.      stop old salt-master

2.      在minion上salt-call

3.      在new salt-master上highstate

看以看出在new salt-master上highstate是没有问题的

 

 

Sharing Files BetweenMasters

Salt并不会在每个master之间同步文件共享,下面介绍一下一些key files在master之间的同步和保持一致。

 

Minion Keys

Minionkeys会被每一个master接受。可以通过salt-key工具手动完成,或者同步一些关键目录。必要的同比目录是:

/etc/salt/pki/master/minions

/etc/salt/pki/master/minions_pre

/etc/salt/pki/master/minions_rejected

 

 

file_roots

file_roots 目录也应该被在master之间同步。这是用于管理配置的salt state file目录。推荐的同步方法是使用gitfs,或者将file_roots目录放在共享存储上。

pillar_roots

同file_roots一样也需要被同步。

Master Configuration

确保master相关的配置也是相互同步的。

external_auth

client_acl

peer

peer_run

Conclusion

总体上配置Multi-master还是比较简单的,可以提供多master来管理minions,确保keys和state files在master之间保持同步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值