Skip to content

Commit

Permalink
Add new v3.4.2 Helm chart (#19)
Browse files Browse the repository at this point in the history
* Remove build number from amds-kagent tag
* Update appVersion field in chart
* Change required k8s version to 1.20
* Update README and NOTES files
* Remove unneeded Rancher-specific files
* Remove uninstall comments from manifest file
* Remove Rancher-specific instructions from base README file
* Remove keep annotation on namespace in manifest
* Fix linter warnings
  • Loading branch information
bobadair authored Mar 14, 2024
1 parent 755b660 commit ba0f4ed
Show file tree
Hide file tree
Showing 5 changed files with 183 additions and 0 deletions.
18 changes: 18 additions & 0 deletions charts/v3.4.2/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: v2
name: cloudcasa
version: "3.4.2"
appVersion: "3.1.0"
kubeVersion: ">=1.20.0-0"
description: CloudCasa backup service for Kubernetes and cloud-native applications. Offering CloudCasa Pro and CloudCasa Velero management 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: CloudCasa Support
email: support@cloudcasa.io
52 changes: 52 additions & 0 deletions charts/v3.4.2/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# CloudCasa Kubernetes Agent

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

# Introduction

CloudCasa is a SaaS data protection, disaster recovery, migration, and replication solution for Kubernetes and cloud-native applications. Configuration is quick and easy, and basic service is free.

CloudCasa provides two types of backup services for Kubernetes:
* **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.
* **CloudCasa Velero Management** provides centralized management and monitoring, guided recovery, and commercial support for existing Velero backup installations.

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.20+
2. Helm 3.0+

## Installation

### Installing the CloudCasa Agent

1. Log in to https://home.cloudcasa.io and add your Kubernetes cluster under the Protection tab. Note the returned cluster ID.
2. Add the CloudCasa Helm repo to your Helm configuration, if it hasn't been added already.
```
$ helm repo add cloudcasa-repo https://catalogicsoftware.github.io/cloudcasa-helmchart
```
3. To install the agent, execute the following helm commands, replacing ```<Cluster ID>``` with the Cluster ID obtained above:
```
$ helm repo update
$ helm install cloudcasa 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. You can also obtain the current setting for it with the command ```helm get values cloudcasa```.
2. Execute the following commands to update the agent, replacing ```<Cluster ID>``` with the Cluster ID obtained above:
```
$ helm repo update
$ helm upgrade cloudcasa cloudcasa-repo/cloudcasa --set cluster_id=<Cluster ID>
```

## Uninstalling the CloudCasa Agent
1. Execute the following commands to uninstall CloudCasa.
```
$ helm uninstall cloudcasa
```
*CloudCasa is a trademark of Catalogic Software Inc.*
10 changes: 10 additions & 0 deletions charts/v3.4.2/templates/NOTES.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
Please be patient while the CloudCasa agent is being deployed. It may take several minutes.

The agent is configured with cluster ID: {{ .Values.cluster_id }}

Once the agent completes startup, the state shown for the cluster in the CloudCasa Clusters/Overview
page (https://home.cloudcasa.io/clusters/overview) will change to "Active".
If the cluster stays in the "Registered" or "Pending" state, you may have provided the wrong ClusterID.

You can check the agent deployment status using the command: kubectl get pods -n cloudcasa-io

99 changes: 99 additions & 0 deletions charts/v3.4.2/templates/cluster-register.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
---
# This list contains the CloudCasa Agent Manager and RBAC resources
# required to deploy the Cloudcasa agent.
apiVersion: v1
kind: List
metadata:
name: cloudcasa-agent
items:
{{- if not (lookup "v1" "Namespace" "cloudcasa-io" "cloudcasa-io") }}
- apiVersion: v1
kind: Namespace
metadata:
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
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
- 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 charts/v3.4.2/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 Cluster ID. To be provided by the user.
cluster_id: ""

0 comments on commit ba0f4ed

Please sign in to comment.