Hi team, GitHub - percona/percona-server-mysql-operator: Percona Operator for MySQL, do we have any limitation in supporting ProxySQL proxy?
I see for PXC, we do have HAProxy and ProxySQL, but for MySQL operator we only have MySQL router and HAProxy, I wanted to understand the reasons for this.
@matthewb , @daniil.bazhenov Any pointers/references here please?
ProxySQL should be supported:
@matthewb
Sorry, I’ve seen the custom resource yaml percona-server-mysql-operator/deploy/cr.yaml at e6fa86c47ed3599f64cad11b438c5aebab43a681 · percona/percona-server-mysql-operator · GitHub
and even in the documentation Design and architecture - Percona Operator for MySQL
HAProxy - a load balancing and proxy service compatible with both asynchronous replication and group replication between MySQL instances,
MySQL Router - a proxy solution which can be used instead of HAProxy when group replication between MySQL instances is turned on,
Looks like it’s not added into CRD
Yes, as of now, Percona operator for MySQL-based (Tech Preview), only supports the HaProxy and MySQL Router. Please note that the MySQL-based operator is in tech preview, and it is not recommended for production use yet.
If you need it for production use, then use the Percona Operator for MySQL based on PXC, which supports HaProxy and ProxySQL.
@Abhinav_Gupta Firstly, Thanks for the reply
We are already using ProxySQL and MySQL as a single instance, for HA, I was looking into Group replication in single primary mode so that it works same as single instance but with High Availability which is also mentioned in https://www.mysql.com/why-mysql/white-papers/mysql-reference-architectures-for-high-availability/
Since PXC uses Galera replication, I’m not fully sure whether the transition is worth it.
May be it’s simpler to explore to run it with HAProxy
But my main query is that, is there any limitation in running Group replication with ProxySQL and hence percona doesn’t support it or just that it’s not implemented yet.
Also do we have timeline for MySQL Percona operator to be in 1.0 for Production use?
This would be the same with PXC.
It’s not really a “transition” as PXC is a drop-in replacement. Replace your single instance with PXC, then add node 2, and node 3. Nodes will self-initialize (unlike Group Replication).
This, yes. HAProxy is far simpler to implement within the operator due to its limited functionality being only a layer 4 port router. Implementing ProxySQL, as a layer 7 protocol router, takes a bit more to get working correctly. As stated, we full support ProxySQL within our PXC Operator so we know it works. It’s just a matter of time, and community desire, to implement ProxySQL within our MySQL Operator.
The best HA solution for MySQL is PXC + ProxySQL. ProxySQL is PXC-aware and takes actions based on any PXC changes.
Thank you @matthewb for the response, I’ll try PXC and get back in case of issues