ZebClient
Zebware.comCustomer Portal
  • ZebClient Documentation
  • Product Overview
    • Introduction to ZebClient
    • Functional Overview
    • Product Components
    • Data Flows
    • Data Striping
  • USE CASES
    • ZebClient Analytics
      • Architecture
        • Data Pipeline
        • Data Storage
        • Consumption
      • Deploy a ZebClient Advanced Cluster
        • Step 0 - Setup
      • FAQ
  • Planning & Getting Started
    • How to Choose your Deployment Mode
    • Deployment Modes and Tuning
    • Performance
    • License
    • Order Your ZebClient License
    • Pricing
  • Installation
    • Types of Installations
    • Guided Installation
      • ZebClient with Azure Blob Storage
        • Defining Backend with Azure Blob Storage
        • Mounting ZebClient with Azure Blob Storage
      • ZebClient with AWS S3
        • Defining Backend with AWS S3
        • Mounting ZebClient with AWS S3
      • Mount Additional Agent Node
    • Kubernetes
      • Azure Quickstart Guide
      • ZebClient CSI
      • ZebClient Helm
      • ZebClient Terraform
    • Virtual Machines
      • Azure Installation Guide
        • Installing Using Terraform
        • Uninstalling Using Terraform
    • Checking Installation
    • Running First Test
  • Management HOW-TOS
    • Add a New Agent VM into an Existing Cluster
    • Retrieve Cluster Log Files
    • CloudFormation Deployments
      • Understanding our CloudFormation Template
      • Uninstalling Using CloudFormation
    • Command-line Interface
  • Operations & Monitoring
    • Importing Your Data
    • Inlets
      • Data from External S3 Bucket
    • System Recovery Guide
      • Restore KeyDB Backup from S3
    • Port a Deploy
    • Add Resources to a Cluster
      • Add Application Node to Existing Machine (Manually)
      • Add Application Node to Existing Machine (via zc-cli)
      • Add New Application Node
      • Add Jumpbox
    • Verifying License Validity
    • Monitoring Your ZebClient Cluster with Netdata
Powered by GitBook
On this page
  • Deploy ZebClient with Helm
  • Prerequisites
  • Overview
  • Deploy Steps
  1. Installation
  2. Kubernetes

ZebClient Helm

PreviousZebClient CSINextZebClient Terraform

Last updated 1 year ago

Here you can find the to be used to install ZebClient.

Deploy ZebClient with Helm

Prerequisites

For this installation you must have previously created this infrastructure:

  • Object Storage (S3 bucket or Azure Blob Container).

  • Redis(keydb) databse.

  • Kubernetes cluster.

Overview

Each installation of ZebClient could vary depending on each customer requirements. What it will be done is to install an agent in an existing node and verify if an "application" pod can use a ZebClient volume.

Note: In this case, we will assume that the node pool doesn't have taints and doesn't have any preferences about where the pods should be scheduled. This configuration is supported in Helm charts with Tolerations and NodeSelectors if is required but not included in this example.

Deploy Steps

Step 1: Get Required data

For this example we will use a Kubernetes cluster deployed in Azure(aks) and an azure blob storage container to be used for cold storage. This data is required to start with the deployment:

  • ZebClient license

  • Database url

  • Database password

  • Azure storage account name

  • Azure storage account key

  • Azure blob storage container name

Step 2: Install Zebware Helm chart

helm repo add zebware https://gitlab.com/api/v4/projects/47395885/packages/helm/stable
helm repo update

Step 3: Deploy ZebClient singleton

This manages the dynamic provision of persistent volumes and data deletion from ZebClient filesystem depending of retention policy of the storage class.

Create a file called csi-singleton.yaml, for this file you will require :

  • ZebClient license.

  • Database url.

  • Database password.

cat << 'EOF' > csi-singletons.yaml
---
zebclient:
  license:
    key: "[zebclient_license]"
  agent:
    zcfs:
      metauri: "redis://[db_url]:6379/1"
      metapassword: "[db_password]"
EOF

and install csi-singletons chart in the cluster using the command:

helm upgrade --cleanup-on-fail \
  --install csi-singletons zebware/csi-singletons \
  --version=0.11.0 \
  --values ./csi-singletons.yaml

Step 4: Deploy ZebClient driver

This will manage the ops(read/write) towards ZebClient filesystem.

Create a file called csi-zebclient.yaml, for this file you will require all data mentioned in step 1.

cat << 'EOF' > csi-zebclient.yaml
---
zebclient:
  license:
    key: "[zebclient_license]"
  agent:
    zcfs:
      metapassword: "[db_password]"
      metauri: "redis://[db_url]:6379/1"
  coldStorage:
    enabled: true
    cloudProvider: "azure"
    azure:
      account:
        key: "[azure_storage_account_key]"
        name: "[azure_storage_account_name]"
      endpoint: "https://[azure_storage_account_name].blob.core.windows.net"
      container: "[azure_blob_storage_container_name]"
EOF

and install csi-singletons chart in the cluster using the command:

helm upgrade --cleanup-on-fail \
  --install csi-zebclient zebware/csi-zebclient \
  --version=0.11.0 \
  --values ./csi-zebclient.yaml

Then you are done with the deployment with Helm.

For a single node cluster you might get something like

kubectl get pods
NAME                  READY   STATUS    RESTARTS   AGE
csi-singletons-0      4/4     Running   0          1m
csi-zebclient-xxxxx   3/3     Running   0          1m

Note: If you don't know how to create this resources you can follow .

this guide
helm charts supported by Zebware