Installation

The installation process consists of three steps:

  1. Install repctl
  2. Install Container Storage Modules (CSM) for Replication Controller
  3. Install CSI driver after enabling replication

Before you begin

Please read this document before proceeding with the installation. It provides detailed steps on how to set up communication between multiple clusters which will be required during or after the installation.

Install repctl

You can download pre-built repctl binary from our Releases page. Alternately, if you want to build the binary yourself, you can follow these steps:

git clone github.com/dell/csm-replication
cd csm-replication/repctl
make build

Installing CSM Replication Controller

You can use one of the following methods to install CSM Replication Controller

  • Using repctl
  • Installation script (Helm chart)

We recommend using repctl for the installation as it simplifies the installation workflow. This process also helps configure repctl for future use during management operations.

Using repctl

Please follow the steps here to install & configure Dell Replication Controller

Using the installation script

Repeat the following steps on all clusters where you want to configure replication

git clone github.com/dell/csm-replication
cd csm-replication
kubectl create ns dell-replication-controller
# Copy and  modify values.yaml file if you wish to customize your deployment in any way
cp ../helm/csm-replication/values.yaml ./myvalues.yaml
bash scripts/install.sh --values ./myvalues.yaml

This script will do the following:

  1. Install DellCSIReplicationGroup CRD in your cluster
  2. Install dell-replication-controller

After the installation ConfigMap will consist of only the logLevel field, to add the rest configuration to the cluster do the following:

  • Update the configuration in deploy/config.yaml after going through the guide here
  • Run the following commands to update and complete the installation
    cd csm-replication
    kubectl create configmap dell-replication-controller-config --namespace dell-replication-controller --from-file deploy/config.yaml -o yaml --dry-run | kubectl apply -f -

Install CSI driver

The following CSI drivers support replication:

  1. CSI driver for PowerMax
  2. CSI driver for PowerStore

Please follow the steps outlined here for enabling replication for PowerMax & here for PowerStore during the driver installation.

Note: Please ensure that replication CRDs are installed in the clusters where you are installing the CSI drivers. These CRDs are generally installed as part of the CSM Replication controller installation process.

Dynamic Log Level Change

CSM Replication Controller can dynamically change its logs’ verbosity level. To set log level in runtime you need to edit the controllers ConfigMap:

    kubectl edit cm dell-replication-controller-config -n dell-replication-controller

And set the CSI_LOG_LEVEL field to the level of your choosing. CSM Replication controller supports following log levels:

  • “PANIC”
  • “FATAL”
  • “ERROR”
  • “WARN”
  • “INFO”
  • “DEBUG”
  • “TRACE”

Note: CSI-Replicator sidecar utilizes the same log level as CSI driver. To change the sidecars log level refer to corresponding csi drivers documentation.