操作
您可以通过多种不同的方式管理对客户端执行的操作。
对于 Salt 客户端,您可以安排自动重复性操作,以按照指定的日程安排将 Highstate 或任意一组自定义状态应用于客户端。您可以将重复性操作应用于单个客户端、系统组中的所有客户端或整个组织。
在 Salt 和传统客户端上,都可以通过创建操作链来设置要按特定顺序执行的操作。可以提前创建和编辑操作链,并将其安排为在适当的时间运行。
您还可以在一个或多个 Salt 客户端上执行远程命令。使用远程命令可以向单个 Salt 客户端或者与搜索词匹配的所有客户端发出命令。
1. 重复性操作
可以对单个 Salt 客户端、系统组、组织中的所有客户端应用重复性操作。
SUSE Manager 目前支持将以下操作类型作为重复性操作:
-
Highstate
:执行 Highstate。 -
自定义状态
:执行一组自定义状态。自定义状态可以是 SUSE Manager 提供的内部状态,也可以是用户创建的配置通道。
有关配置通道的详细信息,请参见 配置管理。
-
要将重复性操作应用于单个客户端,请导航到
系统
,单击要为其配置日程安排的客户端,然后导航到重复性操作
选项卡。 -
要将重复性操作应用于系统组,请导航到
,选择要为其配置日程安排的组,然后导航到重复性操作
选项卡。 -
单击 创建。
-
从
操作类型
下拉列表中选择操作类型。 -
键入新日程安排的名称。
-
选择重复性操作的频率:
-
每小时:
键入每小时内过去的分钟数。 例如,如果指定15
,则在每小时过去 15 分钟后运行操作。 -
每日:
选择每日的时间。 例如,如果指定01:00
,则在 SUSE Manager Server 所在时区的每日 01:00 运行操作。 -
每周:
选择星期日期和该日期中的时间,以便在每周的指定时间执行操作。 -
每月:
选择月份日期和该日期中的时间,以便在每月的指定时间执行操作。 -
自定义 Quartz 格式:
要查看更详细的选项,请输入自定义 Quartz 字符串。 例如,要在每个月的每个星期六 02:15 运行重复性操作,请输入:0 15 2 ? * 7
-
-
可选:将
测试模式
开关切换为打开,以在测试模式下运行日程安排。 -
对于
自定义状态
类型的操作,请从可用状态列表中选择状态,然后单击 保存更改。此操作只会保存当前选择的状态,而不会保存日程安排。 -
在下一个窗格中,拖放所选状态使其按执行顺序排列,然后单击 确认。
-
最后,单击 创建日程安排 保存设置,并查看现有日程安排的完整列表。
组织管理员可为组织中的所有客户端设置和编辑重复性操作。导航到
,即可看到适用于整个组织的所有重复性操作。SUSE Manager 管理员可为所有组织中的所有客户端设置和编辑重复性操作。导航到
,选择要管理的组织,然后导航到 选项卡。
重复性操作只可用于 Salt 客户端。将忽略组或组织中的传统客户端。 |
2. 操作链
如果您需要对客户端执行多个有序操作,可以创建一个操作链以确保遵循该顺序。
默认情况下,大多数客户端会在发出命令后立即执行操作。在某些情况下,操作需要很长时间,这可能意味着之后发出的操作会失败。例如,如果您指示客户端重引导,然后发出第二个命令,则第二个操作可能会失败,因为重引导仍在进行。为确保操作按正确的顺序进行,请使用操作链。
对于事务更新系统,操作链会在单个快照内执行,直到进行重引导操作。这可能会产生某些限制。 有关详细信息,请参见 注册 SLE Micro 客户端。 |
可以在传统客户端和 Salt 客户端上使用操作链。操作链可以包含任意数量、采用任意顺序的以下操作:
-
在 SUSE Manager Web UI 中,导航到您要在操作链中执行的第一个操作。例如,导航到客户端的
系统细节
,然后单击 安排系统重引导。 -
选中
添加到
字段,然后选择要将操作添加到的操作链:-
如果这是您的第一个操作链,请选择
新建操作链
。 -
如果该操作链已存在,请从列表中选择它。
-
如果您已有操作链,但想要创建一个新操作链,请键入新操作链的名称以创建该操作链。
-
-
确认操作。 该操作不会立即执行,而是创建新的操作链,并在屏幕顶部显示一个确认此行为的蓝色条。
-
继续将操作添加到操作链,方法是选中
添加到
字段并选择要将操作添加到的操作链的名称。 -
添加完操作后,导航到
并从列表中选择操作链。 -
通过将操作拖放到正确的位置来重新排列操作顺序。 单击蓝色加号查看要对其执行操作的客户端。单击 保存 以保存更改。
-
安排操作链的运行时间,然后单击 保存并安排。 如果您在不单击 保存 或 保存并安排 的情况下离开页面,将丢弃所有未保存的更改。
如果操作链中的某个操作失败,操作链将会停止,且不再执行其他操作。 |
可以通过导航到
来查看操作链中已安排的操作。3. 远程命令
可以将客户端配置为远程运行命令。这样,在无法直接访问客户端的情况下,也可以向客户端发出脚本或单个命令。
此功能在 Salt 客户端上已自动启用,您无需执行任何其他配置。对于传统客户端,如果您已使用引导脚本注册客户端并已启用远程命令,则会启用该功能。您也可以使用以下过程手动启用该功能。
在开始之前,请确保您的客户端已订阅适用于其中所安装操作系统的工具子通道。有关订阅软件通道的详细信息,请参见 软件通道。
对于事务更新系统,需考虑到远程命令会在单个快照内运行。这可能会产生某些限制。 有关详细信息,请参见 注册 SLE Micro 客户端。 |
-
在客户端上的命令提示符下,使用软件包管理器安装
rhncfg
、rhncfg-client
和rhncfg-actions
软件包(如果尚未安装)。 例如:zypper in rhncfg rhncfg-client rhncfg-actions
-
在客户端上的命令提示符下,以 root 身份在本地配置目录中创建一个路径:
mkdir -p /etc/sysconfig/rhn/allowed-actions/script
-
在新目录中创建名为
run
的空文件。 此文件授予 SUSE Manager Server 运行远程命令的权限:touch /etc/sysconfig/rhn/allowed-actions/script/run
Salt 客户端是从其 |
从 |
-
在 SUSE Manager Web UI 中,导航到
系统
,单击要在其上运行远程命令的客户端,然后导航到 选项卡。 -
在
作为用户运行
字段中,键入要在客户端上运行命令的用户的用户 ID (UID)。 或者,可以在作为组运行
字段中使用组 ID (GID) 指定一个组来运行命令。 -
可选:在
超时
字段中,键入命令的超时期限,以秒为单位。 如果命令在此期限内未能执行,则它不会继续运行。 -
在
命令标签
字段中,键入命令的名称。 -
在
脚本
字段中,键入要执行的命令或脚本。 -
选择执行命令的日期和时间,或将远程命令添加到操作链。
-
单击 日程安排 以安排远程命令。
有关操作链的详细信息,请参见 Action Chains。
-
导航到
。 -
在第一个字段中的
@
符号之前,键入您要发出的命令。 -
在第二个字段中的
@
符号之后,键入您要在其上发出命令的客户端。 可以键入单个客户端的受控端 ID
,也可以使用通配符指定一系列客户端作为目标。 -
单击 查找目标 查看指定为目标的客户端,并确认使用了正确的细节。
-
单击 运行命令 向目标客户端发出命令。