阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Saltstack-安装和简单部署

163次阅读
没有评论

共计 2312 个字符,预计需要花费 6 分钟才能阅读完成。

SaltSack 是什么?

Saltstack 是一个服务器基础架构集中化管理平台,具备配置管理、远程执行、监控等功能,一般可以理解成简化版的基于 puppet 和加强版的 func。SaltStack 基于 Python 语言实现,结合轻量级消息队列(ZeroMQ)与 python 第三方模块(Pyzmq、PyCrypto、pyjinja2、python-msgpack 和 PyYAML 等)构建。

Saltstack 具有以下特点:
部署简单、方便
支持大部分 UNIX/Linux 及 Windows 环境
主从集中化管理
配置简单、功能强大、扩展性强
主控端(Master)和被控制端(minion)基于证书认证,安全可靠
支持 API 及自定义模块,可通过 Python 轻松扩展

Saltstack 安装:

主控端 IP:192.168.1.10

被控端 IP:192.168.1.20

主控端安装:

yum -y install salt-master

开启服务和开机启动:

service salt-master start

chkconfig salt-master on

被控端:

yum -y install salt-minion

开启服务和开机启动:

service salt-minion start

chkconfig salt-minion on

监听端口, 默认 master 开启 4505,4506 端口

4505(publish_port):salt 的消息发布系统

4506(ret_port):salt 客户端与服务端通信的端口

要保证这 2 个端口能通信正常,如果开启 iptables 需要再主控端添加以下 2 条规则

iptables -A INPUT -m state –state new -m tcp-p tcp–dport4505 -j ACCEPT

iptables -A INPUT -m state –state new -m tcp-p tcp–dport4506 -j ACCEPT

master 主控端配置【/etc/salt/master】:

interface: 192.168.1.20 #绑定 Mster 通信 IP(注意冒号后面必须加一空格)

auto_accept: Ture  #自动认证,避免手动运行 salt-key 来确认证书信任(注意冒号后面必须加一空格)

file_roots:    #指定 Saltstack 文件根目录位置

base:

– /srv/salt

重启生效:

service salt-master restart

minion 被控端配置【/etc/salt/minion】:

master: 192.168.1.10    #指定 master 主机 IP 地址(注意冒号后面必须加一空格)

id: 781915e2    #修改被控端主机识别 id,建议使用操作系统主机名配置(注意冒号后面必须加一空格)

重启生效:

service salt-minion restart

认证有手动和自动 2 种:

1. 手动认证

格式:salt-key 参数 [minion 端 ID(可以是 IP,也可以是主机名) [-y]

-L 列出当前所有认证,包括 Accepted Keys、Denied Keys、Unaccepted Keys、Rejected Keys

-a 添加某个或某些个未接受 (Unaccepted Keys) 认证

-A 添加所有未接受 (Unaccepted Keys) 认证

-d 删除某个或某些个已接受 (Accepted Keys) 认证

-D 删除所有已接受 (Accepted Keys) 认证

-y 使用该参数可免去证书操作的交互,除非对 minion 端很信任,一般不建议使用

-h 帮助

master 端操作:

salt-key -a 781915e2

The following keys are going to be accepted:

Unaccepted Keys:

781915e2

Proceed? [n/Y] y

Key for minion 781915e2 accepted.

salt-key -L

Accepted Keys:  #(接受认证的 key)

781915e2

Denied Keys:

Unaccepted Keys:    #(没有接受认证的 key)

Rejected Keys:

2. 自动认证

在 master 端,/etc/salt/master 取消注释:

auto_accept: True  #设置为自动接受

认证过程:

Master 与 Minion 认证

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 发送指令了。

Master 与 Minion 的连接

Saltstack master 启动后默认监听 4505 和 4506 两个端口。4505(publish_port)为 salt 的

消息发布系统,4506(ret_port)为 salt 客户端与服务端通信的端口。如果使用 lsof 查看

4505 端口,会发现所有的 Minion 在 4505 端口持续保持在 ESTABLISHED

检查是否运行正常(如下说明正常):

salt ‘789880e2’ test.ping

781915e2

True

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-06/145221.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-21发表,共计2312字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中