The endpoints in kubernetes are the mechanism that directly interact and implement the Kubernetes Service
The Endpoints are underlying mechanism which are created in the background and enable us to talk to the kubernetes Services.
As we know that by creating a Kubernetes service we automatically generate the FQDN with the help of core-dns services
There was a requirement for me to setup the specific endpoint and create a service to convert a outside IP into the kubernetes FQDN [svc-name.namespace.cluster.local]
I managed to work around it by creating an endpoint of my external IP which was running mySQL.
[root@master01 ~]# cat Mysql-ep.yaml --- kind: Endpoints apiVersion: v1 metadata: name: mysql-svc namespace: actoneye subsets: - addresses: - ip: 172.22.110.130 ports: - port: 3306
Lets take a look at Kubernetes Service yaml file.
[root@master01 ~]# cat Mysql-svc.yaml
--- kind: Service apiVersion: v1 metadata: name: mysql-svc spec: ports: - protocol: TCP port: 3306 targetPort: 3306
The mysql FQDN mysq-svc.dev.cluster.local
was used in my application code for my cluster which the mysql resource was outside the kubernetes cluster.
Please try this out and let me know if you had any similar experiences to share.