运行 oozie 协调器工作流的单个实例



我有一个每30分钟运行一次的oozie协调器。

但是我一次只想运行它的一个实例。

(比如说,如果工作流需要 30 多分钟才能完成,我不希望下一个计划的工作流在上一个工作流完成之前开始运行(

是否有我可以在协调器中设置的配置属性.xml以实现此目的?

您可以为cooridinator指定并发选项,即给定协调器可以同时工作多少个操作。您还可以指定执行策略和超时,以控制是否应跳过操作、何时重叠以及应跳过哪些操作。

   <coordinator-app name="[NAME]" frequency="[FREQUENCY]"
                    start="[DATETIME]" end="[DATETIME]" timezone="[TIMEZONE]"
                    xmlns="uri:oozie:coordinator:0.1">
      <controls>
        <timeout>[TIME_PERIOD]</timeout>
        <concurrency>[CONCURRENCY]</concurrency>
        <execution>[EXECUTION_STRATEGY]</execution>
      </controls>
      ...

但据我所知,这在 Oozie 3.3 版中效果不佳。您可以使用较新版本尝试。

延伸阅读:https://oozie.apache.org/docs/4.3.0/CoordinatorFunctionalSpec.html#a6.1.6._Coordinator_Action_Execution_Policies

最新更新