之前在Hashicorp forum看到一个发问 Can a service advertise multiple ports? 所以记录下来。
User在一个task里使用2个port, port name
分别是http, metrics, 再向Consul注册一个service, service name
为awesome-api, 想要达到2个port注册相同的service,
一般来说会为注册不同的service name如:
...
service {
name = "awesome-api-http"
port = "http"
}
service {
name = "awesome-api-metrics"
port = "metrics"
}
...
User的写法如下:
...
network {
port "http" { host_network = "private" }
port "metrics" {
host_network = "private"
static = "9090"
}
//port "metrics" { host_network = "private" }
}
service {
name = "awesome-api"
port = "http"
//port = "metrics"
}
...
把注解拿掉会报错
Dimension network: reserved port collision metrics=9090 exhausted on [x] nodes
有网友回复可以使用tag
来达到这需求:
service {
name = "awesome-api"
port = "http"
tags = ["http"]
}
service {
name = "awesome-api"
port = "metrics"
tags = ["metrics"]
}
访问的endpoint会变成 http.awesome-api.service.consul
与 metrics.awesome-api.service.consul
这样即可达成一个service多个port的需求
<<: 从细针切片资料集 建模、预测肿瘤Sklearn Breast Tumor Prediction
>>: [Day 5] Course 1_Foundation - 资料分析工具及职涯探索
之前写自动化程序的时候,有些算法or通讯(串口或者Tcp)都需要时间,这个时候,往往可以去做其他的事...
前言 现在到了练习NumPy的最後一天,现在要开始跟资料分析的流程接轨 所以我决定从网路上的开源资...
昨天说明了为什麽会想使用Elo Rating 作为战力估计的原因 因为可以把作答者的作答结果 视为作...
-不同程度的变化(来源:plutora) 变更管理至关重要,但也有开销。一些例行变更可能会被预先批...
AJAX(上) ...