【问题标题】:Terraform Azure Stream Analytics Job - Start/StopTerraform Azure 流分析作业 - 开始/停止
【发布时间】:2020-04-24 17:26:18
【问题描述】:

我在 terraform 中定义了一个流分析作业,但如果对作业进行了更改并且它当前正在运行,terraform apply 将失败。有没有办法在 terraform 中检测作业的变化,如果有,请停止作业,然后在 apply 完成后重新启动作业?

我可以运行一个 powershell 脚本来停止并在 apply 上启动它,但如果可能的话,我希望避免在每次运行 apply 时停止/启动作业。我正在查看this 文章,但它看起来不适用于这种情况。

【问题讨论】:

    标签: terraform azure-stream-analytics azure-rm


    【解决方案1】:

    寻找同样的东西!我正在考虑使用一些额外的步骤来启动和停止流分析工作。为此,您需要在用于供应的系统上安装 az cli。当一切正常时,我会更新我的答案。

    更新:我找到了一种可行的方法,尽管我希望 Terraform 自己管理它。我使用 Github 操作,但这些步骤可以应用于任何环境:

    # Stop the job, so it can be updated.
    # Do not fail when job does not exist.
    az stream-analytics job stop \
      --resource-group <RESOURCE_GROUP> \
      --name <JOB_NAME> || true
    
    # Apply changes
    terraform apply
    
    # Start the job again
    az stream-analytics job start \
      --resource-group <RESOURCE_GROUP> \
      --name <JOB_NAME> \
      --output-start-mode LastOutputEventTime
    

    注意,不要忘记--output-start-mode LastOutputEventTime,这意味着作业将从停止时开始处理。否则,您正在更新的窗口中未处理的事件可能会丢失。

    【讨论】:

    • 如果 terraform apply 失败会怎样?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多