Traefik 与 Consul¶
配置示例¶
可以按照下面的方式启用 Consul 提供者:
providers:
consul: {}[providers.consul]--providers.consul=true配置选项¶
| 字段 | 说明 | 默认值 | 必填 |
|---|---|---|---|
providers.providersThrottleDuration |
配置重新加载后,在处理新的配置刷新事件之前至少等待的时间。 如果这段时间内发生多个事件,只处理最近的一个,其他事件全部丢弃。 此选项不能按提供者分别设置,但节流算法会独立应用于每个提供者。 |
2s | 否 |
providers.consul.endpoints |
定义访问 Consul 的端点。 | "127.0.0.1:8500" | 是 |
providers.consul.rootKey |
定义配置的根键。 | "traefik" | 是 |
providers.consul.namespaces |
定义要查询的命名空间。更多信息请参阅此处。 | "" | 否 |
providers.consul.token |
定义连接 Consul 所用的令牌。 | "" | 否 |
providers.consul.tls |
定义与 Consul 安全连接时使用的 TLS 配置。 | - | 否 |
providers.consul.tls.ca |
定义与 Consul 安全连接时使用的证书颁发机构证书路径,默认使用系统证书包。 | - | 是 |
providers.consul.tls.cert |
定义与 Consul 安全连接时使用的公钥证书路径。使用此选项时,必须设置 key 选项。 |
- | 是 |
providers.consul.tls.key |
定义与 Consul 安全连接时使用的私钥路径。使用此选项时,必须设置 cert 选项。 |
- | 是 |
providers.consul.tls.insecureSkipVerify |
指示提供者在建立 TLS 连接时接受 Consul 提供的任何证书,而不考虑证书所涵盖的主机名。 | false | 否 |
namespaces¶
namespaces 选项定义要查询的命名空间。
使用 namespaces 选项时,发现的配置对象名称会添加如下后缀:
<resource-name>@consul-<namespace>
警告
namespaces 选项仅适用于 Consul Enterprise, 后者提供 Namespaces 功能。
警告
namespaces 选项与 namespace 选项只能选择其中一个进行定义。
providers:
consul:
namespaces:
- "ns1"
- "ns2"
# ...[providers.consul]
namespaces = ["ns1", "ns2"]
# ...--providers.consul.namespaces=ns1,ns2
# ...路由配置¶
请参阅路由中的专门章节。