runners学习

runners是由salt-run命令调用的,一般我用的到就是jobs和manage模块。源代码是在

./site-packages/salt/runners/下的。当然我们可以自定义runners。

先谈谈jobs模块。包含active、lookup_jid、list_job、list_jobs、print_job五种方法。

salt-run jobs.active ->返回正在执行状态任务的信息,是个字典。

salt-run jobs.lookup_jid jid ->查看已经执行完成的任务对应jid返回的结果

salt-run jobs.list_job jid -> 查看对应jid的信息:方法、参数、包含minion、任务开始时间等。

salt-run jobs.list_jobs -> 查看所有任务缓存的信息

salt-run jobs.print_job jid -> 类似list_job

下面给个截图:

manage模块。一般用到的方法是status、down、up、versions等。

salt-run manage.status    ->输出minions的状态(up和down的状态)

salt-run manage.up      ->输出处于运行状态的minions

salt-run manage.down    ->输出处于停止状态的minions

salt-run manage.versions -> 输出minions的版本信息

我一般用这个模块来判断哪些机器有问题,哪些minions需要升级版本。

下面给个截图。

现在说说自定义runners。

首先需要修改下master配置文件,增加runners的查找路径。

runner_dirs: [‘/srv/salt/_runners‘]

重启master

下面程序用于显示所有的minion id信息,文件名是kevin.py

#!/usr/bin/env python
# coding:utf-8

import salt

def get_minions():
        opts = salt.config.client_config(‘/opt/app/salt/etc/master‘)
        key = salt.key.KeyCLI(opts)
        ids = key.key.list_keys()
        for status,values in ids.items():
                for id in values:
                        print id

调用这个runner获取信息

salt-run kevin.get_minions
192.168.110.132
192.168.110.133
192.168.79.47

runners笔记先写到这里,便于以后使用。

runners学习

时间: 2024-08-08 17:07:51

runners学习的相关文章

学习hibernate出现的错误--之一(映射对应)

初学习遇见不少关于hibernate的错误,将这些错误一一记录下来. java.lang.ExceptionInInitializerError at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.r

spring入门篇-学习笔记

1.spring IOC的作用就是用加载配置文件的方式代替在代码中new 对象的方式来实例化对象. 2.IOC 全称:Inversion  of Control,中文意思:控制反转 3.依赖注入有两种方式: 设值注入-> 通过添加set方法,并在配置文件的bean中添加property标签(property引用另一个bean)的方式注入 构造注入->通过构造方法,并在配置文件的bean中添加constructor-arg标签的方式注入 例子项目结构: 以下是各文件代码: InjectDao.j

Junit4学习笔记--方法的执行顺序

package com.lt.Demo.TestDemo; import java.util.Arrays; import java.util.Collection; import org.junit.After; import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; im

CSS3与页面布局学习总结(七)——前端预处理技术(Less、Sass、CoffeeScript、TypeScript)

CSS不像其它高级语言一样支持算术运算.变量.流程控制与面向对象特性,所以CSS样式较多时会引起一些问题,如修改复杂,冗余,某些别的语言很简单的功能实现不了等.而javascript则是一种半面向对象的动态语言,有java的影子,有C的味道,中间有比其它语言多的糟粕,使用预处理办法可以解决这些问题.其中Less[les]与Sass是CSS的预处理技术,而CoffeeScript.TypeScript则是javascript的预处理技术. 一.Less 1.1.概要 Less是一种动态样式语言,L

selenium webdriver 学习总结-数据驱动(六)

QQ群:136924235 论坛:http://bbs.shareku.com webdriver可以结合junit中的Parameterized运行器完成数据驱动的目的,数据驱动的方式很多,可以结合csv文件,excel文件,jdbc等,下面我将结合csv,jdbc来展示如何完成数据驱动测试. 一.先给大家介绍一下如何使用Parameterized运行器,两种方式实现. 1.第一种方式,通过构造方法初始化测试数据 代码示例: package junit.parameters; import o

Junit单元测试学习笔记三

一.     高级 Fixture 上一篇文章中我们介绍了两个 Fixture 标注,分别是 @Before 和 @After ,我们来看看他们是否适合完成如下功能:有一个类是负责对大文件(超过 500 兆)进行读写,他的每一个方法都是对文件进行操作.换句话说,在调用每一个方法之前,我们都要打开一个大文件并读入文件内容,这绝对是一个非常耗费时间的操作.如果我们使用 @Before 和 @After ,那么每次测试都要读取一次文件,效率及其低下.这里我们所希望的是在所有测试一开始读一次文件,所有测

JUnit4学习笔记(四):利用Rule扩展JUnit

一.Rule简介 Rule是JUnit4中的新特性,它让我们可以扩展JUnit的功能,灵活地改变测试方法的行为.JUnit中用@Rule和@ClassRule两个注解来实现Rule扩展,这两个注解需要放在实现了TestRule借口的成员变量(@Rule)或者静态变量(@ClassRule)上.@Rule和@ClassRule的不同点是,@Rule是方法级别的,每个测试方法执行时都会调用被注解的Rule,而@ClassRule是类级别的,在执行一个测试类的时候只会调用一次被注解的Rule 二.JU

学习笔记TF040:多GPU并行

TensorFlow并行,模型并行,数据并行.模型并行根据不同模型设计不同并行方式,模型不同计算节点放在不同硬伯上资源运算.数据并行,比较通用简便实现大规模并行方式,同时使用多个硬件资源计算不同batch数据梯度,汇总梯度全局参数更新. 数据并行,多块GPU同时训练多个batch数据,运行在每块GPU模型基于同一神经网络,网络结构一样,共享模型参数. 同步数据并行,所有GPU计算完batch数据梯度,统计将多个梯度合在一起,更新共享模型参数,类似使用较大batch.GPU型号.速度一致时,效率最

mybatis学习笔记(14)-spring和mybatis整合

mybatis学习笔记(14)-spring和mybatis整合 mybatis学习笔记14-spring和mybatis整合 整合思路 整合环境 sqlSessionFactory 原始dao开发和spring整合后 mapper代理开发 遇到的问题 本文主要将如何将spring和mybatis整合,只是作简单的示例,没有使用Maven构建.并展示mybatis与spring整合后如何进行原始dao开发和mapper代理开发. 整合思路 需要spring通过单例方式管理SqlSessionFa