You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a Helm chart to deploy a Dremio cluster in kubernetes. It uses
6
-
a persistent volume for the master node to store the metadata for the
7
-
cluster. The default configuration uses the default persistent storage
8
-
supported by the kubernetes platform. For example,
5
+
This is a Helm chart to deploy a Dremio cluster in kubernetes. It uses a persistent volume for the master node to store the metadata for the cluster. The default configuration uses the default persistent storage supported by the kubernetes platform. For example,
9
6
10
7
| Kubernetes platform | Persistent store |
11
8
|---------------------|------------------|
@@ -14,210 +11,139 @@ supported by the kubernetes platform. For example,
14
11
| Google GKE | Persistent Disk |
15
12
| Local K8S on Docker | Hostpath |
16
13
17
-
If you want to use a different storage class available in your
18
-
kubernetes environment, add the storageClass in values.yaml.
19
-
20
-
An appropriate distributed file store (S3, ADLS, HDFS, etc) should be
21
-
used for paths.dist as this deployment will lose locally persisted
22
-
reflections and uploads. You can update config/dremio.conf. Dremio
This assumes you already have kubernetes cluster setup, kubectl
27
-
configured to talk to your kubernetes cluster and helm setup in your
28
-
cluster. Review and update values.yaml to reflect values for your
29
-
environment before installing the helm chart. This is specially
30
-
important for for the memory and cpu values - your kubernetes cluster
31
-
should have sufficient resources to provision the pods with those
32
-
values. If your kubernetes installation does not support serviceType
33
-
LoadBalancer, it is recommended to comment the serviceType value in
34
-
values.yaml file before deploying.
14
+
If you want to use a different storage class available in your kubernetes environment, add the storageClass in values.yaml.
35
15
36
-
#### Installing the helm chart
16
+
An appropriate distributed file store (S3, ADLS, HDFS, etc) should be used for paths.dist as this deployment will lose locally persisted reflections and uploads. You can update config/dremio.conf. Dremio [documentation](https://docs.dremio.com/deployment/distributed-storage.html) provides more information on this.
37
17
38
-
Review charts/dremio/values.yaml and adjust the values as per your
39
-
requirements. Note that the values for cpu and memory for the
40
-
coordinator and the executors are set to work with AKS on Azure with
41
-
worker nodes setup with machine types Standard_E16s_v3.
18
+
This assumes you already have kubernetes cluster setup, kubectl configured to talk to your kubernetes cluster and helm setup in your cluster. Review and update values.yaml to reflect values for your environment before installing the helm chart. This is specially important for for the memory and cpu values - your kubernetes cluster should have sufficient resources to provision the pods with those values. If your kubernetes installation does not support serviceType LoadBalancer, it is recommended to comment the serviceType value in values.yaml file before deploying.
42
19
43
-
Run this from the charts directory
20
+
#### Installing the helm chart
21
+
Review charts/dremio/values.yaml and adjust the values as per your requirements. Note that the values for cpu and memory for the coordinator and the executors are set to work with AKS on Azure with worker nodes setup with machine types Standard_E16s_v3.
44
22
23
+
Run this from the charts directory
45
24
```bash
46
-
cd charts helm install --wait dremio ```
47
-
48
-
If it takes longer than a couple of minutes to complete, check the
49
-
status of the pods to see where they are waiting. If they are pending
50
-
scheduling due to limited memory or cpu, either adjust the values in
51
-
values.yaml and restart the process or add more resources to your
52
-
kubernetes cluster.
25
+
cd charts
26
+
helm install --wait dremio
27
+
```
28
+
If it takes longer than a couple of minutes to complete, check the status of the pods to see where they are waiting. If they are pending scheduling due to limited memory or cpu, either adjust the values in values.yaml and restart the process or add more resources to your kubernetes cluster.
53
29
54
30
#### Connect to the Dremio UI
31
+
If your kubernetes supports serviceType LoadBalancer, you can get to the Dremio UI on the load balancer external ip.
55
32
56
-
If your kubernetes supports serviceType LoadBalancer, you can get to
57
-
the Dremio UI on the load balancer external IP. For example, if your
You can get to the Dremio UI using the value under column EXTERNAL-IP:
41
+
you can get to the Dremio UI using the value under column EXTERNAL-IP:
67
42
68
43
http://35.226.31.211:9047
69
44
70
-
If your kubernetes does not have support of serviceType LoadBalancer,
71
-
you can access the Dremio UI on the port exposed on the node. For
72
-
example, if the service output is:
45
+
If your kubernetes does not have support of serviceType LoadBalancer, you can access the Dremio UI on the port exposed on the node. For example, if the service output is:
Where there is no external IP and the Dremio master is running on node
81
-
"localhost", you can get to Dremio UI using:
52
+
where there is no external ip and the Dremio master is running on node "localhost", you can get to Dremio UI using:
82
53
83
54
http://localhost:30670
84
55
85
-
#### Dremio Client Port
86
56
87
-
The port 31010 is used for ODBC and JDBC connections. You can look up
88
-
service dremio-client in kubernetes to find the host to use for ODBC
89
-
or JDBC connections. Depending on your kubernetes cluster supporting
90
-
serviceType LoadBalancer, you will use the load balancer external-ip
91
-
or the node on which a coordinator is running.
57
+
#### Dremio Client Port
58
+
The port 31010 is used for ODBC and JDBC connections. You can look up service dremio-client in kubernetes to find the host to use for ODBC or JDBC connections. Depending on your kubernetes cluster supporting serviceType LoadBalancer, you will use the load balancer external-ip or the node on which a coordinator is running.
Logs are written to the container's console. All the logs - server.log, server.out, server.gc and access.log - are written into the console simultaneously. You can view the logs using kubectl.
70
+
```
71
+
kubectl logs <container-name>
72
+
```
73
+
You can also tail the logs using the -f parameter.
74
+
```
75
+
kubectl logs -f <container-name>
76
+
```
110
77
111
78
#### Scale by adding additional Coordinators or Executors (optional)
112
-
113
-
Get the name of the helm release. In the example below, the release
114
-
name is plundering-alpaca:
115
-
79
+
Get the name of the helm release. In the example below, the release name is plundering-alpaca.
If you need to add a core-site.xml, you can add the file to the config
209
-
directory and it will be propagated to all the pods on install or
210
-
upgrade of the deployment.
211
-
212
-
#### Important Changes
213
-
214
-
2019-09-19 (v0.1.0): BREAKING CHANGE.
215
-
216
-
Dremio versions before 4.0.0 are no longer supported by this Helm
217
-
chart. Dremio image specifier was split into an imageName and
218
-
imageTag parts to follow best practices. "dist" value in
219
-
dremio.conf moved to cloud storage where possible (otherwise
220
-
defaults to pdfs) -- this will lose any previously extant
221
-
reflections materialisations, user uploads, scratch files, etc.
222
-
Also added Cloud Cache support (new in Dremio 4.0). Please see
223
-
values.yaml for details on this new configuration.
147
+
Dremio configuration files used by the deployment are in the config directory. These files are propagated to all the pods in the cluster. Updating the configuration and upgrading the helm release - just like doing an upgrade - would refresh all the pods with the new configuration. [Dremio documentation](https://docs.dremio.com/deployment/README-config.html) covers the configuration capabilities in Dremio.
148
+
149
+
If you need to add a core-site.xml, you can add the file to the config directory and it will be propagated to all the pods on install or upgrade of the deployment.
0 commit comments