Kubernetes allows you to create a service without selector, and cluster will not create related endpoint for this service, this feature is usually used to proxy a legacy component or an outside component.
-
Create a service without selector
apiVersion: v1 kind: Service metadata: name: my-service spec: ports: - protocol: TCP port: 1443 targetPort: <YOUR_MYSQL_PORT>
-
Create a relative Endpoint object
apiVersion: v1 kind: Endpoints metadata: name: my-service subsets: - addresses: - ip: <YOUR_MYSQL_ADDR> ports: - port: <YOUR_MYSQL_PORT>
-
Get service IP
$ kubectl get svc my-service NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE my-service <SERVICE_IP> <none> 1443/TCP 18m
-
Access your MYSQL from service
<SERVICE_IP>:1443
ormy-service:1443