Closed jriguera closed 7 years ago
We have created an issue in Pivotal Tracker to manage this:
https://www.pivotaltracker.com/story/show/149318831
The labels on this github issue will be updated when the story is started.
Hi @jriguera,
We strongly recommend that you always include Switchboard proxies when deploying cf-mysql. The reasoning behind this is that much of cf-mysql is designed to offer an HA experience, not a scale-out opportunity. That's because when apps are talking to more than one instance of Galera at a time, there's a considerable amount of knowledge necessary at the App level that we don't recommend for the typical MySQL consumer.
Switchboard has quite a bit of custom logic built-in to protect the unaware MySQL user from Galera's edge-cases (such as not distributing locks).
As such, because that's the primary focus of this product, I don't think we're likely to implement this request. I'm going to close this as wontfix
, but as always you can feel free to re-open to continue the conversation.
-- Marco Nicosia Product Manager Pivotal Software, Inc.
Hi @menicosia
Thank you for your reply. I think now the topic turns to focus on the Switchboard proxy, tbh, I am still not convinced and I would like to clarify some points regarding HA. I do not mind keeping this issue closed because the answer is clear. Should I open a new topic regarding some questions about HA and Switchboard or continue here?
Thanks!
Hello, I've tried to explain a bit why we're using Switchboard in switchboard #10.
Primarily, we require switchboard because the cf-mysql-release
is intended to offer a "single node" MySQL experience with very fast failover characteristics. We focus on that, rather than scale-out, so that the application developer know as little as possible about the Galera implementation underneath. Ideally, they're just writing to a "standard MySQL server" that coincidentally is very durable to IaaS failures.
Marco Nicosia Product Manager Pivotal Software, Inc.
Hi @menicosia,
Thanks for the link, you have an interesting thread there, I will read it and continue (if needed) my questions there. Thank you!
I am trying to deploy a MySQL cluster without using proxy vms. The idea is move all the logic to our BigIP F5 load balancer in order to simplify the infrastructure and have only one LB layer. The F5 LB uses the same health checks endpoints as the switchboard proxy and it has similar properties, all this setup is automated.
I was able to deploy a cluster of 2 Mariadb instances and 1 Arbitrator and it is running fine. I have defined the properties
cf_mysql.smoke_tests.standalone_tests_only: true
andcf_mysql.host: 10.230.31.227
(which is the VIP of the F5 loadbalancer) but the smoke-tests errand fails rendering the proxy links here https://github.com/cloudfoundry/cf-mysql-release/blob/develop/jobs/smoke-tests/templates/config.yml.erb#L13Is it possible to define a
if_link('proxy')
conditional block to be able to run the smoke tests in standalone mode? I think it makes sense avoiding this dependency with the proxy, specially when the propertycf_mysql.host
is defined.Thanks!