接上篇内容

redhat6.5

server1 172.25.29.1 salt-master  

server2 172.25.29.2 salt-minion 

server3 172.25.29.3 salt-minion 

server4 172.25.29.4 salt-master  syndic

server5 172.25.29.5 salt-minion 

一.Salt modules

1.创建_modules,my_disk.py模块

2.同步模块

server5的缓存已经有了my_disk

3.使用disk模块查询server5

二.salt采集数据的返回值保存到数据库里

采集数据的返回值事件在jobs下面,以文件显示

外部缓存

1.安装mysql-python模块

在minion server5上远程安装mysql-python模块

2.在master server1上安装mysql-server,初始化设置密码

3.创建salt数据,并导入mysql

导入出现的错误需要注释数据内容

4.在server5上安装mysql,创建salt用户

5.修改配置/etc/salt/master文件,数据库地址为master server1

添加数据库配置

6.测试采集的数据是否保存到master的数据库上

远程登陆master server1的数据库

数据已经保存

三.salt采集数据的返回值保存到数据库里

主缓存

1.在sevrer1上安装mysql-python模块

2.注释之间server5上配置的外部缓存mysql设置,以免影响主缓存设置

3.修改server1上的master设置

设置为主缓存

4.采集数据

采集server5的所有项目

登陆数据库数据已经生成

四.salt syndic

salt的基本设置是一个salt master指挥一组salt minion。syndic允许建立salt命令拓扑结构,它运行在一个master上,并且连接到另一个master。syndic所连接的master可以控制syndic和syndic下的minions

注意事项:各个 syndic 必须提供自己的file_roots目录,文件不会在 master-master 之间自动分发

                syndic下边的minion执行的命令会执行syndic top里边的命令。

                Syndic 必须运行在master上,并且连接到另一个master(比他更高级)

1.salt syndic配置

需要将server4变为master

在server1上安装salt-syndic

2.配置server4上的master文件

开启base目录

开启pillar目录

3.设置server1上的syndic master

4.在server4上添加server1的salt-key

5.测试配置成功

五.salt ssh远程连接

      salt需要安装和启动minion,这样master才能控制minion。 对于远程执行命令,最常见的方法是用ssh,因为直接启动远程的sshd服务即可。salt ssh可以集成两者的优点,同时免安装minion又同时可以使用saltstack的功能特点。

1.安装salt-ssh

3.编辑roster文件

4.测试salt ssh成功

六.salt api 安装

1.安装python-cherrypy模块和salt-api

2.生成生成自签名证书

报错,需要用openssl生成rsa私钥文件

生成自签名证书

3.配置salt-api   ,配置eauth

vim    /etc/salt/master.d/api.conf

   

vim    /etc/salt/master.d/eauth.conf

4.创建saltapi用户,设置密码

5.启动服务

6.测试使用api

测试工具为操作系统自带的      curl

获取 token 后边的串为认证成功后获取的token串,之后可以不用再次输入密码,直接使用本Token即可

远程执行命令

7.利用网上的写好的py脚本测试api,需要自己写界面

列出key值

远程server5安装httpd

远程server5安装nginx