下面是Endpoint资源的配置文件
apiVersion: v1
kind: Endpoints
metadata:
name: my-service
subsets:
- addresses:
- ip: 52.201.109.155
ports:
- port: 80
其中subsets的结构,看起来不太符合常规习惯,我们来转换成json格式看一下
[
{
"addresses": [
{
"ip": "52.201.109.155"
}
],
"ports": [
{
"port": 80,
"protocol": "TCP"
}
]
}
]
这下就看明白了,address是一个数组,ports也是一个数组,两个配置项是分别定义的。这样会带来一个限制,就是所有的IP地址必须提供同样的端口服务,不然的话,service负载时就会出错。
另外,比较好玩了是,microk8s自己的服务也使用了这个功能,如下
# kubectl get --namespace default endpoints kubernetes
NAME ENDPOINTS AGE
kubernetes 172.21.102.125:16443 6h54m
网友评论