Details
-
Task
-
Status: Open (View Workflow)
-
Minor
-
Resolution: Unresolved
-
None
-
None
-
None
Description
Typical load balancing solutions check status with a TCP or HTTP connection. For galera, the presence of a TCP supported connection isn't sufficient.
What would be ideal is if there was a small single threaded plugin that talked enough basic HTTP to convince a load balancer if galera is SYNCED.
Access control can be done via firewall though like mysql a bind-address might be a viable configuration option.
step 1: Galera URLs
GET /galera/sync - returns 200 if in sync - 503 Sevice unavabilable
GET /galera/primary - returns 200 if in sync - 503 Sevice unavabilable
enhancement 2: RESTFUL status and system variables retrieval
retrieve global status/system variable value
GET /status/max_used_connections - returns 200 response with status variable value
GET /system/max_connections - returns 200 response with variable value
enhancement 3: collection info
GET /status - returns all global status
GET /systems - returns all global variables
enhancement 4: RESTFUL system variable change
plugin variable = auth_token=xxxxxxsfsaf.....
PUT /system/max_connections?auth_token=... - sets the value of a variable,
enhancement 5: extend to other plugs
Maybe other plugins could hook into their own base URL.