Skip to content

Cluster config

Vladimir Stepanenko edited this page Jun 25, 2021 · 2 revisions

This page provides a specification of the cluster configuration file and instructions for the generation of this configuration with CCG. An example configuration can be found here.

Config specification

Cluster config

  • nodes
    • Description: list of nodes in cluster
    • Type: array of Node
    • Required: true
  • vdisks
    • Description: list of vdisks in cluster
    • Type: array of Vdisk
    • Required: true

[list] of all cluster nodes

Node type

  • name
    • Description: node name
    • Type: string
    • Required: true
  • address
    • Description: node address
    • Type: string
    • Required: true
  • disks
    • Description: list of physical node disks
    • Type: array of Disk
    • Required: true

Vdisk type

  • id
    • Description: unique vdisk identifiers
    • Type: uint
    • Required: true
  • replicas
    • Description: list of vdisk replicas locations
    • Type: array of Replica
    • Required: true

Replica type

  • node
    • Description: node name, to find target node in nodes list
    • Type: string
    • Required: true
  • disk
    • Description: disk name, to find location of the replica on the node in disks list
    • Type: string
    • Required: true

Disk type

  • name
    • Description: disk name
    • Type: string
    • Required: true
  • path
    • Description: mount point, it doesn't matter if it is a whole physical disk or a directory
    • Type: string
    • Required: true

Generating config

You can generate config with CCG. In order to generate the configuration, you need to create a configuration file with information about the servers (for example, cluster.yaml). This file must contain nodes field of cluster config.

Then you can use the CCG to generate the vdisks field with VDISKS count of vdisks and REPLICAS count of replicas.

ccg new -i cluster.yaml -o cluster.g.yaml -r REPLICAS -d VDISKS
Clone this wiki locally