Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Two feature requests: pause status and replicated custom settings #4391

Open
kuzmik opened this issue Nov 28, 2023 · 0 comments
Open

Two feature requests: pause status and replicated custom settings #4391

kuzmik opened this issue Nov 28, 2023 · 0 comments

Comments

@kuzmik
Copy link

kuzmik commented Nov 28, 2023

Hello!

I am working on a project that will run an agent in a sidecar in a ProxySQL pod in our kubernetes cluster, and had a couple small feature requests.

PAUSE status

We use PROXYSQL PAUSE (among some other commands) to gracefully stop our pods and drain traffic from them, and it would be super helpful if the status of this was returned via a sql command in the admin interface. Something like SELECT paused FROM proxysql_servers (kind of just making stuff up here, I'd leave it to the experts to determine the best course here). It'd help greatly with our health probes if we could expose that to the agent.

I could attempt to connect to ProxySQL on port 6603 as part of the probe, but we have so many backends that I'd have to cycle through them all to ensure that the system is paused (as opposed to a backend being shunned) and it seems like a hacky solution.

Replicated custom settings

We are using ProxySQL in clustering mode, with 3 core pods and 18+ satellite pods; the core pods push configs out to the satellite pods, and the satellite pods do not push changes back up to the core pods.

I was thinking it'd be handy to have some kind of custom variables in the database that get propagated to the satellite pods; I attempted to set admin-custom_flag in the global variables table on a core pod, but when I ran LOAD ADMIN VARIABLES TO RUNTIME it did not get sent out to the cluster.

I know that's a bit outside of the forte of ProxySQL, but it seems like custom variables that ProxySQL completely ignores but other things could use should be fairly low impact from a risk standpoint. And it'd prevent me from having to setup a consul cluster or something like it.

renecannao added a commit that referenced this issue Jan 18, 2024
New variable mysql_listener_paused added to table stats_mysql_global .
The variable is a boolean:
- true : listener is paused because PROXYSQL PAUSE was executed
- false : listener is not paused

The variable is also reported by Prometheus exporter as proxysql_mysql_listener_paused

Related to #4391
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant