The module lifecycle stage: Preview
Available in: EE
Module Overview
The managed-valkey module manages Valkey clusters in Kubernetes clusters.
It allows users to configure and scale Valkey clusters according to their needs, ensuring optimal performance and security.
Key features:
- Automatic deployment: Deploys a Valkey instance using simple YAML configuration
- Standalone: Supports single instance installation.
- Persistent Storage: Allows configuring different data storage options
AOF,RDB,AOF+RDB - Configuration management: Separate
Valkey Classresource for templating approach to service creation with the ability to flexibly validate user configs - Status: Informative set of states for tracking deployed Valkey.
Enabling the Module
To enable the managed-valkey module, apply the following manifest:
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: managed-valkey
spec:
enabled: true
version: 1
After enabling the module, a cluster resource ValkeyClass named default will be automatically created.
Quick Start
For module usage examples, see:
Main Resources
The Managed Service Valkey module offers tools for two conditional roles User and Administrator.
The main objects of the module are the Valkey, Valkey Class resources and the Valkey Operator state controller.
Conditional Administrator role:
- manages the cluster wide
Valkey Classresource and creates validation templates, deployment rules, configuration for future services deployed in DKP. - Has access to the system namespace
d8-managed-valkey, whereValkey Operatoris deployed, to its service logs, state determination.
Conditional User role:
- manages the
Valkeyresource and configures the service taking into account theValkey Classcreated by the Administrator.
Administrator Resources
ValkeyClass
The ValkeyClass resource allows restricting the creation of invalid configurations and predefining some values.
Each Valkey resource must be associated with an existing ValkeyClass resource.
Before deploying the service, all configuration will be checked against the corresponding ValkeyClass.
Detailed resource description
Valkey Operator
When the module is enabled, the Valkey Operator controller is deployed in the system namespace d8-managed-valkey
and reconciles the states of Valkey and the final service in all user namespaces.
User Resources
Valkey
The main resource that describes the state of the service. Must be created inside a user namespace, and serves as the source of truth for the state of a specific deployed Valkey service. Detailed resource description