HPE Ezmeral Container Platform

This topic explains the process to deploy Dremio on the HPE Ezmeral Container Platform and connect to data lake storage.

Prerequisites

  • An existing Kubernetes cluster setup
  • Access to CLI with Helm 3 setup
  • Local kubectl configured to access your Kubernetes cluster
  • Dremio Helm Chart cloned to your Kubernetes cluster

Installation

Configuring Helm Chart for HPE Ezmeral

  1. From your Kubernetes Cluster, navigate to the values.yaml file within the Helm Chart directory.
  2. Review the default properties in values.yaml.

As part of setting up a Dremio cluster on Kubernetes, there are a number of important considerations that we recommend you review before deploying your cluster. Some of these values have an impact on the performance of your cluster and should be adjusted to your needs.

For a complete reference on all the options available in the values.yaml, see the Values.yaml Reference documentation — this document covers all the available options and provides small code samples for each configuration option.

  1. For HPE Ezmeral, you will need to change the Service Type in values.yaml from LoadBalancer to NodePort. screenshot

Tip: As a best practice, we recommend creating a values.local.yaml (or equivalently named file) that stores the values that you wish to override as part of your setup of Dremio. This allows you to quickly update to the latest version of the chart by copying the values.local.yaml across Helm chart updates.

Installing Helm Chart

  1. Navigate to the directory where Dremio Helm Chart is located.
  2. Run the following command:
$ helm install <release name> dremio_v2 -f <pathway>/values.yaml

Example:

$ helm install dremio dremio_v2 -f
./dremio_v2/values.yaml --namespace dremio

Note: If you created a values.local.yaml (or equivalently named file), use that instead of values.yaml

  1. Check the status of the installation using the following command:
$ kubectl get pods <pod name> 

Example:

$ kubectl get pods --namespace dremio

screenshot

If this process takes more than a couple of minutes to complete, check the status of the pods to see where they are waiting. If they are stuck in the Pending state for an extended period of time, check on the status of the pod to check that there are sufficient resources for scheduling. To check, use the following command on the pending pod:

$ kubectl describe pods <pod name>

Example:

$ kubectl describe pods --namespace dremio

If the events at the bottom of the output mention insufficient CPU or memory, either adjust the values in your values.local.yaml and restart the process or add more resources to your Kubernetes cluster.

  1. Once you see all the pods in a “ready” state, your setup is all done! See below on how to connect to the Dremio UI to get your first user setup and also how to connect via JDBC/ODBC.

Connection to Dremio User Interface

  1. Navigate to the HPE Ezmeral Container Platform Console.
  2. Click Applications on the left navigation pane.
  3. On the Applications screen, click Service Endpoints. screenshot
Service Port
ODBC/JDBC 31010
Web UI 9047
Apache Arrow Flight 32010
  1. Use the access point associated with the web service to access the UI.

Additional Resources

Connecting Dremio to Data Source(s): Dremio supports a variety of data sources, including NoSQL databases, relational databases, Hadoop, local filesystems, and cloud storage.

Connecting Dremio to Client Application: Dremio provides ODBC and JDBC interfaces, supporting a broad range of client applications.