操作
您可以通过多种不同的方式管理对客户端执行的操作。
对于 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,也可以使用通配符指定一系列客户端作为目标。
- 
单击 查找目标 查看指定为目标的客户端,并确认使用了正确的细节。 
- 
单击 运行命令 向目标客户端发出命令。