码迷,mamicode.com
首页 > 其他好文 > 详细

SaltStack 基础

时间:2017-12-08 18:29:28      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:加密   stat   端口   tco   external   sock   col   bin   结果   

简介     

  SaltStack是基于Python开发的一套C/S架构配置管理工具。它的底层使用ZeroMQ消息队列pub/sub方式通信,使用SSL证书签发的方式进行认证管理。号称世界上最快的消息队列ZeroMQ使得saltstack能工快速在成千上万台机器上进行操作,而且使用RSA Key方式确认身份,传输采用AES加密,安全性高。
     在传统的C/S架构中,客户端发送请求给服务器端,服务器端接收到请求并且处理完后再返回给客户端。在SaltStack架构中不仅有传统的C/S架构服务模式,而且有消息队列中的发布与订阅(pub/sub)服务模式。一般
使用C/S架构进行配置管理。
     在Master和Minion端都是以守护进程的模式运行,一直监听配置文件里面定义的re_port(接受minion请求)和publish_port(发布消息)的端口。当Minion运行时会自动连接到配置文件里Master的ret_port端口进行连接
认证。默认客户端请求id是socket.getfqdn()取到的值,也可以修改minion配置文件。
     Master 4505端口:ZeroMQ的publish_port(发布消息);
                 4506端口:接受minion消息请求。
     
     Masterless架构,如果采用Masterless架构,就不需要单独安装一台Master机器。只需要在每台机器上安装Minion,然后采用本机只负责对本机的配置管理工作机制服务模式。
 
 
saltstack 运行方式:
  1. Local (本地运行,单机)
  2. Master/Minion
  3. Salt ssh(不安装agent,通过ssh 协议来管理)
  4. 多master(配置多个master)
 
saltstack 三大功能:
  1. 远程执行
  2. 配置管理
  3. 云管理 salt-cloud

 安装:

 

Master 端命令

# rpm -ql salt-master
/etc/salt/master         # salt-master 主配置文件
/etc/salt/master.d       # salt-master 扩展配置文件目录
/etc/salt/pki/master     # master key
/usr/bin/salt            # master 核心命令
/usr/bin/salt-cp         # salt 文件传输命令
/usr/bin/salt-key        # salt 证书管理命令
/usr/bin/salt-master     # salt-master 服务命令(start,stop,restart)
/usr/bin/salt-run        # salt-master runner命令
/usr/bin/salt-unity

(1)salt 命令

  在命令可以通过salt -h 获取所有参数解释,这里主要介绍一些常用参数。

技术分享图片
Options:
    --version           #查看saltstack程序的版本号
    --versions-report   #查看SaltStack程序以及依赖包的版本号
    -h                  #查看帮助信息
    -c CONFIG_DIR ,--config-dir=CONFIG_DIR #指定配置文件目录(默认是/etc/salt/)
    -t TIMEOUT, --timeout=TIMEOUT           #指定超时时间(默认是5秒)
    --hard-crash        #捕捉到original异常不退出(默认关闭)
    -s, --static        #以组的形式返回所有Minion的数据
    --async             #异步执行
    -v, --verbose      #verbose模式
    --show-timeout      #显示minion timeout状态
    --show-jid  显示任务jid
    -b BATCH, --batch=BATCH          #按照百分比执行任务
    -a EAUTH, --auth=EAUTH,--eauth=EAUTH,--external-auth=EAUTH  #指定外部认证
    -T, --make-token                 #生成Master token
    --return=RETURNER                #指定saltstack return (mysql/redis), 将执行结果存储到mysql/redis,需要在配置文件中指定地址账号密码等
    -d, --doc                        #查看指定模块或者所有模块文档
    --args-separator=ARGS_SEPARATOR  #设置多个传参指定分隔符(同时执行多个模块)
    --summary                        #显示汇总信息
    --username=USERNAME              #指定外部认证用户名
    --password=PASSWORD              #指定外部认证密码
salt 命令参数

(2)salt-key 命令

  在master端管理minion key。

技术分享图片
Options:
    -l ARG, --list=ARG  # 显示指定状态的key(支持正则)
    -L, #显示所有public keys
    -a   # 接受指定等待的key(支持正则)
    -A      # 接受所有等待认证的key
    -r key  # 拒绝指定等待认证的key(支持正则)
    -R   # 拒绝所有
    --include-all # 显示所有状态的key(包含non-pending状态)
    -p key # 打印指定key(支持正则),显示key内容
    -P     # 打印所有key
    -d key # 删除指定key
    -D     # 删除所有key 
    -f key # 显示指定key的指纹信息(支持正则)
    -F     # 显示所有key的指纹信息
salt-key 命令参数

 

Minion 客户端命令

# rpm -ql salt-minion
/etc/salt/minion          # 主配置文件
/etc/salt/minion.d        # 扩展配置文件目录
/etc/salt/pki/minion      # key
/etc/salt/proxy         
/usr/bin/salt-call        # salt minion 端主命令,类似于master端的salt 
/usr/bin/salt-minion      # salt minion 服务命令
/usr/bin/salt-proxy

(1)salt-call

  客户端主要命令。

技术分享图片
Options:
    --version         # 查看SaltStack程序的版本号
    --versions-report # 查看SaltStack程序以及依赖包的版本号
    -h, --help        # 帮助信息
    -c CONFIG_DIR     # 指定配置文件目录(默认/etc/salt/)
    --hard-crash      # 捕捉到original异常不退出(默认关闭)
    -g                # 返回的信息生成grains
    -m MODULE_DIRS    #指定自定义模块目录
    -d                #查看指定模块所有模块文档
    --master=MASTER   # 指定saltstack MASTER
    --return=RETURNER # 指定return
    --local           # 运行masterless模式(不需要master端,只对本机负责的一种工作机制)
    --file-root=FILE_ROOT      # 指定file-root目录
    --pillar-root=PILLAR_ROOT  # 指定pillar-root目录
    --retcode-passthrough      # 显示salt-call命令返回状态
    --id=ID           # 指定一个minion ID
    --metadata        # 打印metadata信息
    --skip-grains     # 不加载grains信息
    --refresh-grains-cache     # 强制刷新grains信息
salt-call 命令参数

 

SaltStack 基础

标签:加密   stat   端口   tco   external   sock   col   bin   结果   

原文地址:http://www.cnblogs.com/wang-yc/p/8006377.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!