问题标签 [salt-stack]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
salt-stack - 确保仅删除所需的数据保持和过时
我们使用 salt 来引导我们的 Web 服务器。我们托管多个不同的域。/etc/apache2/sites-available
我为我们的每个域创建一个文件。然后我将它符号链接到sites-enabled
.
问题是,如果我将域移动到不同的服务器,sites-enabled
则不会删除来自的链接。如果我更改域名并将数据保留在原位 - 那么我就有 old.domain.com 和 new.domain.com 虚拟主机文件。我希望最终只有 new.domain.com in sites-enabled
,但是两个文件都在那里,并且工作域取决于字母表(我猜)-首先加载哪个虚拟主机。
我将域存储在支柱中并生成虚拟主机,例如:
我需要确保只有在柱子中列出的虚拟主机才能在高状态之后保留。我考虑过先清空文件夹,但这感觉很危险,因为 highstate 可能会在半空中失败,我将失去任何虚拟主机 - 破坏所有其他域 - 只是因为我试图添加一个。
有没有办法强制执行类似:“删除此高状态运行中不存在的所有内容”?
vagrant - 如何确保使用 SALT 配置启用 mod_rewrite
我正在使用 SALT 配置来创建我的 vagrant box。
在我的 apache2.sls 我有
如何确保 mod_rewrite 已启用?
非常感谢您宝贵的时间。
configuration-management - 如何避免在盐州重蹈覆辙?
我们有两个不同的环境,开发和生产,由单个 Salt 服务器管理。像这样的东西:
user-dev
和users-prod
状态几乎相同,如下所示:
我们不想复制代码,所以我们最初的想法是做这样的事情:
然后引用users
in users-common
,但这不起作用,因为正确的 Jinja 语法是set users = pillar['users'].items()
并且这不打算在 Salt 状态包括。
那么,问题是如何正确地做到这一点?
salt-stack - SaltStack:如何在“sls”中使用正则表达式编写 pkgs?
我使用 saltstack 来部署我的服务器。我想在一台服务器上安装所有“tomcat7”pkg。所以我写了一个这样的sls文件:
但最后,它收到一个错误:
但事实上,服务器已经成功安装了所有的 ^tomcat7.* 包。
如何解决这个问题呢?我需要一一写所有 ^tomcat7.* pkgs 吗?
python - 如何在 jinja 模板中获取主机名的 IP 地址
我们的 saltstack 基于主机名(webN. 、 dbN.等)。但是对于各种事情,我需要这些服务器的 IP。现在我将它们存储在柱子中,但我需要同步的位置数量增加了。
我尝试使用 publish + network.ip_addrs,但这有点糟糕,因为它需要完成整个 salt-roundtrip 来解析主机名。它也取决于奴才的反应。因此,我正在寻找一种在模板中将主机名解析为 IP 的方法。
我假设我可以以某种方式为它编写一个模块,但我的 python 技能非常有限。
nginx - 盐:在 SLS 中使用自定义颗粒
我正在尝试在我的 init.sls 中使用自定义粒度,但 if 语句永远不会正确。这是我的自定义谷物在行动:
我的 init.sls 调用:
但是 nginx.signal 永远不会被调用。为什么?
另外,我如何将参数“重新加载”提供给运行命令?
django - Salt - multiple requirement files to virtualenv
I would like to manage my Django project with Salt (http://saltstack.com). In my states I have
And in requirements.txt I load other files (production.txt, local.txt...):
When I run salt, it fails:
How can I change path from /tmp/
to /srv/MyProject/src/
? I tried to use cwd
option, but it is the same.
python - 使用 salt-api 远程调用 salt-key
我想使用 Salt Stack 来管理将由另一个应用程序自动创建的云服务器。我无法使用 salt-cloud 创建新服务器并引导它们,因为我无法控制的另一个应用程序将自动创建和删除它们。
我能做的是构建应用程序在创建和删除新的云服务器实例时将使用的映像。
我正在寻找的是一种让新创建的仆从将自己引导到 salt master 的方法,而 salt-master 在创建之前对其一无所知。
我遇到的问题是我需要一种预先播种密钥的方法,以便可以自动接受新的奴才。
我试图通过在启动时运行一个脚本来使用 salt-api 来执行此操作,该脚本将连接到 salt-master 并为自己生成一个新密钥。新的 minions 可以使用预先播种的密钥,以便它自动连接到 master。
但是我在试图弄清楚如何从 salt-api 调用 salt-key 以便在每次创建 minion 时生成一个新密钥时遇到了问题。
php - Salt-Stack / Vagrant:ubuntu 12.04 上的 php 5.5
通过使用下面的文件,我只能获得“PHP 5.3.10-1ubuntu3.8”。我至少需要 php 5.4 并且真的很喜欢 php 5.5。
谁能帮我吗?我已经四处寻找了几个小时,似乎这不是一个经常被谈论的话题。
提前致谢。
php.sls