首页 > 解决方案 > 带有多个手表的领事配置

问题描述

我是 Hasicorp 领事的新手。我想将要监视的第二个服务添加到 Hashicorp Consul (v.1.7.1) 手表配置文件中。应该如何正确完成?

我尝试了几种变体,但它们都不起作用。在这种情况下,它为 service-2 工作,但忽略 service-1。

{
  "watches": [{
      "type": "service",
      "service": "service-1",
            "tag": [ "tag1","tag2","tag3"],
            "args": ["./script.sh"],
      "type": "service",
      "service": "service-2",
            "tag": [ "tag1","tag2","tag3"],
            "args": ["./script.sh"]
  }]
}

标签: jsonjinja2watchconsulhashicorp

解决方案


Watches是一个手表规格列表,因此每个单独的手表都需要是数组中的一个单独的 dict/hash 项。

以下配置片段应成功触发每个指定服务的监视。

{
  "watches": [
    {
      "type": "service",
      "service": "service-1",
      "tag": [
        "tag1",
        "tag2",
        "tag3"
      ],
      "args": [
        "./script.sh"
      ]
    },
    {
      "type": "service",
      "service": "service-2",
      "tag": [
        "tag1",
        "tag2",
        "tag3"
      ],
      "args": [
        "./script.sh"
      ]
    }
  ]
}

推荐阅读