当前位置: 首页 > news >正文

SaltStack配置语法-YAML和Jinja

系统规划:1 系统初始化   2 功能模块    3 业务模块

YAML语法及jinja模版:

YAML语法:

wKioL1ZMLeHCHg8BAABwKNljUxA678.png

wKioL1ZMLeKBYKpmAAB-NTib48c961.png

wKioL1ZMLeTga-QRAACcvUdaeKY654.png


JINJA语法:

wKioL1ZMLnexCvQcAACQCMD8dCo687.png

wKiom1ZMLiXR2PtbAACAPvzzFqI732.png

wKioL1ZMLnnDpopoAAC9hMONLKE534.png

用jinja模版来修改文件的一个实例:

[root@linux-node1 ~]# cat /srv/salt/base/dns.sls    

/etc/resolv.conf: 

  file.managed:

    - source: salt://files/resolv.conf

    - user: root

    - group: root

    - mode: 644

    - template: jinja                    =========>jinja模版的固定格式

    - defaults:                           =========>default默认值

      DNS_SERVER: 10.0.0.2               =========>DNS SERVER的变量值


[root@linux-node1 ~]# cat /srv/salt/base/files/resolv.conf         =============>此处的nameserver变量必须与上文中的DNS_SERVER相对应        

#hehe

nameserver `DNS_SERVER`


[root@linux-node1 ~]# vim /srv/salt/base/dns.sls 

/etc/resolv.conf:

  file.managed:

    - source: salt://files/resolv.conf

    - user: root

    - group: root

    - mode: 644

    - template: jinja

    - defaults:

      DNS_SERVER: 10.0.0.3         ==================>此处原来是10.0.0.2,现在改成10.0.0.3


[root@linux-node1 ~]# salt '*' state.highstate           ====================>执行高级状态,返回如下结果

 Changes:   

              ----------

              diff:

                  ---  

                  +++  

                  @@ -1,3 +1,3 @@

                   #hehe

                  -nameserver 10.0.0.2

                  +nameserver 10.0.0.3

状态显示修改成功


通过jinja模版来分辨主和辅的配置

老男孩网址:http://www.etiantian.org

qq:406564728

图片来自51cto,若有侵权,请及时联系作者,谢谢





     本文转自陈继松 51CTO博客,原文链接:http://blog.51cto.com/chenjisong/1714327,如需转载请自行联系原作者



相关文章:

  • 《3D数学基础》2.1 矩阵基本概念、2.2 矩阵的数乘和加减法、2.3 方阵
  • 一句话xen下安装虚拟机
  • 平衡二叉树AVL删除
  • Excel\Word\PPT - Shape内容获取方式
  • SQL SERVER 分布式事务(DTC)
  • (转)http协议
  • 如何安全设定和检测你的密码安全性?
  • FreeRADIUS 负载均衡和高可用
  • .net 4.0发布后不能正常显示图片问题
  • Liferay 模板文件的解析
  • 艾伟:[原创]谈谈WCF中的Data Contract(2):WCF Data Contract对Generic的支持
  • NeHe OpenGL第三十四课:地形
  • ansible-playbook批量部署zabbix
  • 艾伟_转载:C#来创建和读取XML文档
  • 一例HP ADG数据恢复成功(8×73GB SCSI)
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • 2017 前端面试准备 - 收藏集 - 掘金
  • 230. Kth Smallest Element in a BST
  • Angular js 常用指令ng-if、ng-class、ng-option、ng-value、ng-click是如何使用的?
  • Fastjson的基本使用方法大全
  • JavaScript创建对象的四种方式
  • JS 面试题总结
  • js写一个简单的选项卡
  • SpingCloudBus整合RabbitMQ
  • Twitter赢在开放,三年创造奇迹
  • use Google search engine
  • 力扣(LeetCode)56
  • 前端技术周刊 2018-12-10:前端自动化测试
  • 区块链分支循环
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 新手搭建网站的主要流程
  • 交换综合实验一
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • # 计算机视觉入门
  • #《AI中文版》V3 第 1 章 概述
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • #我与Java虚拟机的故事#连载05:Java虚拟机的修炼之道
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (附源码)计算机毕业设计ssm基于B_S的汽车售后服务管理系统
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (全注解开发)学习Spring-MVC的第三天
  • (一)kafka实战——kafka源码编译启动
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • *p++,*(p++),*++p,(*p)++区别?
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .Net MVC + EF搭建学生管理系统
  • .NET 设计模式—简单工厂(Simple Factory Pattern)
  • .net 中viewstate的原理和使用
  • .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)...
  • .Net的C#语言取月份数值对应的MonthName值
  • .NET框架设计—常被忽视的C#设计技巧
  • /usr/bin/perl:bad interpreter:No such file or directory 的解决办法
  • [ Linux 长征路第二篇] 基本指令head,tail,date,cal,find,grep,zip,tar,bc,unname