https://github.com/percona/percona-server-mysql-operator
Percona Operator for MySQL
https://github.com/percona/percona-server-mysql-operator
hacktoberfest kubernetes mysql
Last synced: about 1 month ago
JSON representation
Percona Operator for MySQL
- Host: GitHub
- URL: https://github.com/percona/percona-server-mysql-operator
- Owner: percona
- License: apache-2.0
- Created: 2021-09-14T09:01:35.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-03-24T22:24:06.000Z (about 1 month ago)
- Last Synced: 2025-03-24T23:25:36.541Z (about 1 month ago)
- Topics: hacktoberfest, kubernetes, mysql
- Language: Go
- Homepage: https://www.percona.com/doc/kubernetes-operator-for-mysql/ps/index.html
- Size: 30.8 MB
- Stars: 173
- Watchers: 33
- Forks: 29
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: code-of-conduct.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- awesome-dok - Percona Operator for MySQL (PS) - another one for MySQL from Percona, but based on Percona Server for MySQL - provides group and async replication, currently in Alpha stage. (Databases / MySQL)
- awesome-dok - Percona Operator for MySQL (PS) - another one for MySQL from Percona, but based on Percona Server for MySQL - provides group and async replication, currently in Alpha stage. (Databases / MySQL)
README
# Percona Operator for MySQL

[](https://opensource.org/licenses/Apache-2.0)




[](https://goreportcard.com/report/github.com/percona/percona-server-mysql-operator)[Percona Operator for MySQL based on Percona Server for MySQL](https://docs.percona.com/percona-operator-for-mysql/ps/index.html) automates the creation and management of highly available, enterprise-ready MySQL database clusters on Kubernetes.
[Percona Operator for MySQL based on Percona Server for MySQL](https://www.percona.com/doc/kubernetes-operator-for-mysql/ps/index.html) follows our best practices for deployment and configuration of highly-available, fault-tolerant MySQL instances in a Kubernetes-based environment on-premises or in the cloud. It provides the following capabilities:
* Deploy group replication MySQL clusters with HAProxy or MySQL Router
* Deploy asynchronous replication MySQL clusters with Orchestrator and HAProxy
* Expose clusters with regular Kubernetes Services
* Monitor the cluster with [Percona Monitoring and Management](https://www.percona.com/software/database-tools/percona-monitoring-and-management)
* Customize MySQL configuration
* Manage system user passwords## Status
**This project is in the tech preview state right now. Don't use it on production.**
As of today, we recommend using [Percona Operator for MySQL based on Percona XtraDB Cluster](https://docs.percona.com/percona-operator-for-mysql/pxc/index.html), which is production-ready and contains everything you need to quickly and consistently deploy and scale MySQL clusters in a Kubernetes-based environment, on-premises or in the cloud.
## Architecture
Percona Operators are based on the [Operator SDK](https://github.com/operator-framework/operator-sdk) and leverage Kubernetes primitives to follow best CNCF practices.
## Documentation
To learn more about the Operator, check the [Percona Operator for MySQL documentation](https://docs.percona.com/percona-operator-for-mysql/ps/index.html).
# Quickstart installation
Ready to try out the Operator? Check the [Quickstart tutorials](https://docs.percona.com/percona-operator-for-mysql/ps/helm.html) for easy-to follow steps.
Below is one of the ways to deploy the Operator using `kubectl`.
## kubectl
1. Deploy the Operator from `deploy/bundle.yaml`:
```sh
kubectl apply -f https://raw.githubusercontent.com/percona/percona-server-mysql-operator/main/deploy/bundle.yaml
```2. Deploy the database cluster itself from `deploy/cr.yaml`:
```sh
kubectl apply -f https://raw.githubusercontent.com/percona/percona-server-mysql-operator/main/deploy/cr.yaml```
# Need help?
**Commercial Support** | **Community Support** |
:-: | :-: |
|
Enterprise-grade assistance for your mission-critical MySQL deployments in Kubernetes. Get expert guidance for complex tasks like multi-cloud replication, database migration and building platforms.
|
Connect with our engineers and fellow users for general questions, troubleshooting, and sharing feedback and ideas.
|
| **[Get Percona Support](https://hubs.ly/Q02ZTHb-0)** | **[Visit our Forum](https://forums.percona.com/c/mysql-mariadb/percona-kubernetes-operator-for-mysql/28)** |# Contributing
Percona welcomes and encourages community contributions to help improve Percona Operator for MySQL.
See the [Contribution Guide](CONTRIBUTING.md) and [Building and Testing Guide](e2e-tests/README.md) for more information on how you can contribute.
## Roadmap
We have an experimental public roadmap which can be found [here](https://github.com/percona/roadmap/projects/1). Please feel free to contribute and propose new features by following the roadmap [guidelines](https://github.com/percona/roadmap).
## Submitting Bug Reports
If you find a bug in Percona Docker Images or in one of the related projects, please submit a report to that project's [JIRA](https://jira.percona.com/browse/K8SPS) issue tracker or [create a GitHub issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/creating-an-issue#creating-an-issue-from-a-repository) in this repository.
Learn more about submitting bugs, new features ideas and improvements in the [Contribution Guide](CONTRIBUTING.md).