saltstack

如何使用 saltstack 模板化 SLS
saltstack

如何使用 saltstack 模板化 SLS

我正在尝试使用 Mongodb(分片)进行概念验证,并且我希望每次启动新集群时都运行一个命令,而不必在所有 sls 文件中添加行。我当前的初始化如下: 蒙戈副本4:27000 /usr/lib/mongo/init_addshard.js: 命令: - run - user: present Replica4 这个词不是模板化的,我想知道一种能够做到这一点的方法,这样当我启动一个新集群时,我就不必触碰这个文件中的任何内容。 ...

Admin

通过盐柱将 ssh 密钥从 master 部署到 minion
saltstack

通过盐柱将 ssh 密钥从 master 部署到 minion

我有两个 ssh 密钥,我正尝试将它们部署到我的一个 minions 上。但我似乎无法部署它。它出错了。以下是init.sls主要内容: /xxx/yyy/zzz/id_rsa: file.managed: - source: salt://private/id_rsa /xxx/yyy/zz/id_rsa.pub: file.managed: - source: salt://private/id_rsa.pub 这是我的init.sls状态: ssh: file.managed: - name: {{ pil...

Admin

为分阶段环境构建 Salt State 文件
saltstack

为分阶段环境构建 Salt State 文件

应如何构建 Salt State 文件和 Pillar 配置,以便能够在以下阶段环境中顺利部署各种 minion 角色:开发,质量保证和生产以及功能分支? 我已将我的根状态文件和支柱状态文件排列在与我的 Python 项目源代码不同的存储库中,如下所示: salt-states/ pillar/ web/ init.sls production.sls qa.sls dev.sls db/ ini...

Admin

使用 Salt State 文件清除目录
saltstack

使用 Salt State 文件清除目录

如何使用状态文件清除 salt-minion 上的目录?我想在设置其他主管服务之前删除所有*.conf文件。/etc/supervisord/conf.d/ 以下top.sls配置无效: /etc/supervisor/conf.d/*: file.absent file.remove由于不可用而失败。 ...

Admin

Salt(Saltstack)可以为 Graphite、Ganglia 或 Zenoss 收集和传递数据吗?
saltstack

Salt(Saltstack)可以为 Graphite、Ganglia 或 Zenoss 收集和传递数据吗?

我正在开始一个新项目并考虑使用Ansible或者盐用于部署自动化以及可能更复杂的编排(服务器管理和联合)。 我想知道 Salt 和石墨或者芝诺斯或者神经节...使用 Salt0mq连接将数据从 Salt“minions”中继到监控/图形数据库/收集器。 还有其他人看过这个吗? ...

Admin

监控服务器是否存在自动化软件之外的更改
saltstack

监控服务器是否存在自动化软件之外的更改

我所在的公司目前正在研究为我们的服务器(所有 Ubuntu/FreeBSD)部署集中式自动化系统(如 Salt 或 Puppet)。我们可能会采用 Salt,但我认为这与我的问题无关。 我的问题是:有没有一种好的方法可以监控机器中未包含在自动化系统中的本地变化? 例如:为了快速修复,有人在给定的机器上启动了一项服务或修改了配置文件。有没有办法使用 Salt/Puppet/whatever 检查这些事情?或者我需要使用 AIDE 等外部程序来实现这一点? ...

Admin

Salt Jinja 模板使用循环连接字符串
saltstack

Salt Jinja 模板使用循环连接字符串

我在 Salt 中连接字符串时遇到问题,我想获取一个名为“accesslist”的盐粒,它包含要附加到访问列表的组数组。 {% set access_filter = '(memberOf=CN=bbb,OU=Security,OU=Groups,OU=yyy,DC=xxx,DC=local)' %} {% for acc in grains.accesslist %} {% set access_filter = '(memberOf=CN={{ acc }},OU=Security,OU=Groups,OU=aa,D...

Admin

如何避免在递归中使用盐文件的特定文件夹
saltstack

如何避免在递归中使用盐文件的特定文件夹

需要跳过 salt 文件中的文件夹,之前从未使用过这些文件夹。我的系统上有以下文件夹结构 /Test /A /B /C Salt State文件显示指令如下: customownergroup: file: - directory - names: - /Test - user: root - group: root - recurse: - user - group 我想使用以下代码为目录“C”申请另一个权限 excludecustomfolder: fil...

Admin

SaltStack 如果条件在运行命令时失败则映射值
saltstack

SaltStack 如果条件在运行命令时失败则映射值

我正在尝试将一行回显到 sudoers 文件中,但我无法弄清楚该特定命令所需的正确语法。 gwconfig: cmd.run: {% if grains['ip4_gw'] == '192.168.1.1' %} - name: echo "%account_name ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers {% elif grains['ip4_gw'] == '192.168.1.2' %} - name: echo "not working" >> /...

Admin

无法在 salt-master 上注册 minion
saltstack

无法在 salt-master 上注册 minion

我正在尝试将 salt-minion 连接到 Salt Master。但是它不起作用。错误在哪里?有什么问题? 从主服务器 ping 到从服务器有效,反之亦然 以下是日志: ** Minion 日志: ** 数控-V-Z 176.111.111 4505 nc: connect to 176.111.111 port 4505 (tcp) failed: No route to host salt-minion-l 调试 [DEBUG ] Reading configuration from /etc/salt/minion [DEBUG ] In...

Admin

使用反应堆(盐)时超时
saltstack

使用反应堆(盐)时超时

我在设置盐反应器时遇到了一些麻烦。这是我的配置: reactor: - 'salt/minion/*/start': - /srv/reactor/start.sls 和我的/src/reactor/start.tls: {% set minion_id = data['id'] %} highstate-for-{{ minion_id }}: local.state.apply: - tgt: {{ minion_id }} 我有一台master和一台minion不同的计算机(两台都运行 3006.3,主计算机运行 Alma ...

Admin

是否可以将自定义运行器输出存储到 SALTSTACK 中的支柱数据?
saltstack

是否可以将自定义运行器输出存储到 SALTSTACK 中的支柱数据?

我有一个 Salt 公式在我的 minions 上运行,它运行一个自定义模块,该模块会访问网络以获取最新版本的 chrome 的一些 JSON 数据。它工作得很好,但我认为最好将它作为 master 上的运行器运行,并将其存储为 pillar 数据以供 minions 访问。这样,我就不需要数百个 minions 不必要地查询网络,而只需要在 master 上查询一次。 我在网上找不到任何有用的信息。这可能吗? def latest(): import json import urllib.request url = 'https...

Admin

在 VirtualBox 上手动配置 Salt Stack
saltstack

在 VirtualBox 上手动配置 Salt Stack

第一次使用盐栈。 我在三台虚拟机上配置了 salt stack。这三台机器都设置为桥接网络。Centos7(Master)、Centos7(minion)、Ubuntu(minion)。在主服务器上,我使用以下方法安装了更新: sudo rpm --import https://repo.saltproject.io/salt/py3/redhat/7/x86_64/SALT-PROJECT-GPG-PUBKEY-2023.pub curl -fsSL https://repo.saltproject.io/salt/py3/redhat/7/x86_64/...

Admin

如何访问状态文件中的角色主机列表?
saltstack

如何访问状态文件中的角色主机列表?

我通过定义角色来使用 salt,将状态列表映射到要应用这些状态的主机列表: #/srv/pillar/base/top.sls: {% set h = 'host1, host2,' %} 'L@{{ h }}': - roles.Servers {% set h = 'host3, host4,' %} 'L@{{ h }}': - roles.newServers #/srv/salt/base/top.sls: base: 'role:Server': # Mapping a host to a role ca...

Admin

Saltstack 使用命令而不是路径设置 java 替代方案
saltstack

Saltstack 使用命令而不是路径设置 java 替代方案

我正在尝试应用salt.states.alternatives将我的默认 java 设置为 java 11。但是,我需要输入 openjdk 的完整路径,其中包括每次版本更改时都会更改的版本号(这意味着我必须频繁更新 salt 状态): set-java-11: alternatives.set: - name: java - path: /usr/lib/jvm/java-11-openjdk-11.0.19.0.7-1.el7_9.x86_64/bin/java 如果我这样做alternatives --config java,我可...

Admin