Deploy Okera Using Helm Charts¶
Okera is provided as a set of Docker images that run as containers in managed Kubernetes environments, such AWS Elastic Kubernetes Service (EKS), Azure Kubernetes Service (AKS), or Google Kubernetes Engine (GKE). You can use Helm charts, a Kubernetes package manager, to deploy and configure your Okera cluster in any of these Kubernetes environments. For more information about Helm, see the Helm documentation.
Prerequisites¶
The following prerequisites must be met before you attempt to deploy Okera using Helm charts.
-
Kubernetes and its
kubectl
utility must be installed if they are not already installed in your environment. Okera deployments using versions of Kubernetes up to 1.23 have been tested. See the Kubernetes documentation for AWS EKS, AKS, or GKE, as appropriate for your environment. -
Helm must be installed if it is not already installed. Okera deployments support using Helm client version 3.7.1. See Installing Helm.
-
The Kubernetes user who performs the Okera deployment must be assigned a role that has specific permissions. The Kubernetes
admin
role has these permissions, but any role will work as long as it includes permissions to create, update, and delete:- Secrets
ClusterRoles
andClusterRoleBindings
ConfigMap
s- Deployments
- Services
- Pods
Identify the role and associated user in your Kubernetes environment before you start the deployment.
Deployment Steps¶
When all prerequisites have been met, complete the following deployment steps.
- Step 1. Set Up Authorization
- Step 2. Configure the Okera Helm Repository (Optional)
- Step 3. Download and Unzip the Okera Helm Chart
- Step 4. Modify the
values.yaml
File for Your Environment - Step 5. Apply the Helm Chart
Step 1. Set Up Authorization¶
Before you can deploy Okera using Helm charts, you must update the Kubernetes kubeconfig
file with appropriate user credentials so you can use Helm to deploy and manage your Okera cluster. The method by which you do this varies, based on the environment you are using.
-
In AWS EKS environments, use the AWS CLI to obtain the appropriate credentials. See Configuring the AWS CLI to use AWS IAM Identity Center.
-
In Azure AKS environments, use the Azure CLI to obtain the appropriate credentials. Use the az aks get-credentials command.
-
In Google GKE environments, use the Google Cloud CLI to obtain the appropriate credentials. Use the gcloud container clusters get-credentials command.
Each of these updates a kubeconfig
file in the appropriate environment with appropriate credentials and endpoint information to point kubectl
to a specific cluster.
Step 2. Add the Okera Helm Charts Repository to Your Helm Repository List¶
Create the Helm repository for Okera. By default, this repository is named okera
.
To add a Helm repository specifically for Okera (called okera
), run the following Helm command:
$ helm repo add okera https://charts.okeracloud.io/stable
When you are finished, you can verify the presence of the repository by running the following Helm command:
$ helm search repo okera
Step 3. Download and Unzip the Okera Helm Chart¶
To download and unzip the Okera Helm chart, run the following command.
$ helm fetch okera/okera-cluster --untar
Step 4. Modify the values.yaml
File for Your Environment¶
Change to the okera-cluster
chart directory and edit the values.yaml
file. This is the configuration file for your Okera cluster.
$ cd okera-cluster
$ vi values.yaml
The configuration file stores settings for your Okera cluster. For more information, see The Configuration File.
Step 5. Apply the Helm Chart¶
Apply the Helm chart to install the Okera instance. Run the following command:
$ helm install okera . -f values.yaml
To verify the cluster is running, run kubectl get pods
or watch kubectl get pods
. These Kubernetes CLI commands allow you to veiw the current status of the Okera cluster's pods or watch the status of the pods as they change.
Update a Helm-Deployed Cluster¶
To update a Helm-deployed Okera cluster, modify the values.yaml
file in the Helm chart and run the following Helm command:
$ helm upgrade --install okera . -f values.yaml
For complete information about the values.yaml
file, see The Okera Configuration File.
Uninstall a Helm-Deployed Cluster¶
To uninstall a Helm-deployed cluster:
-
Run
$ helm list
to view the full cluster name. The output from this command looks like this: ``` NAME NAMESPACE REVISION okera-cluster-1659661183 default 1 -
Copy the full name of the cluster and run the following Helm command:
$ helm uninstall okera-cluster-1659661183 --namespace default
This removes the specific application of the Okera cluster.