【问题标题】:Implementing Consul healthcheck in Docker environment在 Docker 环境中实现 Consul 健康检查
【发布时间】:2019-09-24 02:43:39
【问题描述】:

我是 Consul/Registrator 和 Docker 的新手。我对在 Docker 环境中使用 Consul 健康检查感到困惑。它在以下链接中进行了描述,在 Docker + Interval 部分中:https://www.consul.io/docs/agent/checks.html

以下是链接中描述的 Consul 健康检查定义示例:

{
  "check": {
    "id": "mem-util",
    "name": "Memory utilization",
    "docker_container_id": "f972c95ebf0e",
    "shell": "/bin/bash",
    "args": ["/usr/local/bin/check_mem.py"],
    "interval": "10s"
  }
}

运行状况检查脚本是在 docker 映像内还是在其外(在示例中:check_mem.py)?我们是否应该知道容器的ID并在字段中手动插入:docker_container_id? (这不是很有效的方法)

我一直在谷歌上搜索,我能找到的唯一答案是在以下讨论的结尾: https://github.com/hashicorp/consul/issues/3182

但此代码是一些“解决方法” - 它使用 docker 'primal' healthcheck 和 registrator 变量 - ENV SERVICE_CHECK_SCRIPT。它不使用领事健康检查脚本。

谁能帮助我了解 consul healthcheck 在 docker 环境中的工作原理。

【问题讨论】:

    标签: docker consul registrator


    【解决方案1】:

    docker 健康检查在 docker 容器中运行。

    你的例子相当于docker exec f972c95ebf0e /bin/bash /usr/local/bin/check_mem.py

    【讨论】:

      猜你喜欢
      • 2016-10-13
      • 1970-01-01
      • 1970-01-01
      • 2017-05-27
      • 2021-04-20
      • 1970-01-01
      • 2021-10-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多