13.22. 执行远程作业


您可以针对一个或多个主机执行基于作业模板的作业。

注意

Ansible 作业在多个主机上运行的批处理,因此您无法取消在特定主机上运行的作业。只有在 Ansible Playbook 在批处理中的所有主机上运行后,作业才会完成。

要使用 CLI 而不是 Satellite Web UI,请参阅 CLI 过程

流程

  1. 在 Satellite Web UI 中,进入到 Monitor > Jobs,再点 Run job
  2. 选择要使用的 Job categoryJob template,然后单击 Next
  3. 选择您要在其上运行作业的主机。如果您没有选择任何主机,则该作业将在当前上下文中看到的所有主机上运行。

    注意

    如果要选择主机组及其所有子组,则选择主机组不足以选择主机组,因为该作业将直接在该组中的主机上运行,而不是在子组中的主机上运行。反之,您必须选择主机组及其所有子组,或使用此搜索查询:

    hostgroup_fullname ~ "My_Host_Group*"

    My_Host_Group 替换为顶级主机组的名称。

  4. 如果需要,为作业模板提供输入。不同的模板有不同的输入,一些模板没有任何输入。输入所有必要的输入后,点 Next
  5. 可选: 要为作业配置高级设置,请填写 Advanced 字段。要了解更多有关高级设置的信息,请参阅 第 13.23 节 “作业向导中的高级设置”
  6. 点击 Next
  7. 计划作业的时间。

    • 要立即执行作业,请保留预选的 Immediate 执行
    • 要在以后执行作业,请选择 future execution
    • 要定期执行作业,请选择 Recurring execution
  8. 可选:如果您选择将来或重复执行,请选择 Query type,否则点 Next

    • 静态查询 意味着作业在您提供的主机的确切列表中执行。
    • 动态查询 意味着仅在执行作业前评估主机列表。如果您根据某些过滤器输入主机列表,则结果可能与您第一次使用该过滤器时不同。

    选择查询类型后,点 Next

  9. 可选:如果您选择将来或重复执行,请提供额外的详情:

    • 对于将来的执行请在日期和时间输入开始。您还可以选择 Starts before and time。如果作业在这段时间之前无法启动,它将被取消。
    • 对于 Recurring execution,请选择开始日期和时间、频率以及结束重复作业的条件。您可以选择不间断在一定时间结束、以一定时间结束,或者在指定数量的重复后结束。您还可以添加 Purpose - 用于跟踪作业的特殊标签。一次只能有一个具有给定目的的活动作业。

    输入所需信息后,点 Next

  10. 查看作业详情。您可以选择返回作业向导的任何部分并编辑信息。
  11. 单击 Submit 以调度要执行的作业。

CLI 过程

  1. 在 Satellite 中输入以下命令:

    # hammer settings set \
    --name=remote_execution_global_proxy \
    --value=false
  2. 查找您要使用的作业模板 ID:

    # hammer job-template list
  3. 显示模板详情以查看模板所需的参数:

    # hammer job-template info --id My_Template_ID
  4. 使用自定义参数执行远程作业:

    # hammer job-invocation create \
    --inputs My_Key_1="My_Value_1",My_Key_2="My_Value_2",... \
    --job-template "My_Template_Name" \
    --search-query "My_Search_Query"

    My_Search_Query 替换为定义主机的过滤器表达式,如 "name ~ My_Pattern"

其他资源

  • 有关使用 Hammer CLI 创建、监控或取消远程作业的更多信息,请输入 hammer job-template --helphammer job-invocation --help
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.