美文网首页
Kubernetes 访问集群外部服务

Kubernetes 访问集群外部服务

作者: 香菜香菜我是折耳根 | 来源:发表于2020-02-27 20:59 被阅读0次

使用 Endpoints

什么是 Endpoints ?

简单来说,Endpoints 表示一个 Service 对应的所有 Pod 副本的访问地址,而 Endpoints Controller 就是负责生成和维护所有 Endpoints 对象的控制器。它负责监听 Service 、和对应的 Pod 副本的变化,如果检测到 Service 被删除,则删除和该 Service 同名的 Endpoints 对象。如果检测到新的 Service 被创建或者修改则根据该 Service 信息获得相关的 Pod 列表,然后创建或者更新 Service 对应的 Endpoints 对象。

endpoints.yaml :

kind: Endpoints
apiVersion: v1
metadata:
  name: mysql-dev
  namespace: development
subsets:
  - addresses:
      - ip: 192.168.31.11
    ports:
      - port: 3306

service.yaml :

apiVersion: v1
kind: Service
metadata:
  name: mysql-dev
  namespace: development
spec:
  ports:
    - port: 3306
      targetPort: 3306
      protocol: TCP
kubectl apply -f endpoints.yaml
kubectl apply -f service.yaml

如果需要查看该 Service 的详情,包括 Endpoints :

kubectl describe svc mysql-dev -n development

那么在应用的配置文件里,可以直接将 IP 地址或域名替换为 mysql-dev

相关文章

网友评论

      本文标题:Kubernetes 访问集群外部服务

      本文链接:https://www.haomeiwen.com/subject/twcwchtx.html