STORING JOB RESULTS IN AN EXTERNAL SYSTEM

After a job executes, job results are returned to the Salt Master by each Salt Minion. These results are stored in the Default Job Cache.

作业执行后,作业结果由每个salt minion返回给salt master。这些结果存储在默认作业缓存中。

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

除了缺省的作业缓存之外,Salt还提供了两种附加的机制来将作业结果发送给其他系统(数据库、本地系统日志等):

  • External Job Cache 外部job缓存
  • Master Job Cache  Maste job缓存

The major difference between these two mechanism is from where results are returned (from the Salt Master or Salt Minion). Configuring either of these options will also make the Jobs Runner functions to automatically query the remote stores for information.

这两种机制之间的主要区别是从结果返回(从salt master或salt minion)。配置这些选项中的任何一个也将使Jobs Runner functions自动查询远程存储的信息。

external job cache - minion-side returner

When an External Job Cache is configured, data is returned to the Default Job Cache on the Salt Master like usual, and then results are also sent to an External Job Cache using a Salt returner module running on the Salt Minion.

当配置外部作业缓存时,数据像往常一样返回到salt master上的缺省作业缓存,然后使用在salt minion上运行的salt返回器模块将结果发送到外部作业缓存。

  • Advantages: Data is stored without placing additional load on the Salt Master. 优点:数据存储,而不增加 Salt Master上的额外负载。
  • Disadvantages: Each Salt Minion connects to the external job cache, which can result in a large number of connections. Also requires additional configuration to get returner module settings on all Salt Minions. 缺点:每个salt minion连接到外部作业缓存,这可能导致大量的连接。还需要额外的配置,以获得返回模块设置在所有salt minions。

master job cache - master-side returner

New in version 2014.7.0.

Instead of configuring an External Job Cache on each Salt Minion, you can configure the Master Job Cache to send job results from the Salt Master instead. In this configuration, Salt Minions send data to the Default Job Cache as usual, and then the Salt Master sends the data to the external system using a Salt returner module running on the Salt Master.

代替配置每个salt minion上的外部作业缓存,可以配置Master job cache以salt master发送作业结果。在这种配置中,salt  minion像往常一样将数据发送到默认作业缓存,然后salt master使用运行在salt master上的salt返回器模块将数据发送到外部系统。

  • Advantages: A single connection is required to the external system. This is preferred for databases and similar systems.优点:外部系统需要一个连接。这对于数据库和类似系统是优选的。
  • Disadvantages: Places additional load on your Salt Master. 缺点:给你的salt master 增加额外的负担。

configure an external or master job cache

step 1: understand salt returners 了解salt returners

Before you configure a job cache, it is essential to understand Salt returner modules ("returners"). Returners are pluggable Salt Modules that take the data returned by jobs, and then perform any necessary steps to send the data to an external system. For example, a returner might establish a connection, authenticate, and then format and transfer data.

在配置job cache之前,了解Salt returner 模块("returners")是绝对有必要的。Returners 是可插拔的Salt模块,它接收作业返回的数据,然后执行任何必要的步骤将数据发送到外部系统。例如,返回者可以建立连接、认证、然后格式化和传输数据。

The Salt Returner system provides the core functionality used by the External and Master Job Cache systems, and the same returners are used by both systems.

Salt Returnner系统提供ExternalMaster Job Cache系统所使用的核心功能,并且两个系统都使用相同的returnners。

Salt currently provides many different returners that let you connect to a wide variety of systems. A complete list is available at all Salt returners. Each returner is configured differently, so make sure you read and follow the instructions linked from that page.

Salt目前提供了许多不同的returners, 让你连接到各种各样的系统。所有Salt returners都有一份完整的清单。每个return的配置不同,所以请务必阅读并遵循从该页面链接的指令。

For example, the MySQL returner requires: 比如,MySQL returnner的规定:

  • A database created using provided schema (structure is available at MySQL returner)
  • A user created with privileges to the database
  • Optional SSL configuration

A simpler returner, such as Slack or HipChat, requires:

  • An API key/version
  • The target channel/room
  • The username that should be used to send the message

step 2: configure the returner

After you understand the configuration and have the external system ready, the configuration requirements must be declared.

在了解配置并使外部系统准备好之后,必须声明配置要求。

EXTERNAL JOB CACHE

The returner configuration settings can be declared in the Salt Minion configuration file, the Minion's pillar data, or the Minion's grains.

returner声明设置可以在salt minion配置文件配置,Minion的pillar数据或Minion的grains声明。

If external_job_cache configuration settings are specified in more than one place, the options are retrieved in the following order. The first configuration location that is found is the one that will be used.

如果在多个地方指定外部 external_job_cache,则按以下顺序检索选项。找到的第一个配置位置是将被使用的位置。

  • Minion configuration file
  • Minion's grains
  • Minion's pillar data

MASTER JOB CACHE

The returner configuration settings for the Master Job Cache should be declared in the Salt Master's configuration file.

Master Job Cache 的返回器配置设置应在Salt Master'的配置文件中声明。

CONFIGURATION FILE EXAMPLES

MySQL requires:

mysql.host: 'salt'
mysql.user: 'salt'
mysql.pass: 'salt'
mysql.db: 'salt'
mysql.port: 3306

Slack requires:

slack.channel: 'channel'
slack.api_key: 'key'
slack.from_name: 'name'

After you have configured the returner and added settings to the configuration file, you can enable the External or Master Job Cache.

在配置returnner并将配置添加到配置文件之后,可以启用 External or Master Job Cache。

step 3: enable the external or master job cache

Configuration is a single line that specifies an already-configured returner to use to send all job data to an external system.

配置是一个单行,指定已配置的returner用于将所有作业数据发送到外部系统。

EXTERNAL JOB CACHE

To enable a returner as the External Job Cache (Minion-side), add the following line to the Salt Master configuration file:

若要使returner作为 External Job Cache (Minion-side),请将以下行添加到Salt Master 配置文件中:

ext_job_cache: <returner>

For example: 例如:

ext_job_cache: mysql
注意:
When configuring an External Job Cache (Minion-side), the returner settings are added to the Minion configuration file, but the External Job Cache setting is configured in the Master configuration file.
当配置 External Job Cache (Minion-side)时,将returner设置添加到 Minion配置文件中,但 External Job Cache设置在Master配置文件中配置。

master job cache

To enable a returner as a Master Job Cache (Master-side), add the following line to the Salt Master configuration file:

若要使returner 作为Master Job Cache (Master-side), 请将以下行添加到Salt Master 配置文件中:

master_job_cache: <returner>

For example:  例如:

master_job_cache: mysql

Verify that the returner configuration settings are in the Master configuration file, and be sure to restart the salt-master service after you make configuration changes. (service salt-master restart).

验证returner配置设置在Master配置文件中,并确保在配置更改之后重新启动 salt-master 服务。(service salt-master restart)。

【SaltStack官方版】—— STORING JOB RESULTS IN AN EXTERNAL SYSTEM的更多相关文章

  1. 【SaltStack官方版】—— returners——返回器

    ETURNERS 返回器 By default the return values of the commands sent to the Salt minions are returned to t ...

  2. 【SaltStack官方版】—— MANAGING THE JOB CACHE

    MANAGING THE JOB CACHE The Salt Master maintains a job cache of all job executions which can be quer ...

  3. 【SaltStack官方版】—— states教程, part 2 - 更复杂的states和必要的事物

    states tutorial, part 2 - more complex states, requisites 本教程建立在第1部分涵盖的主题上.建议您从此处开始. 在Salt States教程的 ...

  4. 【SaltStack官方版】—— Events&Reactor系统—BEACONS

    Events&Reactor系统—BEACONS Beacons let you use the Salt event system to monitor non-Salt processes ...

  5. 【SaltStack官方版】—— Events&Reactor系统—EVENT SYSTEM

    Events&Reactor系统 EVENT SYSTEM The Salt Event System is used to fire off events enabling third pa ...

  6. 【SaltStack官方版】—— EVENTS & REACTOR指南

    EVENTS & REACTOR Event System Event Bus Event types Salt Master Events Authentication events Sta ...

  7. 【SaltStack官方版】—— job management

    JOB MANAGEMENT New in version 0.9.7. Since Salt executes jobs running on many systems, Salt needs to ...

  8. 【SaltStack官方版】—— states教程, part 4 - states 说明

    STATES TUTORIAL, PART 4 本教程建立在第1部分.第2部分.第3部分涵盖的主题上.建议您从此开始.这章教程我们将讨论更多 sls 文件的扩展模板和配置技巧. This part o ...

  9. 【SaltStack官方版】—— states教程, part 3 - 定义,包括,延伸

    STATES TUTORIAL, PART 3 - TEMPLATING, INCLUDES, EXTENDS 本教程建立在第1部分和第2部分涵盖的主题上.建议您从此开始.这章教程我们将讨论更多  s ...

随机推荐

  1. nginx报错:nginx: [emerg] unknown directive in /etc/nginx/conf.d/test.conf:4

    nginx报错:nginx: [emerg] unknown directive  in /etc/nginx/conf.d/test.conf:4 解决: 第四行出现了 tab 空格 , 换成正常的 ...

  2. 【疑难杂症】【Solved】maven-compiler-plugin 在 idea 下的问题

    maven-compiler-plugin 这个插件在idea和eclipse里表现本质是一样的,但是我之前有个细节没注意到,导致我对此有误解.我之前一直以为只要配置了source和target,相应 ...

  3. VBA删除空白行列

    '删除空行 Sub DeleteEmptyRows() Dim LastRow As Long, r As Long LastRow = ActiveSheet.UsedRange.Rows.Coun ...

  4. C#学习笔记二 (资源托管,泛型,数组和元组,运算符和类型强制转换)

     托管和非托管资源 1.托管资源是指GC管理的内存空间,非托管资源是指文件句柄,网络连接,数据库连接等. 2.方法中临时申请的变量,被存放在栈中.栈存储非对象成员的值数据.例如在方法中有B b=new ...

  5. 【Qt开发】布局控件之间的间距设置

    void QLayout::setContentsMargins ( int left, int top, int right, int bottom ) Sets the left, top, ri ...

  6. 【VS开发】【图像处理】ISP图像传感器处理器基础

    1        前言 做为拍照手机的核心模块之一,camera sensor效果的调整,涉及到众多的参数,如果对基本的光学原理及sensor软/硬件对图像处理的原理能有深入的理解和把握的话,对我们的 ...

  7. Angular5 reactive Forms Listening for Changes 监听表单变化

    在html 中定义了 FromGroup,怎么来监听用户输入值的变化呢? 可以使用valueChanges 来订阅变化. this.myForm.valueChanges.subscribe(val ...

  8. springboot - 应用实践(1)认识springboot

    1.为什么要推出springboot springboot设计的目的是用来简化新spring应用的初始搭建以及开发过程.springboot遵循“约定优于配置”原则. 2.springboot默认的配 ...

  9. SPOJ 4003 Phone List 题解

    题面 啊~,很水的一道trie树模板题: 当两个串存在关系时情况有两种: 若当前串插入后没有任何新建节点,则该串肯定是之前插入的某个串的前缀: 若在插入的时候,有某个经过的节点带有某串结尾的标记,则之 ...

  10. Head First PHP&MySQl第四章代码

    addemail.php <!DOCTYPE html> <html lang="cn" dir="ltr"> <head> ...