Command line tool and Go module for managing and troubleshooting Ramen.
Working with a complicated Kubernetes cluster is not easy. In a typical disaster recovery environment we have at least 3 connected Kubernetes clusters with many components. The ramenctl project aims to make it easier to manage and troubleshoot this challenging environment.
The project provides:
- The ramenctl command line tool, managing and troubleshooting ramen.
- The ramenctl Go module for integrating the ramenctl commands in other projects. This module is used to implement the odf dr command.
Download the ramenctl executable for your operating system and architecture and install in the PATH.
To install the latest release on Linux and macOS, run:
os="$(uname | tr '[:upper:]' '[:lower:]')"
machine="$(uname -m)"
if [ "$machine" = "aarch64" ]; then machine="arm64"; fi
if [ "$machine" = "x86_64" ]; then machine="amd64"; fi
curl --location --fail --silent --show-error --output ramenctl \
https://github.com/ramendr/ramenctl/releases/latest/download/ramenctl-$os-$machine
sudo install ramenctl /usr/local/bin/
rm ramenctlCreate a configuration file for Regional DR test environment:
$ ramenctl init --envfile ramen/test/envs/regional-dr.yamlValidate the disaster recovery clusters and create an HTML report:
$ ramenctl validate clusters -o validate-clusters
⭐ Using config "config.yaml"
⭐ Using report "validate-clusters"
🔎 Validate config ...
✅ Config validated
🔎 Validate clusters ...
✅ Gathered data from cluster "hub"
✅ Gathered data from cluster "dr1"
✅ Gathered data from cluster "dr2"
✅ Inspected S3 profiles
✅ Checked S3 profile "minio-on-dr2"
✅ Checked S3 profile "minio-on-dr1"
✅ Clusters validated
✅ Validation completed (90 ok, 0 warning, 0 problem)Validate a protected application and create an HTML report:
$ ramenctl validate application --name appset-deploy-rbd \
--namespace argocd -o validate-application
⭐ Using config "config.yaml"
⭐ Using report "validate-application"
🔎 Validate config ...
✅ Config validated
🔎 Validate application ...
✅ Inspected application
✅ Gathered data from cluster "dr2"
✅ Gathered data from cluster "dr1"
✅ Gathered data from cluster "hub"
✅ Inspected S3 profiles
✅ Gathered S3 profile "minio-on-dr1"
✅ Gathered S3 profile "minio-on-dr2"
✅ Application validated
✅ Validation completed (24 ok, 0 warning, 0 problem)See the validate documentation for more info.
Please see Documentation to learn more.
Visit the docs below to learn about ramenctl commands:
Check the guides below to learn more:
- For reporting bugs, suggesting improvements, or requesting new features, please open an issue.
- For implementing features or fixing bugs, please see the ramenctl contribution guide
ramenctl is under the Apache 2.0 license.