【问题标题】:Configure consul for dynamic health check services为动态健康检查服务配置 consul
【发布时间】:2017-10-19 17:29:29
【问题描述】:

我有一个带有 2 个主机的 consul 堆栈(用于测试)。一台主机仅在引导模式下运行 consul,另一台使用 Registrator 运行客户端模式以自动注册服务(均在 docker 上运行)。现在,如果我启动一个应用程序(例如端口 8080)容器,Registrator 会检测然后将其注册到 consul,但它没有我想要的 http-check。我发现 Registrator 有自动注册健康检查的选项是添加 SERVICE_8080_CHECK_HTTP: '/' 到应用程序容器,它工作得很好。此时我有一个问题,如果我docker stop 应用程序容器,则此应用程序没有运行状况检查,因此我无法获得状态来写一些东西以发出警报或替换失败的应用程序。所以问题是,我怎样才能获得动态健康检查服务但仍然获得状态passing or failed or warning or critical 谢谢

【问题讨论】:

    标签: python consul


    【解决方案1】:

    当您停止容器时,Registrator 会取消注册服务。如果您有该服务的多个实例,那应该不是问题。

    如果这是您的用例,请不要使用 Registrator 进行服务注册,您可以使用 Consul 的 HTTP API 来注册服务或包含代理的服务定义文件。

    无论如何,你真的不应该运行单个 Consul 服务器 - https://www.consul.io/intro/index.html

    【讨论】:

      猜你喜欢
      • 2017-05-27
      • 2019-08-05
      • 1970-01-01
      • 2022-12-22
      • 1970-01-01
      • 2018-01-16
      • 1970-01-01
      • 2016-10-13
      • 1970-01-01
      相关资源
      最近更新 更多