Saltstack 安装和配置

1.设置epel 源
rpm -Uvh http://mirror.pnl.gov/epel/6/x86_64/epel-release-6-8.noarch.rpm

安装前须要安装这些包
Python 不用说你们都知道 这玩意就python写的    
ZeroMQ 消息中间件至关于puppet的rabbitMQ、activeMQ    
PyCrypto  Python密码工具包    
M2Crypto    加密模块 是Python OpenSSL封装    
msgpack-python 高性能的消息交换格式    
YAML    不说你们都知道 文件格式    
Jinja2    解析Salt States (在master配置文件中配置)    
MarkupSafe    Implements a XML/HTML/XHTML Markup safe string for Python    



2.安装master 17.0.5版本,首先要安装好本地源码 
#yum install python-jinja2
#yum install salt-master


3.安装minion 17.0.5版本
#yum install python-jinja2 
#yum install salt-minion




4.启动master
#/etc/rc.d/init.d/salt-master start

minion
/etc/rc.d/init.d/salt-minion start








配置
salt-master
# vi /etc/salt/master
interface: master IP


sal-minion
#vi /etc/salt/minion
master: master IP'



认证
salt-key  -L            #查询全部接收到的证书
salt-key  -a <证书名>   #接收单个证书
salt-key  -A            #接受全部证书
salt-key  -d <证书名>   #删除单个证书
salt-key  -D            #删除全部证书
#salt-key -L
#salt-key -a minion IP
#

测试
salt "*" test.ping
10.0.251.210:
    True
    
    
    
    

分组:

#vi /etc/salt/master

nodegroups:
  test1: 'L@10.0.251.210'
  
  
  
# salt -N 'test1' test.ping



#vi /etc/salt/master

file_roots:
  base:
    - /srv/ops/salt
    
    
pillar_roots:
  base:
    - /srv/ops/pillar

  lab:
    - /srv/ranger/pillar/lab
  prod:
    - /srv/ranger/pillar/prod
  dev:
    - /srv/ranger/pillar/dev
    
    


Grains系统
6.1  grains系统概念
grains是minion第一次启动的时候采集的静态数据,能够用在salt的模块和其余组件中。其实grains在每次的minion启动(重启)的时候都会采集,即向master汇报一次。
grains的特性–每次启动汇报、静态决定了它没有pillar灵活,要知道pillar是随时可变的,只要在master端修改了那通常都会马上生效的。因此grains更适合作一些静态的属性值的采集,例如设备的角色(role),磁盘个数(disk_num)等诸如此类很是固定的属性。
    
    
 State系统
 state系统概念
Salt State系统的核心是由sls结尾的state文件组成的,配置简单并且灵活,SLS文件本质上只是一些dictionaries,lists,strings和numbers。这种设计让SLS文件很是灵活,能够知足开发者的各类需求,并且可读性很高。写得越多,就越清楚到底写得是什么。
7.2  state系统配置
首先需在master配置文件中打开state系统,定义state目录路径
# cat /etc/salt/master
==================================================================================
...略...
file_roots:                                                                 state系统
  base:                                                                      base表明基础环境
- /srv/salt                                                                  state系统根目录路径
...略...
==================================================================================
Salt默认使用能找到的最简单的序列化数据格式——YAML,来表达SLS数据。典型的SLS文件以下:
# cat /srv/ops/salt/apache.sls
==================================================================================
httpd:                          数据的ID,被称做ID声明
   pkg:                         pkg使用系统本地的软件包管理器管理将要安装的软件,如yum
     - installed
==================================================================================
7.3  执行state配置

执行state配置
# salt ‘client’ state.sls apache
注解:
  state.sls                表示执行state配置
  apache                 执行apache.sls的state配置,注意这里不须要sls后缀,可看作是/srv/salt/apache.sls
相关文章
相关标签/搜索