码迷,mamicode.com
首页 > 其他好文 > 详细

saltstack之(六)配置管理state

时间:2016-05-11 18:10:19      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:

配置管理是saltstack工具最重要的模块之一,也是学习saltstack之后使用最多的一个功能。可以轻松实现上百台上千台甚至上万台服务器的管理工作。

1.使用state模块进行配置管理,编写sls文件,sls文件使用的是yaml语法格式。

yaml文件的语法格式:
  structure通过空格来展示。
  sequence里的项用"-"来表示。
  map里的键值对用":"来表示。


2.常用的state模块及方法:
file:
  file.managed --文件管理(重点)
  file.append --文件追加
  file.absent --删除文件
  file.directory --创建目录
  file.recurse --递归拷贝目录到minion端

pkg:
  pkg.installed --软件包安装(重点)
  pkg.latest --保持软件包为最新版本
  pkg.remove --卸载软件包
  pkg.purge --下载软件包,删除配置文件

service:
  service.running --确保服务处于运行状态(重点)
  service.enabled --开机启动
  service.disabled --开机不启动
  service.dead --确保服务处于未运行状态

cmd:
  cmd.run --执行shell命令

 

3.模块之间的依赖关系
watch: 关注某一事件变化
watch_in: 被关注自身事件变化
require: 依赖某一事件发生
require_in: 被依赖自身事件发生
unless: 判断是否为false,如果为false则执行。常用在cmd中name的命令。
onlyif: 判断是否为true,如果为true则执行。


4.jinja模板

jinja是基于python的模版引擎。template类是jinja的一个重要组件,它可以被看作是一个编译过的模板文件,被用来产生目标文件。

5.编写state文件并使用jinja模板的步骤:
①.在state文件中使用"- template: jinja"声明。
②.在模版文件中使用变量"{{ name }}"声明,name为变量,自己定义。
③.在state文件中使用"- defautls: name: value"声明。

saltstack之(六)配置管理state

标签:

原文地址:http://www.cnblogs.com/xkops/p/5482725.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!