码农行者 码农行者
首页
  • 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 架构
      • saltstack 组件
        • 管理对象 Target
        • Grains 组件
        • Pillar 组件
        • Module 组件
        • States 组件
        • Return 组件
        • job
        • Event 和Reactor
        • Renderer
    • 转-【SaltStack源码分析任】务处理机制
    • salt minion 启动问题
    • 转-saltstack 中Grains 与pillar的区别
  • puppet

  • 运维
  • salt
DeanWu
2016-08-21
目录

Saltstack学习笔记-组件篇

# saltstack 架构

saltstack 是基于python开发的一套 c/s架构配置管理工具。底层使用ZeraMQ消息队列的发布与订阅(pub/sub)方式通信,使用SSL证书签发的方式进行认证管理。

# saltstack 组件

# 管理对象 Target

target 匹配,

-E , --pcre 正则匹配
-L , --list 列表匹配
-G , --grain grains值匹配
--gran-pcre grains加正则
-N , --nodegroup 组匹配
-R , --range 范围匹配
-C , --compound 综合匹配
-I , --pillar pillar 值匹配
-S , --ipcidr minions 网段匹配

# Grains 组件

grains 组件是saltstack记录minion的一些静态信息的组件。

# 查看Grains组件的函数
salt '*' sys.list_functions grains 

# 查看具体函数的使用方法
salt '*' sys.doc grains 

除了自带的grains外,还可以自己定义,定义方法:

  • 通过minion 配置文件,将Grains信息配置写在minion配置文件中。
  • 通过grains 相关模块定义,使用Grains 模块添加或删除grains信息。
  • 通过python 脚本定义

# Pillar 组件

pillar 用来存储和定义配置管理中需要的一些信息。

# 查看pillar组件的函数
salt '*' sys.list_functions pillar 

# 查看具体函数的使用方法
salt '*' sys.doc pillar

# Module 组件

用来管理对象操作,是saltstack通过push方式管理的入口。

# 查看所有modules
salt '*' sys.list_modules
# 查看具体module的函数
salt '*' sys.list_functions cmd 
# 查看module的用法
salt '*' sys.doc cmd

# States 组件

states sls 文件用来描述和实现配置管理的功能。

# 查看所有states
salt '*' sys.list_states_modules
# 查看具体states的函数
salt '*' sys.list_states_functions file
# 查看states的用法
salt '*' sys.state_doc file

# Return 组件

对minion执行的返回结果进行存储或返回给其他程序。

# 查看所有return 
salt '*' sys.list_returners

目前saltstack 以支持master和minion端,两种方式return数据到存储服务器。

# job

saltstack 执行任何一个操作都会在Master上产生一个jid号。master和minion会产生一jid命名的job文件,里面存了此次操作的详细信息。

job管理的方式:

  • salt-run
  • salt自带模块 saltutil

# Event 和Reactor

event 是对每个事件的一个记录,比job更底层,更加详细。包括认证、minion和master 的链接,key认证,job等。

  • salt-run state.event pretty=True 查看event事件

reactor 是对event的监听,基于event的事件来做相应的操作。

# Renderer

renderer 是编写state.sls 文件的途径的统一称呼。默认的renderer语法是YAML+ jinja。

比较流行的方式:

  • python
  • yaml
  • jinja
#salt
上次更新: 2023/03/19, 15:09:33
SaltStack学习笔记3 -- salt returner 的使用
转-【SaltStack源码分析任】务处理机制

← SaltStack学习笔记3 -- salt returner 的使用 转-【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版权协议
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式