Percona's Kubernetes operators for MySQL, PostgreSQL, and MongoDB are often evaluated as one product family, but they are four projects at different stages. There are two MySQL operators. The Group Replication one reached GA only in November 2025, and in release 1.3.0 its async replication, point-in-time recovery, and incremental backups are still tech preview. The PostgreSQL operator jumped to 3.0.0 in May 2026 as a hard fork of Crunchy Data's PGO, moving the inherited CRDs to a new API group, upstream.pgv2.percona.com, so 2.x runbooks need review. This guide compares the four on failover, proxies, backups and PITR, upgrades, TLS, PMM, licence, and maturity, and against the vendor alternatives.
- As of November 2026 the current releases are: XtraDB Cluster operator 1.20.0, the Percona Server (Group Replication) operator 1.3.0, the PostgreSQL operator 3.1.0, and the MongoDB operator 1.23.1. All four are Apache 2.0.
- For MySQL, the XtraDB Cluster operator is the long-running option. The Percona Server operator is GA for Group Replication only. Async replication, PITR, and incremental backups there are tech preview.
- The PostgreSQL operator runs Patroni, pgBackRest, and PgBouncer. Major PostgreSQL upgrades pause the whole cluster, and PMM2 support has been removed.
- The MongoDB operator covers replica sets and sharded clusters with Percona Backup for MongoDB. Physical incremental and PVC snapshot backups are tech preview.
- Pilot the operator on a staging cluster first. Test a restore to a point in time, a failover, and an upgrade before you move production.
Scope and review date: November 2026. Covers Percona Operator for MySQL based on Percona XtraDB Cluster 1.20.0 and based on Percona Server for MySQL 1.3.0, Percona Operator for PostgreSQL 3.1.0, and Percona Operator for MongoDB 1.23.1, plus CloudNativePG, MongoDB Controllers for Kubernetes, and Oracle's MySQL Operator. Versions, fields, and commands were checked against vendor documentation, release notes, and repositories on 9 November 2026, not run in a lab. Test them on a non-production cluster.
Which Percona Operators exist, and which versions are current?
There are four operators. Each installs its own custom resource definitions (CRDs) and watches its own custom resource (CR) kind. The table lists the latest release of each from Percona's release notes as of November 2026.
| Operator | CR kind (short name) | Latest release | Databases | Status |
|---|---|---|---|---|
| MySQL based on Percona XtraDB Cluster | PerconaXtraDBCluster (pxc) | 1.20.0, 5 June 2026 | PXC 8.4.8, 8.0.45, 5.7.44 | GA |
| MySQL based on Percona Server for MySQL | PerconaServerMySQL (ps) | 1.3.0, 29 October 2026 | Percona Server 9.7.2, 8.4.11, 8.0.46 | GA for Group Replication since 1.0.0; async is tech preview |
| PostgreSQL | PerconaPGCluster (pg) | 3.1.0, 9 September 2026 | PostgreSQL 14 to 18 | GA |
| MongoDB | PerconaServerMongoDB (psmdb) | 1.23.1, 5 October 2026 | Percona Server for MongoDB 6.0, 7.0, 8.0 | GA |
Sources: release notes for XtraDB Cluster 1.20.0, Percona Server 1.3.0 (GA for Group Replication since 1.0.0, 17 November 2025), PostgreSQL 3.1.0, and MongoDB 1.23.1.
# Which Percona operators are already installed in this Kubernetes cluster?
kubectl get crd -o name | grep -E 'percona\.com'Interpretation: the groups pxc.percona.com, ps.percona.com, pgv2.percona.com, and psmdb.percona.com show which operators are present. After a PostgreSQL operator upgrade from 2.x, the renamed upstream.pgv2.percona.com CRDs sit next to the legacy ones.
Checking cluster status with the operators' short names
Illustrative output: columns follow the expected output in Percona's kubectl quickstart guides; names and ages are examples
Same verb, different columns: each operator reports its own components. The ready status is the first thing to check after any CR change. The column layouts follow Percona's kubectl install guides.
Percona Everest, the web console for these operators, is no longer a Percona product. In January 2026 Percona moved it into an independent project, OpenEverest, developed by its subsidiary Solanica. Percona's MongoDB operator docs call it a CNCF Sandbox project and an optional install method. Everything in this post works through plain CRs.
How do the Percona Operators for MySQL, PostgreSQL, and MongoDB compare?
This card uses the XtraDB Cluster operator for MySQL; the next section compares the two MySQL operators.
Percona Operators side by side, November 2026
Switch engines to compare failover, the proxy layer, backups, upgrades, TLS, and monitoring
MySQL (XtraDB Cluster)
| Area | XtraDB Cluster operator |
|---|---|
| Latest release | 1.20.0 (5 June 2026) |
| Database versions | Percona XtraDB Cluster 8.4, 8.0, and 5.7 |
| Replication and failover | Galera multi-primary replication; the proxy sends writes to one node |
| Proxy layer | HAProxy (default) or ProxySQL |
| Backups | Percona XtraBackup to S3-compatible, Azure Blob, or a PVC |
| Point-in-time recovery | Binlog collector Pod; S3-compatible or Azure storage only |
| Upgrades | Smart Update, primary last; optional scheduled minor upgrades |
| TLS | Operator-generated certificates by default; cert-manager or your own optional |
| PMM client | PMM2 and PMM3; PMM2 support ends in 1.22.0 |
| Licence | Apache 2.0 |
PostgreSQL
| Area | PostgreSQL operator |
|---|---|
| Latest release | 3.1.0 (9 September 2026) |
| Database versions | PostgreSQL 14 to 18; 19 as a community-image tech preview |
| Replication and failover | Streaming replication; Patroni elects the leader |
| Proxy layer | PgBouncer, 3 Pods by default |
| Backups | pgBackRest, up to 4 repos on S3, GCS, Azure, or a PVC |
| Point-in-time recovery | Archived WAL in the pgBackRest repo; restore with --type=time |
| Upgrades | Image patch for minors; PerconaPGUpgrade for majors, with the cluster paused |
| TLS | Operator-generated certificates by default; cert-manager or your own optional |
| PMM client | PMM3 only; PMM2 support removed in 3.1.0 |
| Licence | Apache 2.0 |
MongoDB
| Area | MongoDB operator |
|---|---|
| Latest release | 1.23.1 (5 October 2026) |
| Database versions | Percona Server for MongoDB 6.0, 7.0, and 8.0 |
| Replication and failover | Replica set elections; sharding with a config server replica set |
| Proxy layer | None for replica sets; mongos routers for sharded clusters |
| Backups | Percona Backup for MongoDB to S3, GCS, Azure, OSS, OCI, or a file server |
| Point-in-time recovery | Oplog uploaded in 10-minute spans by default |
| Upgrades | Smart Update, primary last; optional scheduled minor upgrades |
| TLS | tls.mode defaults to preferTLS |
| PMM client | PMM3 (client 3.9.1 in 1.23.1) |
| Licence | Apache 2.0 |
Same licence, different maturity: every row except the licence changes by engine. Read each operator's tech preview list before you compare features, because a feature can exist in one operator and still be preview-only in another.
Which MySQL operator should you pick: XtraDB Cluster or Group Replication?
Percona ships two MySQL operators with different replication engines. The XtraDB Cluster operator architecture uses Galera, which the docs describe as "virtually synchronous multi-primary replication": a commit returns only after the write set reaches all nodes and passes certification. The Percona Server operator runs MySQL Group Replication, or asynchronous replication managed by Orchestrator as a tech preview.
| Question | XtraDB Cluster operator 1.20.0 | Percona Server operator 1.3.0 |
|---|---|---|
| Replication | Galera | Group Replication (GA) or async with Orchestrator (tech preview) |
| Proxies | HAProxy or ProxySQL | HAProxy (both types) or MySQL Router (Group Replication only) |
| Newest MySQL line | 8.4 | 9.7, plus 8.4 and 8.0 |
| Group size | 3 to 5 nodes recommended | Group Replication allows at most 9 instances |
| PITR | GA, binlog collector | Tech preview since 1.1.0 |
| Incremental backups | Not available as of 1.20.0 | Tech preview since 1.1.0 |
The default CRs show the difference in practice. Both excerpts come from each operator's deploy/cr.yaml at the current release tag.
# XtraDB Cluster operator 1.20.0: deploy/cr.yaml (excerpt)
apiVersion: pxc.percona.com/v1
kind: PerconaXtraDBCluster
spec:
crVersion: 1.20.0
pxc:
size: 3
haproxy:
enabled: true
size: 3
proxysql:
enabled: falseInterpretation: HAProxy is on and ProxySQL is off by default. Enable only one of them. HAProxy sends writes to one node through the cluster1-haproxy Service, and reads can use cluster1-haproxy-replicas. Pod anti-affinity is required by default, so three PXC Pods need three schedulable Kubernetes nodes.
# Percona Server operator 1.3.0: deploy/cr.yaml (excerpt)
apiVersion: ps.percona.com/v1
kind: PerconaServerMySQL
spec:
crVersion: 1.3.0
mysql:
clusterType: group-replication # "async" is tech preview
size: 3
proxy:
haproxy:
enabled: true
router:
enabled: false # Group Replication only
orchestrator:
enabled: false # used by async clustersInterpretation: the default is Group Replication behind HAProxy. Release 1.3.0 can switch replication type on a running cluster, but that feature is also tech preview, so pick the type at creation.
Need GA PITR today on MySQL 8.4: the XtraDB Cluster operator. Need MySQL 9.7 or Group Replication: the Percona Server operator, once its PITR leaves tech preview. See Group Replication vs Galera for the engine trade-offs.
How do failover and the proxy layer work in each operator?
No operator adds its own consensus layer. Each delegates failover to the engine or a bundled tool, then points a Service or proxy at the new primary.
- XtraDB Cluster: every Galera node holds the full data set. When the writer fails, HAProxy or ProxySQL picks another node as the single writer.
- Percona Server: Group Replication's membership protocol elects a new primary. In async clusters, Orchestrator promotes a replica, and release 1.3.0 recovers missing binary log transactions before it promotes one.
- PostgreSQL: Patroni coordinates leader election and updates its endpoints on failover. The
cluster1-primaryService follows the leader, and PgBouncer (cluster1-pgbouncer) sits in front. - MongoDB: the replica set holds an election. Drivers find the new primary themselves; sharded clusters route through
mongos.
# PostgreSQL operator 3.1.0: deploy/cr.yaml (excerpt; patroni block shown with its defaults)
apiVersion: pgv2.percona.com/v2
kind: PerconaPGCluster
spec:
crVersion: 3.1.0
postgresVersion: 18
instances:
- name: instance1
replicas: 3
proxy:
pgBouncer:
replicas: 3
patroni:
syncPeriodSeconds: 10 # default: 10
leaderLeaseDurationSeconds: 30 # default: 30Interpretation: three PostgreSQL instances (one primary and two replicas) and three PgBouncer Pods are the defaults. The cr.yaml comments say the Patroni container's probe timings are derived from these two values. Lowering them speeds up failure detection but makes a short network pause more likely to trigger a failover.
# MongoDB operator 1.23.1: deploy/cr.yaml (excerpt)
apiVersion: psmdb.percona.com/v1
kind: PerconaServerMongoDB
spec:
crVersion: 1.23.1
replsets:
- name: rs0
size: 3
sharding:
enabled: true
configsvrReplSet:
size: 3
mongos:
size: 3Interpretation: the sample CR enables sharding with three config servers and three mongos routers. For an unsharded replica set, set sharding.enabled: false. Clients then connect with the connection string the operator writes to a Secret, and no proxy sits in the path.
How do backups and point-in-time recovery work in each operator?
All four operators take on-demand or scheduled backups through a CR and write them to object storage outside the Kubernetes cluster. PITR adds a continuous log stream on top of a full backup: binary logs, WAL, or the oplog.
The common Percona Operator pattern
Follow the numbers: you edit only the CR; the operator builds and maintains everything else
Step 4 is your recovery point: a backup you have never restored is untested. Restore one to a separate cluster before you trust the schedule.
MySQL: the binlog collector
In the XtraDB Cluster operator, enabling PITR starts a separate Pod that uploads binary logs to backup storage. The PITR documentation says to use S3-compatible or Azure-compatible storage for both the binlogs and the full backup, and that PITR does not work with other storage types.
# XtraDB Cluster operator: deploy/cr.yaml
spec:
backup:
pitr:
enabled: true
storageName: s3-us-west # must match a name under backup.storages
timeBetweenUploads: 60 # seconds between binlog uploadsInterpretation: timeBetweenUploads limits how much recent history a restore can reach if the whole Kubernetes cluster is lost. The collector exposes pxc_binlog_collector_* metrics on the cluster1-pitr Service, so alert on them.
PostgreSQL: pgBackRest and WAL
The PostgreSQL operator runs pgBackRest with up to four repositories and full, differential, or incremental backups, and takes an initial full backup when it creates a cluster. A point-in-time restore replays archived WAL on top of the latest full backup that finished before the target.
# deploy/restore.yaml: in-place point-in-time restore
apiVersion: pgv2.percona.com/v2
kind: PerconaPGRestore
metadata:
name: restore1
spec:
pgCluster: cluster1
repoName: repo1
options:
- --type=time
- --target="2026-11-03 10:15:00+00"# The newest time a restore can safely target
kubectl get pg-backup <backup_name> -n <namespace> \
-o jsonpath='{.status.latestRestorableTime}'Interpretation: target a time at or before latestRestorableTime. It advances only when archived WAL contains commits, so on an idle test cluster, make a small write and wait for the next WAL switch (archive_timeout, 60 seconds by default). See our pgBackRest guide for the tool itself.
MongoDB: oplog slices
The MongoDB operator runs Percona Backup for MongoDB (PBM) as a sidecar. Logical and physical full backups are GA. Physical incremental backups (from 1.20.0) and PVC snapshot backups (from 1.23.0) are tech preview, and PVC snapshot backups do not support PITR.
# MongoDB operator: deploy/cr.yaml
spec:
backup:
pitr:
enabled: true
# oplogSpanMin: 10 # default upload interval, in minutesInterpretation: per the MongoDB operator's PITR page, the first oplog slice arrives after one interval, about 10 minutes by default. Check status.latestRestorableTime on a psmdb-backup object, as for PostgreSQL above: empty means nothing has been uploaded yet.
As of November 2026, these are all marked tech preview, with Percona advising against production use: PITR and incremental backups in the Percona Server operator, PVC snapshot backups in the PostgreSQL and MongoDB operators, and physical incremental backups in the MongoDB operator.
How do upgrades work, and what does Smart Update do?
An upgrade has three layers: the CRDs, the operator deployment, and the database images. Upgrade them in that order. The XtraDB Cluster, Percona Server, and MongoDB operators support updateStrategy: SmartUpdate, the default in their sample CRs. The XtraDB Cluster update guide says Smart Update "restarts Pods in a specific order, with the primary instance updated last". The alternatives are RollingUpdate, run by the StatefulSet controller, and OnDelete, where you delete each Pod yourself.
# XtraDB Cluster operator 1.20.0: deploy/cr.yaml
spec:
updateStrategy: SmartUpdate
upgradeOptions:
versionServiceEndpoint: https://check.percona.com
apply: disabled # or Recommended, Latest, 8.0-recommended, an exact version
schedule: "0 4 * * *"Interpretation: with apply: disabled, nothing changes until you edit the image. Recommended moves the cluster to the version service's recommended minor version on the schedule, without a change ticket, which suits staging better than production. The MongoDB operator's CR has the same block.
PostgreSQL minor and major upgrades
The PostgreSQL operator's docs don't use the term Smart Update. A minor upgrade is a kubectl patch pg that sets the new crVersion and image tags from the certified images list. The minor upgrade guide warns it can cause downtime and a failover when the primary restarts. It also warns that a base image change can change glibc or ICU collations, which means reindexing text indexes.
Major upgrades have been GA since operator 2.9.0 and use a separate resource. The major upgrade guide says the whole cluster is shut down for the upgrade, data is duplicated on each PVC, and pgaudit must be dropped and recreated in each database afterwards.
# deploy/upgrade.yaml
apiVersion: pgv2.percona.com/v2
kind: PerconaPGUpgrade
metadata:
name: cluster1-17-to-18
spec:
postgresClusterName: cluster1
image: docker.io/percona/percona-distribution-postgresql-upgrade:<tag>
fromPostgresVersion: 17
toPostgresVersion: 18
toPostgresImage: docker.io/percona/percona-distribution-postgresql:<tag>
toPgBouncerImage: docker.io/percona/percona-pgbouncer:<tag>
toPgBackRestImage: docker.io/percona/percona-pgbackrest:<tag>Interpretation: if the upgrade fails, the cluster stays paused and starts on the old version when you resume it. Check PVC free space first, because the old data stays until you delete it.
The 3.0.0 release notes warn of brief pgBackRest disruptions while the CRD migration propagates. OLM installs may also start reconciling clusters in namespaces the operator previously ignored, so check each OperatorGroup first. Operator 2.8.x is end of life as of 3.1.0.
How do TLS and PMM monitoring differ between the operators?
By default, each operator generates its own TLS certificates if you supply none, and those are not renewed automatically. Each can instead use cert-manager for short-lived, automatically renewed certificates, or take certificates you supply in Secrets. In the XtraDB Cluster operator, HAProxy passes the TLS handshake through to the PXC node, so clients behind HAProxy verify against the internal certificate's CA. The external certificate applies only with ProxySQL. The MongoDB operator controls TLS with a mode setting.
# MongoDB operator: deploy/cr.yaml
spec:
tls:
mode: requireTLS # default is preferTLS: TLS internally, plain client connections still acceptedInterpretation: the MongoDB operator's TLS page lists allowTLS, preferTLS (default), requireTLS, and disabled. Move to requireTLS only after every client connects with TLS.
Monitoring uses Percona Monitoring and Management (PMM). Each CR has the same pmm block, and the PMM Client runs as a sidecar in every database Pod. PMM3 authenticates with a Grafana service account token. The Secret key name differs by operator, which trips up teams that copy one operator's setup to another.
# Same block in all four sample CRs (disabled by default)
spec:
pmm:
enabled: true
serverHost: monitoring-service
# XtraDB Cluster operator: token goes in the cluster Secret
# cluster1-secrets -> pmmservertoken: <token>
# PostgreSQL operator: token goes in a dedicated Secret
# cluster1-pmm-secret -> PMM_SERVER_TOKEN: <token>Interpretation: upgrade PMM Server before the PMM Client images. The PostgreSQL operator has dropped PMM2, and the XtraDB Cluster operator will drop it in 1.22.0, so a PMM2 server is a blocker to clear first. Our PMM setup guide covers the server side.
How do Percona Operators compare with CloudNativePG, MCK, and Oracle's MySQL Operator?
Each engine also has a strong alternative operator. The choice is mostly about which tooling you want to run and who you buy support from.
| Engine | Alternative (latest release) | Main difference from the Percona operator |
|---|---|---|
| PostgreSQL | CloudNativePG 1.30.1 (23 September 2026) | No Patroni: it manages failover through the Kubernetes API. Backups use the Barman Cloud Plugin or volume snapshots, and PgBouncer runs through a Pooler resource. CNCF Sandbox project, Apache 2.0. |
| MongoDB | MongoDB Controllers for Kubernetes (MCK) 1.15.0 (3 November 2026) | Replaces MongoDB's Community and Enterprise operators. Manages MongoDB Community replica sets, or Enterprise Advanced deployments through Ops Manager or Cloud Manager. Dual licence: Apache 2.0 for Community, MongoDB's Customer Agreement otherwise. |
| MySQL | MySQL Operator for Kubernetes 26.10.0-2.3.1 (22 October 2026) | Oracle's operator for MySQL InnoDB Cluster with MySQL Router. Backups use MySQL Shell dumpInstance() on a schedule; its backup manual describes dumps, not binlog-based PITR. Universal Permissive License. |
Sources: the CloudNativePG repository (its backup docs deprecate the in-core object store integration from 1.26), the MCK repository, and the MySQL Operator backup manual. MongoDB's old Community Operator repository is archived, and its best-effort support ended in November 2025.
In practice: CloudNativePG suits teams that want a Kubernetes-native design without Patroni, MCK suits MongoDB Enterprise Advanced customers, and the Percona operators suit teams that want one vendor's tooling (XtraBackup, pgBackRest, PBM, PMM) across all three engines.
How do you evaluate and pilot a Percona Operator?
A pilot should prove four things on your own platform: the cluster deploys, a backup restores to a point in time, the application tolerates a failover, and an upgrade completes. First compare your Kubernetes version with the tested platforms in the release notes.
Pilot runbook for a Percona Operator
Eight steps on a non-production cluster; steps 6 and 8 interrupt service on purpose
-
Pick the operator and topology
Choose the operator by engine and replication type, and list every feature you need that is still tech preview.
-
Check the version matrix
Confirm your target database version and Kubernetes version are supported by the operator release.
curl -s \ https://check.percona.com/versions/v1/pg-operator/3.1.0 \ | jq -r '.versions[].matrix' -
Install the operator in its own namespace
Helm charts exist for all four: pxc-operator, ps-operator, pg-operator, and psmdb-operator.
helm repo add percona \ https://percona.github.io/percona-helm-charts/ helm install my-op percona/pg-operator \ --namespace pg-pilot --create-namespace -
Deploy a cluster with backups and PMM on
Set real object storage and the PMM token before the first apply, not after.
kubectl apply -f deploy/cr.yaml -n pg-pilot kubectl get pg -n pg-pilot --watch -
Restore to a point in time
Write a marker row, note the time, drop the table, then restore to just before the drop into a new cluster.
kubectl get pg-backup -n pg-pilot -
Kill the primary Pod
Failover drillRun application traffic through the proxy, delete the primary, and record what the application sees.
kubectl delete pod <primary-pod> -n pg-pilot -
Rehearse a minor upgrade
Patch the image tags with traffic running, and check collation warnings afterwards.
-
Rehearse the risky change
OutageFor PostgreSQL, a major upgrade with PerconaPGUpgrade. For the others, an operator upgrade across one release.
kubectl apply -f deploy/upgrade.yaml -n pg-pilot
Main risk: a pilot that skips steps 5 and 6 proves only that the operator can deploy. Production problems come from restores, failovers, and upgrades, so time each one on your own platform.
Frequently asked questions
Is the Percona Operator for MySQL production ready?
It depends on which one. The operator based on Percona XtraDB Cluster is GA, at 1.20.0 as of November 2026, with PITR included. The operator based on Percona Server for MySQL has been GA for Group Replication since 1.0.0 in November 2025. In that operator, asynchronous replication, point-in-time recovery, and incremental backups remain tech preview in 1.3.0.
Are the Percona Kubernetes Operators free and open source?
Yes. The repositories for all four Percona operators carry the Apache 2.0 licence: XtraDB Cluster, Percona Server for MySQL, PostgreSQL, and MongoDB. The PostgreSQL operator also keeps Crunchy Data's copyright, because it began as a fork of Crunchy PGO. The licence does not require a subscription to use them.
Should I use the Percona Operator for PostgreSQL or CloudNativePG?
Both are Apache 2.0. The Percona operator uses Patroni for failover, pgBackRest for backups, and PgBouncer, and adds pg_tde encryption for PostgreSQL 17 and 18 in 3.1.0. CloudNativePG manages failover through the Kubernetes API without Patroni and backs up through the Barman Cloud Plugin. Pick the one whose tooling your team already knows, then pilot it.
Does the Percona Operator for MongoDB support sharding and point-in-time recovery?
Yes. Version 1.23.1 deploys sharded clusters with a config server replica set and mongos routers, and its sample CR enables sharding. Point-in-time recovery uses Percona Backup for MongoDB, which uploads oplog every 10 minutes by default. PITR needs a successful base backup and does not work with PVC snapshot backups, which are tech preview.
What happened to Percona Everest?
In January 2026, Percona moved Everest into an independent open source project named OpenEverest, developed by its subsidiary Solanica. Percona's MongoDB operator docs describe OpenEverest as a CNCF Sandbox project and list it as an optional install method. Its GitHub repository is Apache 2.0, and its latest release as of November 2026 is v1.17.0.
Key takeaways
- There are four Percona operators: XtraDB Cluster 1.20.0, Percona Server for MySQL 1.3.0, PostgreSQL 3.1.0, and MongoDB 1.23.1 as of November 2026. All are Apache 2.0.
- For MySQL, the XtraDB Cluster operator has GA PITR. The Percona Server operator is GA only for Group Replication, and its PITR is still tech preview.
- The PostgreSQL operator 3.x is a hard fork of Crunchy PGO with renamed CRDs. Plan the 2.x to 3.x upgrade, and expect a full-cluster pause for major PostgreSQL upgrades.
- Move PMM Server to PMM3 before upgrading operators. PMM2 is gone from the PostgreSQL operator and leaves the XtraDB Cluster operator in 1.22.0.
- Pilot with a point-in-time restore, a primary failover, and an upgrade on your own platform before moving production.
Run Percona Operators in production with JusDB
JusDB's MySQL on Kubernetes team can help you choose between the XtraDB Cluster and Percona Server operators, review your CRs, and plan a pilot with restore, failover, and upgrade drills. For other engines, see our PostgreSQL on Kubernetes and MongoDB on Kubernetes pages.
Bring your Kubernetes platform and version, your target database versions, your backup storage, and your recovery requirements. Your team approves every production change.