saltstack自动运维工具--与mysql的结合,salt-ssh连接操作,salt-syndic模块,salt-api调用

将推送操作返回给数据库

在master端执行完一个job后,结果通过每个minion端返回给master端,这些结果被保存在默认的Job缓存中,除了存放在缓存中,salt还提供了两个额外的机制将结果可以保存在数据库,或本地的日志中

1、External Job Cache

缺点:1.每个minion节点不仅要将数据串送给master端,还要将数据存储在数据库中,压力过大

           2.要求每个minion节点到必须进行returner的配置

master端:

[root@server1 jobs]# yum install -y mysql-server
[root@server1 jobs]# /etc/init.d/mysqld start
[root@server1 jobs]# mysql < test.sql   导入从官网下载的数据库
ERROR 1061 (42000) at line 17: Duplicate key name 'jid'
[root@server1 jobs]# vim test.sql
[root@server1 jobs]# mysql < test.sql
ERROR 1007 (HY000) at line 1: Can't create database 'salt'; database exists

在导入数据库时,会出现两个报错,我们需要注释掉前3行和第17行

mysql

minion端:

yum install MySQL-python.x86_64 -y
vim /etc/salt/minion
/etc/init.d/salt-minion restart

测试:

二、在该架构中,minion像往常一样发送数据到master端的job cache中,然后master端使用returnner机制将返回的数据存在在数据库中

yum install -y MySQL-python.x86_64
vim /etc/salt/master
/etc/init.d/salt-minion restart

mysql

自定义模块

salt-syndic 模块

syndic的意思为理事,其实如果叫salt-proxy的话那就更好理解了,它就是一层代理,如同zabbix proxy功能一样,隔离master与minion,使其不需要通讯,只需要与syndic都通讯就可以,这样的话就可以在跨机房的时候将架构清晰部署了

1.在master端去掉server4这个节点

2.让server4充当top-master

yum install salt-master
vim /etc/salt/master
/etc/init.d/salt-master start

在server1上(master):

yum install -y salt-syndic
vim /etc/salt/master
/etc/init.d/salt-syndic start
/etc/init.d/salt-master restart

salt-ssh连接操作

salt-ssh 是 0.17.0 新出现的一个功能,它是依赖 ssh 来进行远程命令执行的工具,好处就是不需要在客户端安装 minion,也不需要安装 master(直接安装 salt-ssh 这个包即可),有些时候你还真的需要 salt-ssh(例如:条件不允许安装 minion、不用长期管理某台 minion) 最重要的是 salt-ssh 并不只是单纯的 ssh 工具,它支持 salt 大部分的功能,如 grains、modules、state 等,需要注意的是,salt-ssh 并没有继承原来的通讯架构 (ZeroMQ),也就是说它的执行是串行模式,速度比传统的master-minion要慢.

server1:

yum install salt-ssh -y
vim /etc/salt/roster
  host:        # 远端主机的ip地址或者dns域名
  user:        # 登录的用户
  passwd:      # 用户密码,如果不使用此选项,则默认使用秘钥方式

vim /etc/salt/master  将之前的数据库模块注释掉

测试:

关闭server3的minion,通过ssh连接,成功

salt-api调用

yum install salt-api

vim auth.conf

vim salt-api.py

chmod +x salt-api.py

./salt-api.py

关闭server2的nginx服务,调用脚本,在server2中查看服务已开启

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值