CentOS 7 SaltStack安装部署

SaltStack简介及特性

SaltStack 是一种基于 C/S 架构的服务器基础架构集中化管理平台,管理端称为 Master,客户端称为 Minion。SaltStack 具备配置管理、远程执行、监控等功能,一般可以理解为是简化版的 Puppet 和加强版的 Func。

SaltStack 本身是基于 Python 语言开发实现,结合了轻量级的消息队列软件 ZeroMQ 与 Python 第三方模块(Pyzmq、PyCrypto、Pyjinjia2、python-msgpack 和 PyYAML 等)构建。

通过部署 SaltStack 环境,运维人员可以在成千上万台服务器上做到批量执行命令,根据不同的业务特性进行配置集中化管理、分发文件、采集系统数据及软件包的安装与管理等。

SaltStack工作原理

在这里插入图片描述
SaltStack 采用 C/S 结构来对云环境内的服务器操作管理及配置管理。为了更好的理解它的工作方式及管理模型,本章将通过图形方式对其原理进行阐述。

SaltStack 客户端(Minion)在启动时,会自动生成一套密钥,包含私钥和公钥。之后将公钥发送给服务器端,服务器端验证并接受公钥,以此来建立可靠且加密的通信连接。同时通过消息队列 ZeroMQ 在客户端与服务端之间建立消息发布连接。
命令执行
在这里插入图片描述

原理图说明:

Minion 是 SaltStack 需要管理的客户端安装组件,会主动去连接 Master 端,并从 Master 端得到资源状态信息,同步资源管理信息。
Master 作为控制中心运行在主机服务器上,负责 Salt 命令运行和资源状态的管理。
Master 上执行某条指令通过队列下发到各个 Minions 去执行,并返回结果。

SaltStack部署

部署规划

hostIProle
node-01192.168.57.130master
node-02192.168.57.132minion
node-03192.168.57.133minion

环境准备

实验的三台机器分别对hosts文件进行修改。这里我只写了node-01。

[root@node-01 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.57.130 node-01
192.168.57.132 node-02
192.168.57.133 node-03
[root@node-01 ~]# 

添加SaltStack源

分别对三台机器添加源。

 sudo rpm --import https://repo.saltproject.io/py3/redhat/7/x86_64/latest/SALTSTACK-GPG-KEY.pub
 curl -fsSL https://repo.saltproject.io/py3/redhat/7/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo

安装SaltStack

node-01执行

yum -y install salt-master salt-minion

node-02、node-03执行

yum -y install salt-minion

配置SaltStack

node-01修改vi /etc/salt/master第16行

interface: 192.168.57.130

node-02、node-03修改第16行,指定master地址为node-01

master: 192.168.57.130

重启SaltStack

node-01 执行命令

systemctl restart salt-master
systemctl enable salt-master

node-02、node-03执行命令

systemctl restart salt-minion
systemctl enable salt-minion

列出master上的密钥及认证

[root@node-01 ~]# salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
master
node-02
node-03
Rejected Keys:
[root@node-01 ~]# salt-key -a node-02
The following keys are going to be accepted:
Unaccepted Keys:
node-02
Proceed? [n/Y] y
Key for minion node-02 accepted.
[root@node-01 ~]# salt-key -a node-03
The following keys are going to be accepted:
Unaccepted Keys:
node-03
Proceed? [n/Y] y
Key for minion node-03 accepted.

验证

检查存活主机

[root@node-01 ~]# salt '*' test.ping
node-03:
    True
node-02:
    True
[root@node-01 ~]# 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Energet!c

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值