rundeck - Rundeck 多个作业执行,排队或丢弃?
问题描述
用于创建工作的 Rundeck 文档,
https://docs.rundeck.com/docs/manual/creating-jobs.html#creating-a-job
说:
多次执行 默认情况下,作业作为“单次执行”运行——一次只能运行一次。如果另一个单独的进程也在同一个节点上执行它们,则如果作业执行的步骤可能会受到干扰,这将很有用。
但是,在某些情况下,允许一个作业同时执行多次是很有用的。
您可以通过在如下所示的作业编辑器字段中将值切换为是来使作业允许“多次执行”:
我的问题:
对于默认的“单次执行”模式,后续同时运行的作业会发生什么情况?它们是被丢弃还是排队?
对于“多次执行”模式,超过“最大多次执行次数”的后续同时运行作业会发生什么?它们是被丢弃还是排队?
感谢您的任何指导。
解决方案
您可以使用这样的简单作业定义进行测试:
<joblist>
<job>
<defaultTab>nodes</defaultTab>
<description></description>
<executionEnabled>true</executionEnabled>
<id>72fe54d5-26da-4cd4-a487-0955bd3b7f67</id>
<loglevel>INFO</loglevel>
<name>HelloWorld</name>
<nodeFilterEditable>false</nodeFilterEditable>
<plugins />
<scheduleEnabled>true</scheduleEnabled>
<sequence keepgoing='false' strategy='node-first'>
<command>
<exec>sleep 15; echo "hello"</exec>
</command>
</sequence>
<uuid>72fe54d5-26da-4cd4-a487-0955bd3b7f67</uuid>
</job>
</joblist>
如果再次执行作业,您会看到此错误。
因此,如果您将作业修改为允许“两次多次执行”,您可以看到同一作业的 2 次执行正常工作:
<joblist>
<job>
<defaultTab>nodes</defaultTab>
<description></description>
<executionEnabled>true</executionEnabled>
<id>72fe54d5-26da-4cd4-a487-0955bd3b7f67</id>
<loglevel>INFO</loglevel>
<maxMultipleExecutions>2</maxMultipleExecutions>
<multipleExecutions>true</multipleExecutions>
<name>HelloWorld</name>
<nodeFilterEditable>false</nodeFilterEditable>
<plugins />
<scheduleEnabled>true</scheduleEnabled>
<sequence keepgoing='false' strategy='node-first'>
<command>
<exec>sleep 15; echo "hello"</exec>
</command>
</sequence>
<uuid>72fe54d5-26da-4cd4-a487-0955bd3b7f67</uuid>
</job>
</joblist>
但是,如果您执行 3 次相同的作业,您会看到与第一个场景相同的错误。
简短回答:如果超过默认值或定义值,则放弃执行。
推荐阅读
- docker - 前提:无法理解外部 ips 的工作原理
- node.js - 捕获错误 GRPC 14 UNAVAILABLE 服务不可用 NestJS
- ionic4 - 如何在 docdefination pdfmake 的内容中添加 ✓ 复选标记作为文本
- apache-zookeeper - 我们可以使用 zookeper 作为配置管理吗?
- javascript - 如何从底部显示Div的一些内容?
- python - 如何找到用于检测 aruco 标记的 Camera Matrix 和 Camera Distortion 文件?
- java - 如何通过 java swing 应用程序访问办公室本地服务器文件?
- mysql - 使用三个不同的txt文件创建mysql数据库
- swift - 在 Swift 中从 UIImage 生成缩略图
- firebase - 我无法在云调度程序页面上加载