k8s ep访问外部服务

今天研究下了中心k8s集群,mysql 数据不在集群中, 当时好奇集群内部是如何访问到集群外部db的呢?查了下资料,研究了下yaml配置,了解了ep(endpoint)
文章参考: https://blog.csdn.net/cuipengchong/article/details/71698764

  • k8s访问集群外独立的服务最好的方式是采用Endpoint方式,以mysql服务为例:

1. 创建mysql service

apiVersion: v1
kind: Service
metadata:
  name: mysql-production
spec:
  ports:
    - port: 3306

2.创建mysql-endpoints.yaml

kind: Endpoints
apiVersion: v1
metadata:
  name: mysql-production
  namespace: default
subsets:
  - addresses:
      - ip: 192.168.1.25
    ports:
      - port: 3306


具体业务代码内部可能用的是host, 那host怎么与这个对应的呢,可以使用coredns,具体使用可以自行查手册