码农行者 码农行者
首页
  • Python

    • 语言特性
    • Django相关
    • Tornado
    • Celery
  • Golang

    • golang学习笔记
    • 对比python学习go
    • 模块学习
  • JavaScript

    • Javascript
  • 数据结构预算法笔记
  • ATS
  • Mongodb
  • Git
云原生
运维
垃圾佬的快乐
  • 数据库
  • 机器学习
  • 杂谈
  • 面试
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

DeanWu

软件工程师
首页
  • Python

    • 语言特性
    • Django相关
    • Tornado
    • Celery
  • Golang

    • golang学习笔记
    • 对比python学习go
    • 模块学习
  • JavaScript

    • Javascript
  • 数据结构预算法笔记
  • ATS
  • Mongodb
  • Git
云原生
运维
垃圾佬的快乐
  • 数据库
  • 机器学习
  • 杂谈
  • 面试
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 常见问题记录

  • linux

  • devops

  • 其他

  • 监控

  • gitlab

  • ansible

  • salt

    • SaltStack学习笔记1-salt安装配置
    • SaltStack学习笔记2-- salt-api安装配置(转载)
    • SaltStack学习笔记3 -- salt returner 的使用
    • Saltstack学习笔记-组件篇
    • 转-【SaltStack源码分析任】务处理机制
    • salt minion 启动问题
    • 转-saltstack 中Grains 与pillar的区别
  • puppet

  • 运维
  • salt
DeanWu
2016-03-10

SaltStack学习笔记3 -- salt returner 的使用

SaltStack 2014.7之前, Minion端的执行结果想存储在外部系统中, 通过使用Returners,我们可以将返回结果存放到我们指定的存储系统中,但是Returners的特性是由minion端直接连接对应的存储中,

使用特定的Returners还可能需要在Minion安装相关的软件包,在大规模的分布式环境中由于网络等限制,该方式可能并不能完全满足我们的需 求。

Salt提供了一种可以直接在Master端将返回存储下来的机制。在Master配置文件中有master_job_cache的选项,默认就是Mysql。我们打开就可以将Job的返回结果直接存入MySQL中。 具体可查看官网介绍:http://docs.saltstack.com/en/latest/topics/jobs/external_cache.html

默认返回结果是保存到cachedir中的,保持24小时。可以使用

In addition to the Default Job Cache, Salt provides two additional mechanisms to send job results to other systems (databases, local syslog, and others):

External Job Cache

Master Job Cache

The major difference between these two mechanism is from where results are returned (from the Salt Master or Salt Minion).

操作如下:

一、在master端安装mysql并创建数据库及表

具体可能参考官网文档:http://docs.saltstack.com/en/latest/ref/returners/all/salt.returners.mysql.html#module-salt.returners.mysql

二、返回数据入库配置有二种方法:

1、在minion端设置:

1) 安装MySQL-python包

2) 修改minion配置文件

mysql.host: ‘192.168.100.120’
mysql.user: ‘salt’
mysql.pass: ‘salt’
mysql.db: ‘salt’
mysql.port: 3306
mysql.ssl_ca: /etc/salt/pki/minion/minion.pem
mysql.ssl_cert: /etc/salt/pki/minion/minion.pem
mysql.ssl_key: /etc/salt/pki/minion/minion.pub

3)在master端执行命令添加–return mysql

例:salt ‘*’ cmd.run “free -m” –return mysql

或者在master端开启ext_job_cache: mysql,则无需要加–return mysql也可插入表

4) master端无需配置。

注: 即可将return数据插入到表salt_returns中。其他二表无数据。

2、在master端设置:

1) 安装MySQL-python包

如不安装插入mysql的python模块,则会报如下错误

2015-07-19 19:47:52,089 [salt.master][CRITICAL][6631] The specified returner used for the external job cache “mysql” does not have a save_load function!

2) 在master配置文件中添加

mysql.host: ‘127.0.0.1’
mysql.user: ‘salt’
mysql.pass: ‘salt’
mysql.db: ‘salt’
mysql.port: 3306

master_job_cache: mysql

3) 在master端执行命令

例:salt ‘*’ cmd.run “free -m”即可将jid和return数据插入jids和salt_returns表。

#salt
上次更新: 2023/03/19, 15:09:33
SaltStack学习笔记2-- salt-api安装配置(转载)
Saltstack学习笔记-组件篇

← SaltStack学习笔记2-- salt-api安装配置(转载) Saltstack学习笔记-组件篇→

最近更新
01
chromebox/chromebook 刷bios步骤
03-01
02
redis 集群介绍
11-28
03
go语法题二
10-09
更多文章>
Theme by Vdoing | Copyright © 2015-2024 DeanWu | 遵循CC 4.0 BY-SA版权协议
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式