-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
14 additions
and
47 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,62 +1,29 @@ | ||
# CloudCasa Kubernetes Agent | ||
# CloudCasa Agent Helm Chart | ||
|
||
[CloudCasa](https://cloudcasa.io) - Leader in Kubernetes Data Protection and Application Resiliency | ||
|
||
# Introduction | ||
## Introduction | ||
|
||
CloudCasa is a SaaS data protection, recovery, and migration solution for Kubernetes. Configuration is quick and easy, and the basic service is free. | ||
The CloudCasa agent is used by the CloudCasa service to perform all backup, restore, and management operations on Kubernetes clusters. Several methods are available for installing it. The default method is to use kubectl to apply a custom manifest file generated by CloudCasa, which contains all of the appropriate resources, including a unique ClusterID for each cluster being registered. For customers who prefer to use Helm for installation, a CloudCasa agent Helm chart is also available. | ||
|
||
CloudCasa provides two types of backup services for Kubernetes: | ||
* **CloudCasa for Velero** provides centralized management and monitoring, guided recovery, and commercial support for existing Velero backup installations. | ||
* **CloudCasa Pro** provides centralized backup services for large, complex, multi-cluster, multi-cloud, and hybrid cloud environments. It includes multi-cloud account integration, managed backup storage, and advanced cross-cloud recovery. | ||
The agent Helm chart is made available to users through our Helm repository, which is currently served via GitHub Pages at: https://catalogicsoftware.github.io/cloudcasa-helmchart/ | ||
|
||
Whether you are managing existing Velero installations or using the advanced Pro features, with CloudCasa you don’t need to be a storage or data protection expert to back up and restore your Kubernetes clusters. | ||
This git repo contains the source for both the agent Helm chart itself and the Helm repo it is served from. | ||
|
||
This Helm chart installs and configures the CloudCasa agent on a Kubernetes cluster. | ||
See the CloudCasa [Getting Started Guide](https://cloudcasa.io/get-started) for more information. | ||
The basic Helm chart is also fed into several downstream repositories for specific partner marketplaces. These include: | ||
|
||
## Prerequisites | ||
* Rancher Apps & Marketplace | ||
* Digital Ocean 1-Click Marketplace | ||
* Nirmata | ||
|
||
1. Kubernetes 1.17+ | ||
2. Helm 3.0+ | ||
## Updating/Publishing the Helm Chart | ||
|
||
## Installation | ||
Multiple versions of the Helm chart can and do exist at the same time in both the github repo and the Helm repo. Existing versions of the Helm chart should generally not be modified. Instead, a new version should be created whenever changes are required. | ||
|
||
### Rancher Installation (Apps & Marketplace) | ||
To create a new version, copy the sub-directory tree for the latest version (e.g. v3.4.0) to a new one (e.g. v3.4.1) and make any needed modifications to the files in the new one. Then commit the changes to a new branch off of main and create a PR. Github actions have been configured to test charts using the Helm chart-testing tool when a PR is created. | ||
|
||
1. Log in to https://home.cloudcasa.io and add your Kubernetes cluster under the Protection tab. Note the returned cluster ID. | ||
2. Go to Apps & Marketplace in the Rancher UI. In the Chart section, check the Partners checkbox and click on the CloudCasa chart. | ||
3. Provide a Name (e.g. CloudCasa) and optional description. | ||
4. In the CloudCasa Configuration section, provide the Cluster ID obtained above. | ||
5. Click on the Install button to complete installation of the agent. | ||
6. Click on Upgrade version to upgrade the existing helmchart. | ||
|
||
**Note**: Validate the existence of four CRDS viz. volumesnapshotlocations.velero.io, volumesnapshotcontents.snapshot.storage.k8s.io, volumesnapshots.snapshot.storage.k8s.io and volumesnapshotclasses.snapshot.storage.k8s.io. If any one of the crds doesnt exist, execute the edit/upgrade operation. | ||
When a PR is merged into the main branch, an action should be triggered to package the new chart for the Helm repo, update the repo index, and publish it. A release should also be created. | ||
|
||
### Helm CLI Installation | ||
The Helm repo is published using GitHub Pages from the gh-pages branch in the cloudcasa-helmchart repo to https://catalogicsoftware.github.io/cloudcasa-helmchart/. Any changes to the Helm repo not handled by automation, such as updates to the README or logo files, should be submitted as PRs to the gh-pages branch. | ||
|
||
1. Log in to https://home.cloudcasa.io and add your Kubernetes cluster under the Protection tab. Note the returned cluster ID. | ||
2. Execute the following helm commands, replacing ```<ClusterID>``` with the Cluster ID obtained above: | ||
``` | ||
$ helm repo add cloudcasa-repo https://catalogicsoftware.github.io/cloudcasa-helmchart | ||
$ helm install cloudcasa.io cloudcasa-repo/cloudcasa --set cluster_id=<Cluster ID> | ||
``` | ||
This will install the CloudCasa agent and complete registration of the cluster with the CloudCasa service. | ||
|
||
## Updating the CloudCasa Agent | ||
1. Log in to https://home.cloudcasa.io and obtain the cluster ID for your cluster by selecting it under the Protection tab. | ||
2. Execute the following commands to update the agent: | ||
``` | ||
$ helm repo update | ||
$ helm upgrade cloudcasa.io cloudcasa-repo/cloudcasa --set cluster_id=<Cluster ID> | ||
``` | ||
|
||
**Note**: Validate the existence of four CRDS viz. volumesnapshotlocations.velero.io, volumesnapshotcontents.snapshot.storage.k8s.io, volumesnapshots.snapshot.storage.k8s.io and volumesnapshotclasses.snapshot.storage.k8s.io. If any one of the crds doesnt exist, again execute the upgrade command. | ||
|
||
## Uninstalling the CloudCasa Agent | ||
1. Execute the following commands to uninstall CloudCasa. | ||
``` | ||
$ helm uninstall cloudcasa.io | ||
$ kubectl delete namespace/cloudcasa-io clusterrolebinding/cloudcasa-io | ||
``` | ||
*CloudCasa is a trademark of Catalogic Software Inc.* |