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