Add Storage Nodes to a Cluster

This procedure describes how to add storage nodes to an ARTESCA cluster.

Important

New servers added to the cluster must have similar CPU and RAM to each other. Their storage capacity must be identical to each other but can differ from the original nodes in the cluster.

Supported Expansion Paths

  • Supported expansion paths:
    • 1 node to 2, or 3 nodes

    • 3 nodes to 6 nodes

  • Expansions from 1 node to 2 nodes, and from 2 nodes to 3 nodes have the same level of protection as a 1 node architecture.

  • Expansions from 3 nodes to 6 nodes have the same level of protection as a 3 node architecture.

Prerequisites

  • Platform Administrator role

  • A new node meeting the Software Appliance Requirements, with the same storage capacity and service disk capacity as the other new nodes being added. The storage capacity of the new nodes can differ from the existing nodes in the cluster.

  • The firewall must be deactivated before the expansion.

Important

The following procedure must be executed for each node added to the cluster.

Prepare the New Server

Install and configure the operating system on the new HW or VM node:

Add the New Server to ARTESCA

  1. Prepare the Data disks.

  2. Prepare the service disk for ARTESCA services.

  3. Configure the Service Disk logical volume manager (LVM).

    To simplify managing this storage, most services consume LVM logical volumes, for which you must provision a physical volume and a volume group.

    Replace /dev/md/artesca with the path to your RAID array, if you created one using a physical controller.

    1. Create an LVM Physical Volume on your device:

      [artesca-os@bootstrap ~]$
      
      sudo pvcreate /dev/md/artesca
      
    1. Create an LVM Volume Group called vgartesca backed by your device:

      [artesca-os@bootstrap ~]$
      
      sudo vgcreate vgartesca /dev/md/artesca
      
  4. Configure the SSH connection.

  5. From the bootstrap node prepare the new node for expansion using the ARTESCA installer:

    [artesca-os@bootstrap ~]$
    
    sudo ./artesca-installer prepare-node
    
  6. In the Platform page, open the Nodes tab, and click Create Node.

  7. Fill in the fields with the information below:

    • Name: the name you want to give to the new node.

    • SSH User: artesca-os.

    • Hostname or IP: the hostname or IP address to connect using SSH to the new node from the Bootstrap server (the initial node on the cluster).

    • SSH Port: the port to connect using SSH to the new node from the Bootstrap server (the initial node on the cluster).

    • SSH Key Path: the path to the private key previously generated in this procedure.

    • Sudo Required: always enabled.

  8. Click Create.

  9. Under the Overview tab of the new node, click Deploy.

    Note

    This operation can take up to 30 minutes.

    The new node is deployed and ready. All the active pods can be seen in the Pods tab of the new node.

Provision the Storage

Provision the Storage Service Index Persistent Volume

  1. Under the Volumes tab of the new node, click Create Volume.

  2. Fill in the fields with the information below:

    • Name: the name you want to give to the volume. Specify a unique name of your choice.

      Important

      Add index to its name to distinguish it from the other volumes.

    • Node: the node you want to create the volume on.

    • Labels: xcore.scality.com/volume-type and index.

    • Storage Class: ssd-ext4.

    • Type: LVMLogicalVolume.

    • Volume Capacity: sized proportionally to the storage capacity of the new node. Refer to Required Service Disk Capacity for sizing guidelines, or contact Scality Support to validate the appropriate size.

    • Force LV creation: Set to NO

    • Volume Group Name: vgartesca.

  3. Click Create.

Provision the Data Drives Persistent Volume

  1. Under the Volumes tab of the new node, click Create Volume.

  2. Fill in the fields with the information below:

    • Name: the name you want to give to the volume. Specify a unique name of your choice.

    • Node: the node you want to create the volume on.

    • Labels: xcore.scality.com/volume-type and data.

    • Storage Class: The same storage class as the other disks in the node.

      Note

      The storage class can be found under Platform > Volumes > Overview > Storage Class.

    • Device Path: the device path of the data drive.

  3. Check the Create multiple volumes box.

    1. Enter the number of volumes to create in the appropriate field.

    2. Adapt the Name and the Device Path fields for each new volume.

  4. Click Create.

All the volumes created are listed in the Volumes tab of the new node.

Important

All the volumes created must display a size, and a Status of not used.

Add the Nodes to ARTESCA Storage Service

  1. In the Storage Service page, select the cluster you want to add nodes to and click Expand Cluster.

  2. Select the node to add to the cluster and click the > button to add it to the list.

  3. Click Continue once you have finished adding the nodes.

    A dialog box appears asking for confirmation.

  4. Click Continue to confirm the cluster expansion.

Postchecks

  • Reactivate the firewall.

  • Ensure that the Storage Service cluster is in a green state.

A storage expansion requires renewing your ARTESCA license key to align with the new capacity. Please provide your instance ID to Scality or your reseller. Refer to the Renew License procedure for more information.