Salt组件(二)

 四、配置管理States

  是SaltStack中的配置语言,在日常进行配置管理时需要编写大量的States文件。比如我们需要安装一个包,然后管理一个配置文件,最后保证某个服务正常运行。这里就需要我们编写一些states sls文件(描述状态配置的文件)去描述和实现我们的功能。

1.查看state列表

[root@master pillar]# salt 'minion' sys.list_state_modules
minion:
- acl
- alias
- alternatives
- archive
- artifactory
- blockdev
- buildout
- cloud

...省略N行

2.查看指定模块的所有function

[root@master pillar]# salt 'minion' sys.list_state_functions file
minion:
- file.absent
- file.accumulated
- file.append
- file.blockreplace
- file.comment
- file.copy
- file.directory
...省略N行

3.查看指定file.states用法

[root@master pillar]# salt 'minion' sys.state_doc file.patch

4.实例

   states流程

    编写top.sls文件(非必须)

        编写state.sls文件

   ①在states工作目录(默认是/srv/salt/)创建one.sls文件。

  

   ②执行命令,进行配置部署。

使用top.sls管理多台主机

执行查看结果

五、执行结果处理

      Return组件可以理解为SaltStack系统对执行Minion返回后的数据进行存储或者返回给其他程序,它支持多种存储方式,比如用MySQL、MongoDB、Redis、Memcache等,通过Return我们可以对SaltStack的每次操作进行记录,对以后日志审计提供了数据来源。

1.查看return列表

 

 2.流程

   Return是在Master端触发任务,然后Minion接受处理任务后直接与Return存储服务器建立连接,然后把数据Return存到存储服务器。minion操作存储服务器。

3.实例:将redis作为存储

   ①安装redis

    wget http://download.redis.io/releases/redis-3.0.6.tar.gz
    tar xf redis-3.0.6.tar.gz -C /usr/local/
    cd /usr/local/redis-3.0.6/
    yum -y install gcc gcc-c++
    make MALLOC=libc

             src/redis-server.sh

    src/redis-cli

   ②修改minion配置文件;/etc/salt/minion

  

   ③ 安装redis python client

        pip install redis

    ④ 重启minion

     ⑤ 执行命令,查看结果

       [root@master ~]# salt '*' cmd.run 'hostname' --return redis   

六、Job管理

    在SaltStack里面执行任何一个操作都会在Master上产生一个jid号。Minion端会在cache目录下的proc目录创建一个以jid为名称的文件,这个文件里面的内容就是此次操作的记录,当操作处理完成后该文件会自动删除。而Master端会记录每次操作的详细信息,这个记录都是存到在Master端cache目录下jobs下。

1.salt-run管理job

[root@master ~]# salt-run -d|grep job      #管理job的用法

2.通过SaltStack Module来管理job

   查看方法

   

   使用

   

 七、Event

    Event是SaltStack里面的对每个事件的一个记录。

1.master端查看event命令

[root@master ~]# salt-run state.event pretty=True

2.重启minion

 

3.查看master(截取部分)


 

posted @ 2016-10-24 13:08  (KeeP)  阅读(505)  评论(0编辑  收藏  举报