SaltStack状态间的关系模块
2021/7/14 23:47:29
本文主要是介绍SaltStack状态间的关系模块,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 1. include
- 2. extend
- 3. require与require_in
- 4. watch与watch_in
- 5. unless
- 6. template
1. include
以解耦的方式写了多个sls文件以后,可以用include模块来搭配sls状态文件,include模块通常放在文件顶部。
//语法 include: - file.sls #sls文件路径,可以包含多个 - file.sls ... //例如 include: - modules.web.nginx.install - modules.database.mysql.install
2. extend
扩展某个SLS的状态
//语法 extend: id: //指定需要扩展的id module: //指定扩展使用的模块 - name: //参数 //例如 extend: nginx-install: pkg.installed: - name: openssl
3. require与require_in
require:需要。依赖某个状态
require_in:被需要。被某个状态需要
如果所依赖的id没有执行成功,则require所在的id不会执行
//语法 - require: - module: id //例如 nginx: service.running: - enable:True - require: - file: /etc/nginx/nginx.conf #表示nginx启动依赖这个配置文件
4. watch与watch_in
watch:监控某个状态
watch_in:被某个状态监控
//语法 - watch: - module:id //例如 nginx-service: service.running: - reload: True - watch: #表示监控id为/usr/local/nginx/conf/nginx.conf的file模块 - file: /usr/local/nginx/conf/nginx.conf
5. unless
条件判断,如果判断条件成立则不执行所在id的指令,判断条件不成立则执行,常用于cmd模块下使用,因为cmd模块执行是不具有幂等性的,为了防止状态执行多遍,unless判断就非常有必要。
//语法 - unless: test ... //例如 salt://modules/web/nginx/files/nginx_install.sh: cmd.script: - unless: test -d /usr/local/nginx #表示如果这个目录存在则不行以上指令
6. template
定义变量
salt-minion-conf: file.managed: - name: /etc/salt/minion - source: salt://files/minion - user: root - group: root - mode: 644 - template: jinja #使用jinjia模板 - default: #定义默认值 ID: {{ grains['ipv4'] [1] }} - require: - pkg: salt-minion-install
参考官方文档
https://docs.saltproject.io/en/latest/ref/states/requisites.html#require
这篇关于SaltStack状态间的关系模块的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26MATLAB 中 A(7)=[];什么意思?-icode9专业技术文章分享
- 2024-11-26UniApp 中如何实现使用输入法时保持页面列表不动的效果?-icode9专业技术文章分享
- 2024-11-26在 UniApp 中怎么实现输入法弹出时禁止页面向上滚动?-icode9专业技术文章分享
- 2024-11-26WebSocket是什么,怎么使用?-icode9专业技术文章分享
- 2024-11-26页面有多个ref 要动态传入怎么实现?-icode9专业技术文章分享
- 2024-11-26在 UniApp 中实现一个底部输入框的常见方法有哪些?-icode9专业技术文章分享
- 2024-11-26RocketMQ入门指南:搭建与使用全流程详解
- 2024-11-26RocketMQ入门教程:轻松搭建与使用指南
- 2024-11-26手写RocketMQ:从入门到实践的简单教程
- 2024-11-25【机器学习(二)】分类和回归任务-决策树(Decision Tree,DT)算法-Sentosa_DSML社区版