k8s集群中创建一个名为hello的service,就会生成一个同名的endpoint对象,ENDPOINTS就是service关联的pod的ip地址和端口, 即动态存储pod ip地址和端口对应关系的list,
Kubernetes在创建Service时,根据Service的标签选择器(Label Selector)来查找Pod,据此创建与Service同名的EndPoints对象。当Pod的地址发生变化时,EndPoints也随之变化。Service接收到请求时,就能通过EndPoints找到请求转发的目标地址
endpoint不可以用来固定podip,endpoint是随着pod的改变而改变,而非pod随着endpoint的改变而改变
手动创建 Endpoint
创建service: 略
创建一个 endpoint.yaml 文件,内容如下(注意替换ip为你容器访问ip(pod ip)):
1 | apiVersion: v1 |
然后应用 yaml:
1 | kubectl apply -f endpoint.yaml |
查看 endpoint:
1 | kubectl get endpoints |
然后访问 Service 的 ip:
1 | curl 10.99.142.242:6666 |
如果 Endpoint 需要跟踪多个 ip (多个 pod 或者容器或者应用),可以使用:
1 | - addresses: |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 小五的个人杂货铺!
