arrow-left

All pages
gitbookPowered by GitBook
1 of 4

Loading...

Loading...

Loading...

Loading...

Running on Azure

This starter guide provides a quick start for running Pinot on Microsoft Azure

This document provides the basic instruction to set up a Kubernetes Cluster on Azure Kubernetes Service (AKS)arrow-up-right

hashtag
1. Tooling Installation

hashtag
1.1 Install Kubectl

Please follow this link () to install kubectl.

For Mac User

Please check kubectl version after installation.

circle-info

QuickStart scripts are tested under kubectl client version v1.16.3 and server version v1.13.12

hashtag
1.2 Install Helm

Please follow this link () to install helm.

For Mac User

Please check helm version after installation.

circle-info

This QuickStart provides helm supports for helm v3.0.0 and v2.12.1. Please pick the script based on your helm version.

hashtag
1.3 Install Azure CLI

Please follow this link () to install Azure CLI.

For Mac User

hashtag
2. (Optional) Login to your Azure account

Below script will open default browser to sign-in to your Azure Account.

hashtag
3. (Optional) Create a Resource Group

Below script will create a resource group in location eastus.

hashtag
4. (Optional) Create a Kubernetes cluster(AKS) in Azure

Below script will create a 3 nodes cluster named pinot-quickstart for demo purposes.

Please modify the parameters in the example command below:

Once the command is succeed, it's ready to be used.

hashtag
5. Connect to an existing cluster

Simply run below command to get the credential for the cluster pinot-quickstart that you just created or your existing cluster.

To verify the connection, you can run:

hashtag
6. Pinot Quickstart

Please follow this to deploy your Pinot Demo.

hashtag
7. Delete a Kubernetes Cluster

Running on GCP

This starter provides a quick start for running Pinot on Google Cloud Platform (GCP)

This document provides the basic instruction to set up a Kubernetes Cluster on

hashtag
1. Tooling Installation

hashtag

https://kubernetes.io/docs/tasks/tools/install-kubectlarrow-up-right
https://helm.sh/docs/using_helm/#installing-helmarrow-up-right
https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latestarrow-up-right
Kubernetes QuickStart
1.1 Install Kubectl

Please follow this link (https://kubernetes.io/docs/tasks/tools/install-kubectlarrow-up-right) to install kubectl.

For Mac User

Please check kubectl version after installation.

circle-info

QuickStart scripts are tested under kubectl client version v1.16.3 and server version v1.13.12

hashtag
1.2 Install Helm

Please follow this link (https://helm.sh/docs/using_helm/#installing-helmarrow-up-right) to install helm.

For Mac User

Please check helm version after installation.

circle-info

This QuickStart provides helm supports for helm v3.0.0 and v2.12.1. Please pick the script based on your helm version.

hashtag
1.3 Install Google Cloud SDK

__

Please follow this link (https://cloud.google.com/sdk/installarrow-up-right) to install Google Cloud SDK.

hashtag
1.3.1 For Mac User

  • Install Google Cloud SDK

  • Restart your shell

hashtag
2. (Optional) Initialize Google Cloud Environment

hashtag
3. (Optional) Create a Kubernetes cluster(GKE) in Google Cloud

Below script will create a 3 nodes cluster named pinot-quickstart in us-west1-b with n1-standard-2 machines for demo purposes.

Please modify the parameters in the example command below:

You can monitor cluster status by command:

Once the cluster is in RUNNING status, it's ready to be used.

hashtag
4. Connect to an existing cluster

Simply run below command to get the credential for the cluster pinot-quickstart that you just created or your existing cluster.

To verify the connection, you can run:

hashtag
5. Pinot Quickstart

Please follow this Kubernetes QuickStart to deploy your Pinot Demo.

hashtag
6. Delete a Kubernetes Cluster

Google Kubernetes Engine(GKE)arrow-up-right
brew install kubernetes-cli
kubectl version
brew install kubernetes-helm
helm version
brew update && brew install azure-cli
az login
AKS_RESOURCE_GROUP=pinot-demo
AKS_RESOURCE_GROUP_LOCATION=eastus
az group create --name ${AKS_RESOURCE_GROUP} \
                --location ${AKS_RESOURCE_GROUP_LOCATION}
AKS_RESOURCE_GROUP=pinot-demo
AKS_CLUSTER_NAME=pinot-quickstart
az aks create --resource-group ${AKS_RESOURCE_GROUP} \
              --name ${AKS_CLUSTER_NAME} \
              --node-count 3
AKS_RESOURCE_GROUP=pinot-demo
AKS_CLUSTER_NAME=pinot-quickstart
az aks get-credentials --resource-group ${AKS_RESOURCE_GROUP} \
                       --name ${AKS_CLUSTER_NAME}
kubectl get nodes
AKS_RESOURCE_GROUP=pinot-demo
AKS_CLUSTER_NAME=pinot-quickstart
az aks delete --resource-group ${AKS_RESOURCE_GROUP} \
              --name ${AKS_CLUSTER_NAME}
brew install kubernetes-cli
kubectl version
brew install kubernetes-helm
helm version
curl https://sdk.cloud.google.com | bash
exec -l $SHELL
gcloud init
GCLOUD_PROJECT=[your gcloud project name]
GCLOUD_ZONE=us-west1-b
GCLOUD_CLUSTER=pinot-quickstart
GCLOUD_MACHINE_TYPE=n1-standard-2
GCLOUD_NUM_NODES=3
gcloud container clusters create ${GCLOUD_CLUSTER} \
  --num-nodes=${GCLOUD_NUM_NODES} \
  --machine-type=${GCLOUD_MACHINE_TYPE} \
  --zone=${GCLOUD_ZONE} \
  --project=${GCLOUD_PROJECT}
gcloud compute instances list
GCLOUD_PROJECT=[your gcloud project name]
GCLOUD_ZONE=us-west1-b
GCLOUD_CLUSTER=pinot-quickstart
gcloud container clusters get-credentials ${GCLOUD_CLUSTER} --zone ${GCLOUD_ZONE} --project ${GCLOUD_PROJECT}
kubectl get nodes
GCLOUD_ZONE=us-west1-b
gcloud container clusters delete pinot-quickstart --zone=${GCLOUD_ZONE}

Public cloud examples

This page contains multiple quick start guides for deploying Pinot to a public cloud provider.

The following quick start guides will show you how to run an Apache Pinot cluster using Kubernetes on different public cloud providers.

Running on Azurechevron-right
Running on GCPchevron-right
Running on AWSchevron-right

Running on AWS

This guide provides a quick start for running Pinot on Amazon Web Services (AWS).

This document provides the basic instruction to set up a Kubernetes Cluster on Amazon Elastic Kubernetes Service (Amazon EKS)arrow-up-right

hashtag
1. Tooling Installation

hashtag
1.1 Install Kubectl

Please follow this link () to install kubectl.

For Mac User

Please check kubectl version after installation.

circle-info

QuickStart scripts are tested under kubectl client version v1.16.3 and server version v1.13.12

hashtag
1.2 Install Helm

Please follow this link () to install helm.

For Mac User

Please check helm version after installation.

circle-info

This QuickStart provides helm supports for helm v3.0.0 and v2.12.1. Please pick the script based on your helm version.

hashtag
1.3 Install AWS CLI

__

Please follow this link () to install AWS CLI.

For Mac User

hashtag
1.4 Install Eksctl

Please follow this link () to install AWS CLI.

For Mac User

hashtag
2. (Optional) Login to your AWS account.

For first time AWS user, please register your account at .

Once created the account, you can go to to create a user and create access keys under Security Credential tab.

circle-info

Environment variables AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY will override AWS configuration stored in file ~/.aws/credentials

hashtag
3. (Optional) Create a Kubernetes cluster(EKS) in AWS

Below script will create a 3 nodes cluster named pinot-quickstart in us-west-2 with t3.small machines for demo purposes.

Please modify the parameters in the example command below:

You can monitor cluster status by command:

Once the cluster is in ACTIVE status, it's ready to be used.

hashtag
4. Connect to an existing cluster

Simply run below command to get the credential for the cluster pinot-quickstart that you just created or your existing cluster.

To verify the connection, you can run:

hashtag
5. Pinot Quickstart

Please follow this to deploy your Pinot Demo.

hashtag
6. Delete a Kubernetes Cluster

https://kubernetes.io/docs/tasks/tools/install-kubectlarrow-up-right
https://helm.sh/docs/using_helm/#installing-helmarrow-up-right
https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html#install-tool-bundledarrow-up-right
https://docs.aws.amazon.com/eks/latest/userguide/eksctl.html#installing-eksctlarrow-up-right
https://aws.amazon.com/arrow-up-right
AWS Identity and Access Management (IAM)arrow-up-right
Kubernetes QuickStart
brew install kubernetes-cli
kubectl version
brew install kubernetes-helm
helm version
curl "https://d1vvhvl2y92vvt.cloudfront.net/awscli-exe-macos.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
brew tap weaveworks/tap
brew install weaveworks/tap/eksctl
aws configure
EKS_CLUSTER_NAME=pinot-quickstart
eksctl create cluster \
--name ${EKS_CLUSTER_NAME} \
--version 1.14 \
--region us-west-2 \
--nodegroup-name standard-workers \
--node-type t3.small \
--nodes 3 \
--nodes-min 3 \
--nodes-max 4 \
--node-ami auto
EKS_CLUSTER_NAME=pinot-quickstart
aws eks describe-cluster --name ${EKS_CLUSTER_NAME}
EKS_CLUSTER_NAME=pinot-quickstart
aws eks update-kubeconfig --name ${EKS_CLUSTER_NAME}
kubectl get nodes
EKS_CLUSTER_NAME=pinot-quickstart
aws eks delete-cluster --name ${EKS_CLUSTER_NAME}