0

我在与“localhost”不同的主机上部署了一个领事代理,但领事继续检查 127.0.0.1 上的运行状况。

服务的配置和它的边车:

service {
  name = "counting"
  id = "counting-1"
  port = 9005
  address = "169.254.1.1"

  connect {
  sidecar_service {
      proxy {
        config {
        bind_address = "169.254.1.1"
        bind_port = 21002
        tcp_check_address = "169.254.1.1"
        local_service_address = "localhost:9005"
        }
      }
  }
  }
  check {
    id       = "counting-check"
    http     = "http://169.254.1.1:9005/health"
    method   = "GET"
    interval = "10s"
    timeout  = "1s"
  }
}

使用以下命令部署代理:

consul connect proxy -sidecar-for counting-1 > counting-proxy.log

Consul UI 的健康检查消息: 在此处输入图像描述

如何将健康检查更改为 169.254.1.1?

4

1 回答 1

0

首先,我建议使用 Envoy 代理 ( consul connect envoy) 而不是内置代理 ( consul connect proxy),因为不建议将后者用于生产用途。

至于更改健康检查地址,您可以通过设置proxy.local_service_address. 为本地应用程序配置健康检查时使用此地址。

有关此问题的相关讨论,请参阅https://github.com/hashicorp/consul/issues/11008#issuecomment-929832280

于 2022-01-02T20:50:47.397 回答