Skip to content

Commit

Permalink
Pushing CloudCasa Helm chart version v3.4.1
Browse files Browse the repository at this point in the history
  • Loading branch information
nitishdsharma committed Jul 11, 2023
1 parent e1e899f commit 82a3f0f
Show file tree
Hide file tree
Showing 7 changed files with 215 additions and 0 deletions.
18 changes: 18 additions & 0 deletions v3.4.1/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: v2
name: cloudcasa
version: "3.4.1"
appVersion: "3.4.1"
kubeVersion: ">=1.17.0-0"
description: CloudCasa backup service for Kubernetes and cloud native applications. Offering CloudCasa Pro and CloudCasa for Velero services.
home: https://cloudcasa.io
icon: https://raw.githubusercontent.com/catalogicsoftware/cloudcasa-helmchart/gh-pages/logo.png
keywords:
- backup
- restore
- migration
- catalogic
- cloudcasa
- velero
maintainers:
- name: catalogicsoftware
email: [email protected]
62 changes: 62 additions & 0 deletions v3.4.1/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# CloudCasa Kubernetes Agent

[CloudCasa](https://cloudcasa.io) - Leader in Kubernetes Data Protection and Application Resiliency

# Introduction

CloudCasa is a SaaS data protection, recovery, and migration solution for Kubernetes. Configuration is quick and easy, and the basic service is free.

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.

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 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.

## Prerequisites

1. Kubernetes 1.17+
2. Helm 3.0+

## Installation

### Rancher Installation (Apps & Marketplace)

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.

### Helm CLI Installation

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.*
6 changes: 6 additions & 0 deletions v3.4.1/app-readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# CloudCasa Kubernetes Agent

### [CloudCasa](https://cloudcasa.io) - Leader in Kubernetes Data Protection and Application Resiliency

CloudCasa is a SaaS solution that provides class-leading data protection services for Kubernetes and cloud native applications.
Configuration is quick and easy, and basic service is free. See the CloudCasa [Getting Started Guide](https://cloudcasa.io/get-started) for more information.
13 changes: 13 additions & 0 deletions v3.4.1/questions.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
namespace: cloudcasa-io
labels:
io.rancher.certified: partner
categories:
- Application
questions:
- variable: cluster_id
default: ""
description: "CloudCasa Cluster ID"
type: string
required: true
label: CLUSTER ID
group: "CloudCasa Configuration"
5 changes: 5 additions & 0 deletions v3.4.1/templates/NOTES.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
-----Please be patient while the chart is being deployed-----

Tip: Watch the App deployment status using the command: kubectl/oc get pods -n cloudcasa-io

Monitor the Cloudcasa UI, the registered cluster should be moved to Ready State. If the cluster is still in Pending state, wrong ClusterID would have been provided.
107 changes: 107 additions & 0 deletions v3.4.1/templates/cluster-register.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
# Manifest created on 2023-04-3
# -----------------------------------------------------------------------
# Steps to delete CloudCasa from the cluster are:
# -----------------------------------------------------------------------
# kubectl delete namespace/cloudcasa-io clusterrolebinding/cloudcasa-io
# kubectl delete crds -l component=kubeagent_backup_helper
# -----------------------------------------------------------------------

apiVersion: v1
kind: List
# This list contains Cloudcasa Agent Manager and RBAC resources
# required to deploy the Cloudcasa Kube Agent
items:
{{- if not (lookup "v1" "Namespace" "cloudcasa-io" "cloudcasa-io") }}
- apiVersion: v1
kind: Namespace
metadata:
annotations:
"helm.sh/resource-policy": keep
creationTimestamp: null
labels:
component: kubeagent-backup-helper
name: cloudcasa-io
spec: {}
{{- end }}
- apiVersion: v1
kind: ServiceAccount
metadata:
creationTimestamp: null
labels:
component: kubeagent-backup-helper
name: cloudcasa-io
namespace: cloudcasa-io
- apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
creationTimestamp: null
labels:
component: kubeagent-backup-helper
name: cloudcasa-io
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: cloudcasa-io
namespace: cloudcasa-io
- apiVersion: apps/v1
kind: Deployment
metadata:
name: cloudcasa-kubeagent-manager
namespace: cloudcasa-io
labels:
component: cloudcasa-kubeagent-manager
spec:
selector:
matchLabels:
app: cloudcasa-kubeagent-manager
strategy:
type: Recreate
replicas: 1
template:
metadata:
labels:
app: cloudcasa-kubeagent-manager
spec:
containers:
- image: catalogicsoftware/amds-kagent:3.1.0-prod.230
args: ["/usr/local/bin/kubeagentmanager", "--server_addr", "agent.cloudcasa.io:443", "--tls", "true"]
name: kubeagentmanager
resources:
requests:
memory: "64Mi"
cpu: "250m"
limits:
memory: "128Mi"
cpu: "500m"
volumeMounts:
- mountPath: /scratch
name: scratch
env:
- name: MY_POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: AMDS_CLUSTER_ID
value: {{ .Values.cluster_id }}
- name: KUBEMOVER_IMAGE
value: catalogicsoftware/amds-kagent:3.1.0-prod.230
- name: DEPLOYMENT_PLATFORM
{{ if (lookup "v1" "Namespace" "" "cattle-system") }}
value: "rancher"
{{ else if (lookup "v1" "Namespace" "" "nirmata") }}
value: "nirmata"
{{ else if (lookup "v1" "Namespace" "" "rafay-system") }}
value: "rafay"
{{ else }}
value: "helm"
{{ end }}
restartPolicy: Always
terminationGracePeriodSeconds: 0
serviceAccountName: cloudcasa-io
volumes:
- emptyDir: {}
name: scratch
---
4 changes: 4 additions & 0 deletions v3.4.1/values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
## Please, note that this will override the parameters, including dependencies, configured to use the global value

## Cloudcasa AMDS Cluster ID. To be provided by the user.
cluster_id: ""

0 comments on commit 82a3f0f

Please sign in to comment.