博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
saltstack使用
阅读量:4098 次
发布时间:2019-05-25

本文共 1427 字,大约阅读时间需要 4 分钟。

saltstack基本使用


按照的方式不是一个master+minion的测试环境。

通过salt-key -L查看一下加入salt环境的minion:

这里写图片描述

Grains模块

grains模块使用

grains是minion启动的时候采集的系统的静态信息,包括cpu、操作系统、文件系统、硬盘等。

显示所有的minion的grians信息:

salt '*' grains.ls

可以将 * 替换为具体monions节点id

这里写图片描述

上边显示的只是门类,显示具体信息可以使用:

salt '*' grains.items

这里写图片描述

grains模块应用场景

1、获取系统信息(监控、应用分配)

2、用于分类查找minion
3、与其他模块结合更灵活控制minion

自定义grains

有三个路径可以打开自定义grains:

  • /etc/salt/grains
  • /etc/salt/minion
  • _grains

这三个路径优先级逐渐升高

pillar模块

和grains类似,可以将minion数据通过key、value方式存储。可以使用单独的加密session,所以可以传递敏感加密数据。它是运行在master端的。

Targeting Minions模块

为salt指定minion的方法,匹配minion的规则。

可以使用-G参数来表示使用grains中变量信息来匹配minion,例如:

salt -G 'os:CentOS' test.ping

这里写图片描述

对匹配到 os为centos的机器执行ping操作。

Compound Targeting

通过不同的方式匹配minion,例如:

salt -C 'G@os:CentOS and minion* or E@db.*' test.ping

这里写图片描述

G@ 表示制动grains匹配,minion*表示以minion开头的minion-id,E@ 表示正则方式匹配minion-id

多个条件可以使用逻辑关系符连接。

Node Group Targeting

在salt-master配置文件中增加nodegroups配置项,

这里写图片描述

salt runners

salt runners是在master上运行命令的方法,区别于salt execution model。

salt runners模块包括:

- cache:返回minion缓存数据- ddns:动态dns- fileserver:salt fileserver插件管理- .....

自定义salt runner:

1、添加一个目录到salt-master配置文件run_dirs配置项
2、创建该目录
3、添加python文件到该目录

首先添加配置项:

这里写图片描述

然后创建该目录,并在该目录下写一个python文件:

这里写图片描述

运行这个自定义runner:

这里写图片描述

使用salt-run调用runner,后边test表示文件名,hello表示该文件的方法或函数名。打印print输出的是白色,返回值输出为绿色(也可能是其他颜色)

remote execution

将命令在远程minion上执行。

这里写图片描述

执行命令

在远程执行命令的时候需要使用cmd.run这个模块:

salt '*' cmd.run 'uname -a'

这里写图片描述

执行代码

使用cmd.exec_code模块:

salt '*' cmd.exec_code python 'import sys;print sys.version'

这里写图片描述

salt 选项

这里写图片描述

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

你可能感兴趣的文章
从头开始讲Node.js——异步与事件驱动
查看>>
Node.js-模块和包
查看>>
express的应用
查看>>
NodeJS开发指南——mongoDB、Session
查看>>
Express: Can’t set headers after they are sent.
查看>>
2017年,这一次我们不聊技术
查看>>
实现接口创建线程
查看>>
Java对象序列化与反序列化(1)
查看>>
HTML5的表单验证实例
查看>>
JavaScript入门笔记:全选功能的实现
查看>>
程序设计方法概述:从面相对象到面向功能到面向对象
查看>>
数据库事务
查看>>
JavaScript基础1:JavaScript 错误 - Throw、Try 和 Catch
查看>>
SQL基础总结——20150730
查看>>
SQL join
查看>>
JavaScript实现页面无刷新让时间走动
查看>>
CSS实例:Tab选项卡效果
查看>>
前端设计之特效表单
查看>>
前端设计之CSS布局:上中下三栏自适应高度CSS布局
查看>>
Java的时间操作玩法实例若干
查看>>