I start experiencing with statefulsets, and I'm following this link on kubernetes website
http://kubernetes.io/docs/tutorials/stateful-application/run-replicated-stateful-application/
How can I connect my java application to the mysql database statefulset (they are all in same kubernetes cluster node and namesapce)? what service should I connect to ? which address should I use ? I tried mysql-read.default.svc.cluster.local:3306 didn't work !!!
This question was cross-posted to the Vitess mailing list and was solved there. It turns out this happened because the user modified the tutorial setup to add a password for the root
user. As a result, readiness probes that expected password-less login to work were failing, and the mysql-read
service was left with no valid endpoints.
You would need to alter the services as below,
apiVersion: v1 kind: Service metadata: name: mysql labels: app: mysql spec: ports: - name: mysql port: 3306 selector: app: mysql
apiVersion: v1 kind: Service metadata: name: mysql-read labels: app: mysql spec: ports: - name: mysql port: 3306 selector: app: mysql type: LoadBalancer
Hence, you will be having the external ip to connect your mysql master /slave
in command prompt : mysql -uroot -h30.12.11.21 -P3306 (replace host with your loadbalancer ip)