`

saltstack sls - sls格式和YAML

阅读更多
【基本介绍】
这里介绍saltstack的sls配置格式和YAML语法规范

【YAML】
1. YAML使用spaces(空格),
因此不能再你的sls文件里面使用Tab,如果你遇到“rendering sls files errors”等错误,请检查你的sls文件,确保没有Tab等非法符合。

2. 缩进
YAML文件的语法建议使用两个空格进行缩进。
YAML实际上是将定义的数据进行序列化成为一个字典。Key下面的缩进内容会被序列化成对应的value.

3. 嵌套
基本遵循2个空格的缩进,只有定义context,defaults选项的时候才使用四个空格作为缩进。用大括号的除外。
/etc/http/conf/http.conf:
  file:
    - managed
    - source: salt://apache/http.conf
    - user: root
    - group: root
    - mode: 644
    - template: jinja
    - context:
        custom_var: "override"
    - defaults:
        custom_var: "default value"
        other_var: 123


4. YAML不喜欢两个连续的缩进形式
下面两个state是不能写入到同一个state的sls文件中,因为他们两个的ID冲突了。
httpd:
  pkg.installed

httpd:
  user.present

我们只能这些。但是这样的话要敲很多空格
httpd:
  pkg:
    - installed
  user:
    - present

那我们是否可以这样呢? 不行,这样就违背了不能用两个连续的缩进形式。
httpd:
  pkg.installed
  user.present

解决方案可以这样,或者上面分行敲多个空格方式。
httpd:
  pkg.installed: []
  user.present: []
分享到:
评论

相关推荐

    saltstack-2013-linux

    通过定义状态文件(如Top.sls和my_state.sls),可以实现对服务器配置的一致性和可重复性管理。 #### 渲染器(Renderers) 渲染器用于解析状态文件中的模板语言,如YAML、Jinja等,将其中的变量替换为实际值,生成...

    saltstack-kodi-formula:使用此公式安装kodi

    "saltstack-kodi-formula" 提供了一个结构化的框架,通过 Salt 的状态文件(通常为 .sls 文件)来定义如何安装和配置 Kodi。这些状态文件使用 Salt 的 YAML 风格语法编写,可以指定软件源、版本、依赖关系以及所需的...

    saltstack的常见配置

    #### 一、SaltStack的SLS文件编写格式与YAML语法规范 SaltStack配置中的SLS文件采用YAML语言编写。YAML是一种人类可读的数据序列化语言,用于配置文件、数据交换等方面。为了确保配置文件的正确性和一致性,以下是...

    saltstack基础应用应用改良版

    SaltStack的典型架构包括Master和Minion两部分: - **Master**:负责接收Minion的连接请求、下发命令以及处理反馈。 - **Minion**:部署在被管理的主机上,负责执行Master下发的任务。 此外,还可以构建更复杂的...

    saltstack-cpanm:用于盐堆的cpanm模块

    在SaltStack中集成cpanm模块,可以方便地在目标节点上自动化安装和管理Perl依赖。 本文将深入探讨如何使用SaltStack的cpanm模块以及相关的知识点: 1. **SaltStack简介**:SaltStack是一款开源的基础设施自动化和...

    saltstack安装包及依赖包

    10. **PyYAML-3.10-3.1.el6.x86_64.rpm**:PyYAML是Python的一个YAML解析器和序列化库,盐栈使用它来读取和写入YAML格式的配置文件,这是一种简洁且易于阅读的配置文件格式。 在安装这些包后,用户需要按照盐栈的...

    轻松使用SaltStack管理成千上万台服务器(入门教程).docx

    - **SSH示例**:`ssh/init.sls`定义SSH服务的基本设置,`ssh/server.sls`和`ssh/custom-server.sls`则可能包含更具体的服务配置和自定义设置。 State文件使用YAML语法编写,结合Python的执行模块(称为“states...

    saltstackMaster2017.7.7rpm包含centos7环境依赖包

    1. Python:SaltStack是用Python编写的,因此需要Python解释器以及一些特定的Python库,如Tornado(用于异步网络I/O)和PyYAML(用于解析YAML格式的配置文件)。 2. ZeroMQ:ZeroMQ是一个高性能的消息传递库,...

    saltstatck安装部署mysql

    SaltStack是一款强大的自动化运维工具,它提供了远程执行、配置管理、状态管理、事件驱动等功能,使得IT管理员能够轻松地管理和更新大规模分布式系统。SaltStack以其高效、灵活和可扩展性赢得了广大用户的青睐,尤其...

    saltstack运维工具

    通过YAML语法编写的“盐态”(SLS)文件,可以定义软件包安装、文件配置、服务启停等任务,实现配置的标准化和版本控制。 2. **远程执行**:SaltStack 的“命令执行”(Execute)功能使得可以在多台服务器上快速、...

    salt-check_mk_agent-formula

    salt-check_mk_agent-formula就是这样一个工具,它的目的是简化check_mk_agent在SaltStack环境中的部署和管理。 首先,我们需要了解如何在SaltStack中使用公式。通常,这涉及到将公式克隆到你的盐州树的` formulas ...

    saltstack:以简单的盐堆为例

    在“saltstack-master”目录中,你会找到Master的配置文件`/etc/salt/master`,其中包含连接到Minions的设置以及插件和模块的配置。 2. **Minion**:这些是被管理的节点,它们连接到Master并接收并执行Master发送的...

    salt-cassandra-formula:Salt Formula设置和配置Cassandra集群

    盐堆栈(SaltStack)是一种流行的自动化配置管理工具,它允许管理员轻松地管理和配置大量服务器。在本场景中,我们关注的是"盐-cassandra-formula",这是一个专门为配置Apache Cassandra集群设计的SaltStack公式。...

    stackstrap-salt

    它使用基于 YAML 的文件来定义配置状态,称为“盐”(SLS),并通过 ZeroMQ 进行通信。 2. **自动化部署**:Stackstrap-Salt 通过 Shell 脚本实现了 SaltStack 的自动化部署,使得设置 Salt Master 和 Minions 变得...

    salt源码状态文件集合

    1. 定义状态:状态文件通常以`.sls`为扩展名,它们用YAML语言编写,用于描述系统或服务应有的状态。比如,一个状态文件可能描述了一个Web服务器的安装、配置和启动过程,确保该服务器始终处于预期的工作状态。 2. ...

    windows-test-states:测试Windows盐状态的状态集

    这些状态以YAML格式编写,具有清晰的可读性和易于维护的特点。在"windows-test-states"中,包含了各种用于测试的Salt状态,如服务管理、文件管理、用户和组管理等,帮助管理员确保在Windows环境中Salt的正确运行。 ...

    pacemaker-corosync-formula

    SaltStack通过声明式配置语言,使得管理员能以简洁的YAML格式定义集群的期望状态,然后自动将这些配置应用于目标服务器,确保集群环境的一致性。 在"pacemaker-corosync-formula-master"这个压缩包中,可能包含以下...

Global site tag (gtag.js) - Google Analytics