Skip to content

Phase 3.2: ProxySQL-aware topology management #31

Description

@renecannao

Phase 3.2 — ProxySQL-Aware Topology

Goal: Orchestrator queries ProxySQL for hostgroup configuration and can update ProxySQL hostgroups directly during topology changes.

Sub-tasks

  • 3.2.1 Query ProxySQL for current hostgroup→server mappings (runtime_mysql_servers)
  • 3.2.2 Correlate ProxySQL hostgroups with orchestrator's topology view — map discovered instances to their ProxySQL roles
  • 3.2.3 Display ProxySQL hostgroup info in web UI topology view
  • 3.2.4 During failover, update ProxySQL hostgroups directly (promote new master to writer hostgroup, demote old master)
  • 3.2.5 Add ProxySQL server status to orchestrator's instance metadata
  • 3.2.6 HTTP API endpoints for ProxySQL topology queries (/api/proxysql/hostgroups, /api/proxysql/servers)
  • 3.2.7 Optional: read ProxySQL query routing stats (stats_mysql_query_digest) to inform failover decisions (e.g., prefer replica with lowest lag)
  • 3.2.8 Handle ProxySQL Cluster topology (multiple ProxySQL nodes sharing config)
  • 3.2.9 Integration tests with ProxySQL docker container
  • 3.2.10 Documentation: architecture diagram, API reference, configuration

Design considerations

  • Extends the ProxySQL client library from 3.1
  • ProxySQL topology info is supplementary — orchestrator's MySQL topology remains authoritative
  • Must handle ProxySQL being unreachable gracefully (log warning, continue with MySQL-only view)
  • Consider read/write split awareness (writer hostgroup vs reader hostgroup)

Dependencies

Part of Phase 3 — Feature Direction.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions