Ramen works as part of the OCM hub cluster to orchestrate the placement of workloads and their attachment to PersistentVolumes, on OCM managed clusters.
Ramen hub and Ramen cluster operators hence require an OCM managed multi-cluster setup for their operation.
Ramen works as part of the OCM managed clusters to orchestrate:
- VolumeReplication resources for all PVCs of a workload
- Preserving relevant cluster data regarding each PVC that is replicated
VolumeReplication custom resources require storage providers to support CSI extensions that enable managing replication features for provisioned volumes. Ceph-CSI is one such storage provider that supports the required extensions.
Ramen cluster operator hence should be deployed to OCM managed clusters that support VolumeReplication extensions.
Ramen preserves cluster data related to PVC resources in an S3 compatible object store. An S3 store endpoint is hence required as part of the setup.
NOTE: Ramen specifically stores PV cluster data for a replicated PVC, to restore the same across peer cluster prior to deploying the PVCs of the workload, this ensures proper binding of the PVC resources to the replicated storage end points.
Ramen components are provided as OLM catalog sources in the Ramen catalog.
All clusters that require Ramen hub or cluster components installed, require OLM installed on the same.
Kubernetes versions supported are 1.20 or higher.
Installation and deployment require the following tools at specified versions (or higher):
- kubectl > v1.21
-
kubectl version can be verfied using
kubectl version
-
ramen-hub-operator
is the controller for managing the life cycle of user
created DRPlacementControl (DRPC) Ramen API resources and
administrator created DRPolicy Ramen API resources, and is
installed on the OCM hub cluster.
To install ramen-hub-operator
configure kubectl
to use the desired OCM hub cluster and execute:
kubectl apply -k github.com/RamenDR/ramen/config/olm-install/hub/?ref=main
NOTE: By default ramen-hub-operator
creates a deployment for its
controller in the ramen-system
namespace. To verify check the health of the
deployment:
kubectl get deployments -n ramen-system ramen-hub-operator
ramen-dr-cluster-operator
is the controller for managing the life cycle of
VolumeReplicationGroup Ramen API resources and is installed on
the OCM managed clusters.
NOTE: Lifecycle of VolumeReplicationGroup resources are managed by Ramen hub on required OCM managed clusters.
To install ramen-dr-cluster-operator
configure kubectl
to use the desired OCM managed cluster and execute:
kubectl apply -k github.com/RamenDR/ramen/config/olm-install/dr-cluster/?ref=main
NOTE: By default ramen-dr-cluster-operator
creates a deployment for its
controller in the ramen-system
namespace. To verify check the health of
the deployment:
kubectl get deployments -n ramen-system ramen-dr-cluster-operator