Skip to content

Roadmap

mc-operator v1 is a production-grade server lifecycle manager. It handles provisioning, configuration, persistence, and exposure of individual Minecraft server instances on Kubernetes. It also supports multi-server clusters with a managed Velocity proxy via the MinecraftServerCluster CRD.

It deliberately does not include game-content concerns (plugins, modpacks, backups, RCON). These are significant surface areas that need careful design. See the rationale in the Architecture guide.

LimitationNotes
No plugin managementUsers manage plugins via init containers, custom images, or exec
No automated backupsUse Velero or manual kubectl cp from a paused server
No RCON integrationUse kubectl exec for server commands
Single-replica per serverIndividual Minecraft servers are not horizontally scalable
Storage size immutableResize PVCs directly via kubectl patch
Dynamic scaling framework onlyScaling policy is validated and stored, but metric collection is not yet implemented
FeatureNotes
Multi-server proxy (Velocity)MinecraftServerCluster CRD with managed Velocity proxy, Modern forwarding, and automatic server registration
Scaling frameworkStatic mode (fixed replicas) and Dynamic mode structure (min/max/policy) — metric-driven scaling pending
Zero-downtime version upgradesOpt-in (spec.prePull: true) Pre-pull Job pulls new OCI image layers and pre-downloads the Minecraft server jar to the data PVC while the server is still running; rolling update only waits for server startup

These are possibilities, not commitments. Priority depends on community interest and use cases.

Collect player count metrics from backend servers to drive auto-scaling decisions. The ScalingPolicy spec is already in place; the missing piece is a metric collection sidecar or RCON-based polling.

A structured way to declare plugin JARs in the spec. Likely via init containers or a sidecar pattern that downloads plugins from URLs or a plugin registry.

A BackupSchedule CRD or integration with the Kubernetes VolumeSnapshot API. Goals: scheduled backups, configurable retention, restore support.

Allow the operator to execute server commands via RCON on spec changes (e.g. whitelist updates without restarts). Requires secure credential management.

Export server metrics (player count, TPS, memory usage) via the itzg/minecraft-server metrics endpoint and expose them as standard Prometheus metrics.

Watch for new Minecraft releases and optionally trigger updates automatically (with a updatePolicy field in the spec).

Manage Bedrock dedicated servers alongside Java edition.

Graduate the API from v1alpha1 to v1beta1 once the spec proves stable in production, and eventually to v1.

Have a use case that isn’t covered? Open an issue on GitHub describing the problem. Roadmap priorities are shaped by real use cases.