The installation process consists of three steps:
- Install repctl
- Install Container Storage Modules (CSM) for Replication Controller
- 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.
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
for future use during management operations.
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
Note: Current installation method allows you to specify custom
<FQDN>:<IP>entries to be appended to controller’s
/etc/hostsfile. It can be useful if controller is being deployed in private environment where DNS is not set up properly, but kubernetes clusters use FQDN as API server’s address. The feature can be enabled by modifying
- ip: "10.10.10.10" hostnames: - "foo.bar" - ip: "10.10.10.11" hostnames: - "foo.baz"
This script will do the following:
DellCSIReplicationGroupCRD in your cluster
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.yamlafter 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:
- CSI driver for PowerMax
- CSI driver for PowerStore
- CSI driver for PowerScale
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:
Note: CSI-Replicator sidecar utilizes the same log level as CSI driver. To change the sidecars log level refer to corresponding csi drivers documentation.