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
  • Before You Start with ZebClient You Will Require
  • Get Azure Service Principal
  • Create a ZebClient Cluster
  • In Converged Mode:
  • In Direct Mode:
  • In Tiered Mode:
  • After Cluster Creation
  • Other Deployments
  1. Installation
  2. Kubernetes

Azure Quickstart Guide

A Quickstart guide to deploy a ZebClient cluster on Azure and Kubernetes using Terraform. Other deployments can be found on our public git repository.

PreviousKubernetesNextZebClient CSI

Last updated 1 year ago

Before You Start with ZebClient You Will Require

  • An azure subscription ()

    • azure cli ()

  • A valid ZebClient License, a trial license can be ordered by sending an email to info@zebware.com.

  • Helm ()

  • Terraform ()

  • Kubectl ()

  • (optional) NetData (), This is only needed if you want to get metrics about your cluster in NetData. If you provide the claim token and claim room information, NetData pods will be created and push metrics about your cluster.

Get Azure Service Principal

in a terminal, login to azure cli and run the command to get your azure service principal credentials. it will be required to create the AKS cluster resources.

az login
az ad sp create-for-rbac --name zebclient

You will get an output like:

{
  "appId": "#####-#####-####-#####-#####",
  "displayName": "zebclient",
  "password": "a_password",
  "tenant": "*****-*****-*****-*****-*****"
}

This appId and password will be needed to create Azure resources.

Create a ZebClient Cluster

Let's start!

First, get information for the variables rquired to deploy the cluster:

  • cluster_name: It's just a lower case dash separated string that will be used to name and group resources in Azure. It can't contain spaces or special characters.

  • public_access_cidrs: IPs allowed to connect to ZebClient's management node.

  • service_principal_client_id: appId value from the azure principal command executed before.

  • service_principal_client_secret: password value from the azure principal command executed before.

  • zebclient_license_key: A string with your ZebClient license.

Choose which type of cluster you want to deploy Converged, Direct or Tiered and continue from the step for the mode chosen.

In Converged Mode:

After this installation a cluster like this will be created:

In a terminal, run the commands from the next code block:

mkdir -p zc-converged
cd zc-converged
git clone --depth 1 https://gitlab.com/zebware/public/zebclient-examples.git .
cd azure-converged

terraform init
terraform apply --auto-approve \
  -var "cluster_name=zc-converged" \
  -var 'public_access_cidrs=["xxx.xxx.xxx.xxx/32"]' \
  -var 'service_principal_client_id=XXX-XXX-XXX-XXX' \
  -var 'service_principal_client_secret=******************' \
  -var 'zebclient_license_key=XXX-XXX-XXX-XXX-XXX-XXX'

In Direct Mode:

After this installation a cluster like this will be created:

In a terminal, run the commands from the next code block:

mkdir -p zc-direct
cd zc-direct
git clone --depth 1 https://gitlab.com/zebware/public/zebclient-examples.git .
cd azure-direct

terraform init
terraform apply --auto-approve \
  -var "cluster_name=zc-direct" \
  -var 'public_access_cidrs=["xxx.xxx.xxx.xxx/32"]' \
  -var 'service_principal_client_id=XXX-XXX-XXX-XXX' \
  -var 'service_principal_client_secret=******************' \
  -var 'zebclient_license_key=XXX-XXX-XXX-XXX-XXX-XXX'

In Tiered Mode:

After this installation a cluster like this will be created:

In a terminal, run the commands from the next code block:

mkdir -p zc-tiered
cd zc-tiered
git clone --depth 1 https://gitlab.com/zebware/public/zebclient-examples.git .
cd azure-tiered

terraform init
terraform apply --auto-approve \
  -var "cluster_name=zc-direct" \
  -var 'public_access_cidrs=["xxx.xxx.xxx.xxx/32"]' \
  -var 'service_principal_client_id=XXX-XXX-XXX-XXX' \
  -var 'service_principal_client_secret=******************' \
  -var 'zebclient_license_key=XXX-XXX-XXX-XXX-XXX-XXX'

After Cluster Creation

  • Access to your AKS cluster

terraform output -raw aks_kubeconfig > kubeconfig
export KUBECONFIG=$(pwd)/kubeconfig

You can test if you can access to your k8s cluster with

kubectl get pods

And then access agents and servers with

kubectl exec -it [pod_name] sh
  • SSH access for ZebClient Management Node

zc_mgmt_host=$(terraform output -raw mgmt_node_public_ip)
zc_mgmt_user=$(terraform output -raw mgmt_node_username)
terraform output -raw mgmt_node_ssh_key > keypair
chmod 600 keypair
ssh -i keypair $zc_mgmt_user@$zc_mgmt_host
  • To install ZebClient agent on any new VM, follow the steps below:

    • Once the deployment is completed, ssh to the ZebClient management node.

    • Run the zc-cli tool.

    • Choose option 2) Add ZebClient agent node and then follow instructions in the interactive session.

Other Deployments

For any other deployments, please visit our .

get azure subsription
installation
installation
installation
installation
get claim token and claim room
public git repository