Skip to content

feat: Add InnoDB Cluster topology #58

@renecannao

Description

@renecannao

Summary

Add --topology=innodb-cluster to deploy a full InnoDB Cluster stack: Group Replication + MySQL Shell + MySQL Router.

Motivation

InnoDB Cluster is the standard MySQL high-availability solution. dbdeployer already supports group replication as a topology, but doesn't orchestrate the full InnoDB Cluster stack (MySQL Shell for cluster management, MySQL Router for connection routing).

Requirements

  • New topology: dbdeployer deploy replication <version> --topology=innodb-cluster
  • MySQL Shell integration for cluster bootstrap (mysqlsh creates the cluster)
  • --mysqlsh-path flag to specify MySQL Shell binary location
  • Dedicated templates for InnoDB Cluster initialization (8.4+ compatible)
  • check_nodes_cluster monitoring script
  • Requires MySQL 8.4+ (InnoDB Cluster is mature from 8.0 but 8.4 is the LTS target)

Implementation Notes

  • New file: sandbox/innodb_cluster.go
  • New templates: sandbox/templates/cluster/
  • New topology type in globals/globals.go
  • MySQL Shell needs to be available (either in PATH or via --mysqlsh-path)
  • Should work with --with-proxysql (ProxySQL in front of InnoDB Cluster)

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