Skip to content

[Sandbox] CNMSQL #498

Description

@yyewolf

Project summary

CNMSQL is a cloud-native database operator that provides Kubernetes-native lifecycle management, high availability, backup, disaster recovery, and day-2 operations for MySQL databases.

Project description

CNMSQL is an open source Kubernetes operator focused on operating MySQL databases whose architecture and operational philosophy are heavily inspired by CloudNativePG. Rather than simply automating deployment, CNMSQL aims to manage the full lifecycle of database clusters, including provisioning, replication, automated failover, point-in-time recovery, backups, upgrades, maintenance workflows, and observability.

The project is designed around Kubernetes Operator Pattern, declarative reconciliation, and extensibility, allowing infrastructure providers and platform teams to expose managed database services while remaining infrastructure-agnostic. CNMSQL integrates with common cloud native technologies such as CSI storage, Prometheus, S3 object storage, GitOps workflows, and Kubernetes-native security mechanisms.

While Kubernetes has a mature ecosystem of operators for PostgreSQL or even MariaDB, there is currently no equivalent MySQL operator that closely follows the cloud-native design philosophy pioneered by CloudNativePG.

The long-term vision is to provide a vendor-neutral foundation for running production-grade MySQL databases in Kubernetes while remaining highly extensible for managed database providers and platform operators.

This project is specifically for MySQL (currently we provide Percona's fork of MySQL) and not MariaDB.

Org repo URL (provide if all repos under the org are in scope of the application)

https://github.com/cnmsql

Project repo URL in scope of application

https://github.com/cnmsql/cnmsql

Additional repos in scope of the application

No response

Website URL

https://cnmsql.co/

Roadmap

CNMSQL (view)

Roadmap context

The main goal is to reach GA, though I won't feel confident to release this without any adoption / third parties involved in the project. There is no set date for GA but my hope is to reach it by September.

Currently, I'm working towards reaching a similar feature-set as to what CNPG offers, primarily focusing on providing safe database where every data loss path is safely guarded.

Contributing guide

https://github.com/cnmsql/cnmsql/blob/main/CONTRIBUTING.md

Code of Conduct (CoC)

https://github.com/cnmsql/cnmsql/blob/main/CODE_OF_CONDUCT.md

Adopters

No response

Maintainers file

https://github.com/cnmsql/cnmsql/blob/main/MAINTAINERS.md

Security policy file

https://github.com/cnmsql/cnmsql/blob/main/SECURITY.md

Standard or specification?

N/A

Business product or service to project separation

This project is unrelated to any product or service.

Why CNCF?

While MySQL is one of the world's most widely deployed databases, operating it reliably in Kubernetes remains challenging. CNMSQL applies cloud native design principles: declarative APIs, reconciliation loops, immutable infrastructure, automation, observability, and Kubernetes-native security on the entire lifecycle of MySQL clusters.

The CNCF also provides an open governance model, neutral project ownership, and a collaborative community that are essential for establishing CNMSQL as a long-term foundation for operating MySQL on Kubernetes. My goal is not simply to automate MySQL deployments, but to provide a reliable cloud native control plane for MySQL that platform teams, managed database providers, and end users can build upon.

By joining the CNCF ecosystem, CNMSQL can collaborate with related projects, adopt established cloud native best practices, and help close the gap between MySQL and the level of operational experience already available for PostgreSQL in Kubernetes.

Benefit to the landscape

CNMSQL expands the Cloud Native Landscape by providing a Kubernetes-native control plane for MySQL that focuses on production operations rather than simply database deployment.

Several MySQL operators already exist, but most primarily focus on automating installation and basic high-availability. CNMSQL is designed around cloud native operational principles inspired by CloudNativePG, with an emphasis on declarative reconciliation and autonomous day-2 operations.

By bringing an already proven operational philosophy to the MySQL ecosystem, CNMSQL complements the existing landscape and provides users with an additional open, community-driven option for running production MySQL workloads on Kubernetes.

Cloud native 'fit'

The project extends the Kubernetes API with Custom Resource Definitions (CRDs) that describe the desired state of MySQL clusters and related resources. Dedicated controllers continuously reconcile the observed cluster state toward that desired state, automating provisioning, scaling, failover, recovery, upgrades, and ongoing maintenance through Kubernetes-native workflows.

The project embraces Kubernetes API's high consistency and only ever keeps the state inside the cluster to base its decisions upon. No other dependency is required, it's Kubernetes, MySQL and you. Routing is safely done by utilizing Services and labels, storage is managed using PVCs, and state is stored in the status of the Cluster CRD.

The operator is already compliant and supports the kubectl scale command, but will also soon support compatibility with Horizontal Pod Autoscaler and Vertical Pod Autoscaler.

Cloud native 'integration'

CNMSQL is built on Kubernetes and is designed to integrate naturally with the broader CNCF ecosystem rather than replacing existing infrastructure components.

It's also able to easily integrate with Prometheus (or equivalent) through the exposition of metrics and observability informations.

There is no other CNCF dependency but it fully integrates with Kubernetes by using most of its features, networking, storage, extensibility.

Cloud native overlap

CNMSQL is dedicated to MySQL and there is no CNCF project that provide this.

Similar projects

Oracle's MySQL Operator
Percona's Percona Operator for MySQL
Presslabs MySQL Operator

Landscape

No

Insights

No

Trademark and accounts

  • If the project is accepted, I agree to donate all project trademarks and accounts to the CNCF

IP policy

  • If the project is accepted, I agree the project will follow the CNCF IP Policy

Will the project require a license exception?

N/A

Project "Domain Technical Review"

No response

Application contact email(s)

contact@yewolf.fr

Contributing or sponsoring entity signatory information

Name Country Email address
Tristan SMAGGHE France contact@yewolf.fr

CNCF contacts

No response

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    📋 New

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions