• Glossary
  • Support
  • Downloads
  • DataStax Home
Get Live Help
Expand All
Collapse All

DataStax Project Mission Control

    • Overview
      • Release notes
      • FAQs
      • Getting support
    • Installing DataStax Mission Control
      • Planning your install
      • Server-based Runtime Installer
        • Services setup with DataStax Mission Control Runtime Installer
      • Bring your own Kubernetes
        • Installing Control Plane
        • Installing Data Plane
    • Migrating
      • Migrating DSE Cluster to DataStax Mission Control
    • Managing
      • Managing DSE clusters
        • Configuring DSE
          • Authentication
          • Authorization
          • Securing DSE
          • DSE Unified Authorization
        • Cluster lifecycle
          • Creating a cluster
          • Creating a single-token cluster
          • Creating a multi-token cluster
          • Terminating a DSE cluster
          • Upgrading a DSE cluster
        • Datacenter lifecycle
          • Adding a DSE datacenter
          • Terminating a DSE datacenter
        • Node lifecycle
          • Adding DSE nodes
          • Terminating DSE nodes
          • Using per-node configurations
      • Managing DataStax Mission Control infrastructure
        • Adding a node to DataStax Mission Control clusters
        • Terminating a node from DataStax Mission Control clusters
        • Storage classes defined
      • Managing DataStax Mission Control resources
        • Accessing Admin Console
        • Configuring DataStax Mission Control
        • Generating a support bundle
    • Operating on DSE Clusters
      • Cleanup
      • Rebuilding
      • Replacing a node
      • Rolling restart
      • Upgrading SSTables
    • Reference
      • DSECluster manifest
      • CassandraTask manifest
  • DataStax Project Mission Control
  • Reference
  • DSECluster manifest

DataStax Enterprise (DSE) Cluster DSECluster

DataStax Mission Control is current in Private Preview. It is subject to the beta agreement executed between you and DataStax. DataStax Mission Control is not intended for production use, has not been certified for production workloads, and might contain bugs and other functional issues. There is no guarantee that DataStax Mission Control will ever become generally available. DataStax Mission Control is provided on an “AS IS” basis, without warranty or indemnity of any kind.

If you are interested in trying out DataStax Mission Control please contact your DataStax account team.

The filename of the manifest (object) is <filename>.yaml. This example uses demo-dse.yaml.

Example DSECluster manifest

apiVersion: missioncontrol.datastax.com/v1alpha1
kind: DSECluster
metadata:
  name: demo
spec:
  serverVersion: 6.8.26
  storageConfig:
    cassandraDataVolumeClaimSpec:
      storageClassName: premium-rwo
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 10Gi
  resources:
    requests:
      memory: 1Gi
  datacenters:
    - metadata:
        name: dc1
      k8sContext: east
      size: 3
      racks:
        - name: rack1
          nodeAffinityLabels:
            topology.kubernetes.io/zone: us-east1-c
        - name: rack2
          nodeAffinityLabels:
            topology.kubernetes.io/zone: us-east1-b
        - name: rack3
          nodeAffinityLabels:
            topology.kubernetes.io/zone: us-east1-d

Key options

apiVersion

Indicates the version of the object being defined

kind

Indicates what type of resource this file represents. For example, kind can be a DSECluster resource or a datacenter.

metadata

At a minimum you must specify a name for your cluster. This value is used in the cluster_name parameter of cassandra.yaml.

spec section
serverVersion

Defines the DSE version you wish to deploy. This value is used to determine which Docker container versions to deploy.

storageConfig

Describes the storage requirements per node.

cassandraDataVolumeClaimSpec

Represents /var/lib/cassandra within a node. The type of this field matches Kubernetes' PersistentVolumeClaimSpec. See Kubernetes reference docs for more detailed definitions.

storageClassName

Specifies the Kubernetes Storage Class that should be used when requesting storage.

This storage class MUST use volumeBindingMode: WaitForFirstConsumer. See DataStax Mission Control Storage Classes for more information.

Failure to set this may bind a volume on a node where the pod may not be scheduled, resulting in a deadlock or a stuck Pending pod status.

  • accessModes[] - Contain the desired access modes of the volume, ReadWriteOnce is appropriate for almost all clusters.

  • resources.requests.storage - Defines the requested volume size, this value must be a Quantity.

    • resources.requests - Requests specific resources to be considered when scheduling the DSE nodes. This is where you define your CPU and memory requirements.

      • memory - The amount of TOTAL memory available to the node, this value should be at least twice as large as your expected Java Heap.

      • cpu - The number of vCPUs the pod requires.

        This is usually specified in milliCPUs where 1000m is the equivalent of 1 vCPU.

    • resources.limits - These should NOT be set at this time. The sample does not list values.

datacenters[]

Describes the topology of the DSE Cluster. Each entry represents a single logical datacenter.

  • metadata.name - Name of the datacenter, this value is placed in cassandra-rackdc.properties.

  • k8sContext - Specifies the name of the regional Data Plane Kubernetes cluster in which the DC should be deployed.

  • size - Total node count for the datacenter.

  • racks[] - List of racks for the datacenter. The size parameter MUST be divisible by the total number of defined racks. Nodes are equally deployed across all of the defined racks.

    • name - Name of the logical rack, this value is placed in cassandra-rackdc.properties

    • nodeAffinityLabels[] - Provides a mapping of node label key/value pairs for use while scheduling. These values may include common labels such as zone or region. Alternatively, you may provide custom labels to nodes in order to pin specific workloads to specific instances.

Reference CassandraTask manifest

General Inquiries: +1 (650) 389-6000 info@datastax.com

© DataStax | Privacy policy | Terms of use

DataStax, Titan, and TitanDB are registered trademarks of DataStax, Inc. and its subsidiaries in the United States and/or other countries.

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries.

Kubernetes is the registered trademark of the Linux Foundation.

landing_page landingpage