ValkeyOperator is a production-ready kubernetes operator to deploy and manage high available Valkey Sentinel and Valkey Cluster instances. This repository contains multi Custom Resource Definition (CRD) designed for the lifecycle of Valkey standalone, sentinel or cluster instance.
- Standalone/Sentinel/Cluster valkey arch supported.
- Valkey ACL supported.
- Nodeport/LB access supported; nodeport assignement also supported.
- IPv4/IPv6 supported.
- Online scale up/down.
- Graceful version upgrade.
- Nodeselector, toleration and affinity supported.
- High available in production environment.
If you have a Kubernetes cluster and kubectl
configured to access it, run the following commands to deploy the operator and create a simple cluster:
# Install the ValkeyOperator
kubectl apply -k https://github.com/chideat/valkey-operator/config/default
# Deploy a Valkey cluster
kubectl apply -f https://raw.githubusercontent.com/chideat/valkey-operator/main/docs/examples/basic/cluster.yaml
# Check the cluster status
kubectl get valkey valkey-cluster -w
For detailed installation and configuration instructions, see the User Guide.
Version | K8s Versions | Supported |
---|---|---|
7.2.x | 1.31 | Yes |
1.32 | Yes | |
8.0.x | 1.31 | Yes |
1.32 | Yes | |
8.1.x | 1.31 | Yes |
1.32 | Yes |
ValkeyOperator is covered by comprehensive documentation:
- Operator Overview - Architecture and core concepts
- User Guide - Complete installation and usage guide
- API Reference - Detailed API documentation
- Examples - Ready-to-use configuration examples
For a complete list of features and configuration options, see the documentation directory.
In addition, practical examples and configuration samples can be found in this repository.
This project follows the typical GitHub pull request model. Before starting any work, please either comment on an existing issue, or file a new one. For more details, please refer to the CONTRIBUTING.md file.
To release a new version of the ValkeyOperator, create a versioned tag (e.g. v0.1.0
) of the repo, and the release pipeline will generate a new draft release, along side release artefacts.