saltstack入门

一、SlatStack是什么    

    SaltStack是基于python开发的一套C/S架构配置管理工具,它的底层使用ZeroMQ消息队列 pub/sub 方式通信,使用 SSL 证书签发的方式进行认证管理。

二、SaltStack服务架构

   SaltStack是一种基于C/S架构的服务模式,可以简单地理解为如果我们想使用SaltStack就需要在现有地环境下引入与维护一套C/S架构。在SaltStack架构中服务器端叫作Master,客户端叫作Minion,在我们理解的传统C/S架构中,客户端发送请求给服务端,服务端接收到请求并且处理完成后再返回给客户端。在SaltStack架构中不仅有传统的C/S架构服务模式,而且有消息队列中的发布与订阅(pub/sub)服务模式。使得SaltStack应用场景更加丰富。目前在实际环境中一般使用SlatStack的C/S架构进行配置管理。

    在Master 和 Minion 端都是以守护进程的模式运行,一致监听配置文件里定义的ret_port(接受minion请求)和publish_port(发布消息)的端口。当Minion运行时会自动连接到配置文件里面定义的Master地址ret_port端口进行连接认证。默认客户端请求id是socket.getfqdn()取到的值,也可以在Minion启动之前修改Minion的id值。关于整个启动通信过程,可以使用如下命令:"salt-master -l debug"

    SaltStack除了传统的C/S架构外,还有Masterless架构,如果采用Masterless架构,我们就不需要单独安装一台SlatStack Master机器,只需要在每台机器上安装Minion,然后采用本机只负责对本机的配置管理工作机制服务模式。

三、SlatStack软件依赖

    SlatStack对Python版本和Python 模块有一定的要求。

    Python版本大于2.6或版本小于3.0

    msgpack-python:SaltStack消息交换库

    YAML:SaltStack配置解析定义语法

    Jinja2:SaltStack states配置模版

    MarkupSafe:Python unicode转换库

    apache-libcloud:SaltStack 对云架构编排库

    Requests:HTTP Python库

    ZeroMQ:SaltStack消息系统

    pyzmq:ZeroMQ Python库

    PyCrypto:Python 密码库

    M2Crypto:openssl Python 包装库


你可能感兴趣的:(saltstack入门)