跳转到主要内容

无需运行(代理)Minion即可管理设备和应用的Salt插件

项目描述

Salt插件,用于与网络设备交互,无需运行Minion。

安装

将此软件包安装到您想要管理设备的目录。如果您需要特定版本的Salt,请确保先安装它,否则此软件包将安装可用的最新Salt版本。

该软件包通过PyPI分发,名称为salt-sproxy

执行

pip install salt-sproxy

文档

完整文档可在https://salt-sproxy.readthedocs.io/en/latest/找到。

用法

首先,请确保您已经正确定义了Salt的Pillar Top文件,并且Pillar中包含了proxy密钥。有关更深入的解释和示例,请查看官方SaltStack文档中的这篇教程

一旦完成这些,您就可以开始使用salt-sproxy,即使没有运行任何Proxy Minions或Salt Master。要检查,可以首先执行以下操作:

$ salt-sproxy -L a,b,c --preview-target
- a
- b
- c

语法与广泛使用的CLI命令salt非常相似,但是其底层工作方式完全不同。

salt-sproxy <目标> <函数> [<参数>]

使用示例

$ salt-sproxy cr1.thn.lon test.ping
cr1.thn.lon:
    True

saltsalt-sproxy之间最重要的区别之一是,前者知道可用的设备,这是由于Minions连接到Master的事实,因此salt已经有了目标列表。而salt-sproxy没有这个功能,因为它不需要Proxy Minions处于开启状态并连接到Master。因此,您需要提供设备列表或一个提供可用设备列表的Roster文件

以下是一些可用的目标选择:

  • -E--pcre:使用pcre正则表达式而不是shell globs来评估目标服务器。

  • -L--list:使用逗号或空格分隔的服务器列表而不是shell globs来评估目标服务器。

  • -G--grain:使用grain值而不是shell globs来识别目标,目标语法是grain键后跟glob表达式:"os:Arch*"

  • -P--grain-pcre:使用grain值而不是shell globs来识别目标,目标语法是grain键后跟pcre正则表达式:“os:Arch.*”。

  • -N--nodegroup:使用预定义的nodegroup之一而不是shell globs来评估目标,以识别目标列表。

  • -R--range:使用范围表达式而不是shell globs来评估目标,范围表达式看起来像%cluster。

要使用特定的Roster,请将Master配置文件中的proxy_roster选项配置为特定Roster,例如:

proxy_roster: ansible

以上配置下,salt-sproxy将尝试使用Ansible Roster模块来编译Roster文件(通常是/etc/salt/roster),该文件结构类似于常规的Ansible Inventory文件。此清单应仅提供设备列表。

罗列也可以动态指定,使用 -R--roster 选项,例如:salt-sproxy cr1.thn.lon test.ping --roster=flat。在这个例子中,我们将使用平面罗列模块来确定与特定目标匹配的设备列表。

当您没有在主配置文件或 CLI 中指定罗列时,可以使用 salt-sproxy 来指定一个或多个设备,使用 globlist 目标类型,例如:salt-sproxy cr1.thn.lon test.ping(glob)或 salt-sproxy -L cr1.thn.lon,cr2.thn.lon test.ping(分别针对设备列表 cr1.thn.lon 和 cr2.thn.lon)。

请注意,在任何情况下(无论是否有罗列),您都需要提供一个有效的 Minions 列表。

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

salt-sproxy-2023.8.0.tar.gz (111.9 kB 查看哈希值)

上传时间

构建分布

salt_sproxy-2023.8.0-py2.py3-none-any.whl (112.8 kB 查看哈希值)

上传于 Python 2 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面