SaltStack之sls文件

SLS(代表SaLt State文件)是Salt State系统的核心。SLS描述了系统的目标状态,由格式简单的数据构成。这经常被称作配置管理。

SLS文件使用YAML语言编写,其规则主要有以下三方面:

缩进:每个缩进级别由两个空格组成,相同缩进表示相同的层级,严禁使用TAB键

冒号:冒号+空格 用来分隔键和值,key通常以冒号结尾,而且后面有一个空格

短横:短横+空格 表示列表项,多个项使用同样的缩进级别表示同一列表的一部分,列表可以表示一个key的值。

如:

cd /srv/salt/base/ #定义环境的DNS文件

vim dns.sls

/etc/resolv.conf: #sls文件的ID,必须唯一

file.managed: #模块.模块参数

- source: salt://resolv.conf #salt://表示配置文件中定义的根目录,/srv/salt/base

- user: root

- group: root

- mode: 644

cd /srv/salt/base/

cp /etc/resolv.conf ./

vim resolv.conf

nameserver 192.168.154.2

salt ‘*‘ state.sls dns #执行sls文件,也可以写到top.sls文件中再执行

时间: 2024-10-06 05:57:57

SaltStack之sls文件的相关文章

关于saltstack下 sls文件编写的一点收获

初学saltstack,写sls文件,感觉YAML格式要求真是严格.仅以记录一下内容,作为分享.开源的知识就该告诉所有想知道的人. /opt/foo.conf:           #设定ID,只是一个标识而已 file.managed:          #使用的方法函数,file下面的managed(python格式) - name: /foo.conf    #设定文件的路径,这个路径是指master上的文件将被同步到minion的路径.若为设定name,将采用ID设定代替 - sourc

【saltstack学习笔记之八】salt的sls文件

1.在/srv/salt目录下创建top.sls文件 cd /srv/salt touch top.sls 2.编辑sls文件 vim hosts.sls /tmp/aaa.hosts :        //name,可以宿便写,但是如果这里不写同步路径信息的话,需要在后面加上- name: /tmp/aaa.hosts  file.managed:        //指定使用的salt模块的名称    - source: salt://etc/hosts       //同步的源在哪 - us

使用saltstack的sls功能

sls文件编写 [[email protected] ~]# vim /etc/salt/master #在master配置文件中添加以下内容 file_roots:   base:     - /srv/salt [[email protected] ~]# mkdir -p /srv/salt [[email protected] ~]# cd /srv/salt/ [[email protected] salt]# pwd /srv/salt  [[email protected] sal

Saltstack的sls(7)

SLS(代表SaLt State文件)是Salt State系统的核心.SLS描述了系统的目标状态,由格式简单的数据构成.这经常被称作配置管理 首先,在master上面定义salt的主目录,默认是在/srv/salt/下面,vim /etc/salt/master: file_roots:    base:      - /srv/salt    dev:     - /srv/salt-dev 然后,在/srv/salt下面创建top.sls文件(如果有的话,就不用创建了,直接编辑好了) vi

SaltStack 之 salt-cp 文件复制替换实践

SaltStack 之 salt-cp 文件复制替换实践 一.我们把/srv/salt/files/hosts 文件复制到各从机的的/root下 [[email protected] srv]# salt-cp '*' /srv/salt/files/hosts /root/ {'BackupServer': {'/root/hosts': True}, 'GZ15_ZABBIX': {'/root/hosts': True}, 'GZIFC_ZABBIX': {'/root/hosts': T

saltstack state.sls常用功能模板编写

saltstack常用功能模块编写 一.简介 Master - 控制中心,salt命令运行和资源状态管理端 Minions - 需要管理的客户端机器,会主动去连接Master端,并从Master端得到资源状态信息,同步资源管理信息 States - 配置管理的指令集 Modules- 包含命令行下运行的指令,和在配置文件里面使用的指令模块可以的函数可以在命令行下运行 Grains - minion端的变量,静态 pillar - minion端的变量,动态,可自定义 highstate - 给m

saltstack   state.sls 与 state.highstate

这里简单介绍一下state.sls 与 state.highstate 与区别,这也是自己在使用过程中的一点心得吧. 环境介绍:salt 2015.5.0 (Lithium) top.sls state.highstate 这个是全局的所有的环境的所有的状态生效: state.sls 用来指定特定sls进行处理. 当使用  salt '*' state.highstate 没有任何问题 可是当执行 salt '*' state.sls servers_packages 发现没法执行 翻看官方文档

saltstack知道这些就很好用了

[salt的目录结构] 环境是有默认的,不过可以更改配置/etc/salt/master文件中file_roots file_roots: base: - /data1/salt/base/ db: - /data1/salt/db/ dev: - /data1/salt/dev/ prod: - /data1/salt/prod/ [先掌握saltstack的SLS文件命名空间问题] 遵照以下规则: sls是扩展名 .sls是被省略的(如 zabbix.sls使用的时候 为 zabbix) 存

SaltStack配置管理之Gains与State测试

SaltStack的Grains主要是收集了minion的一些配置信息,如CPU.内存.硬盘.网络.操作系统等很少发生变化的静态数据,我们也可以在minion自定义Grains项和相应的值,Grains也可以用来匹配目标minion.SaltStack的state通过预先定制好的sls(salt state file)文件对被控制主机进行状态管理,支持包括程序包(pkg).文件(file).网络配置(network).系统服务(service).系统用户(user)等.通过sls文件定义好要达到