- Set up a kubernetes cluster
- Install the following tools:
The main components are powered by 4 external dependencies:
- Local DB (MySQL, Postgres, MariaDB)
- Search Index (Elasticsearch)
- Graph Index (Supports only Neo4j)
The dependencies must be deployed before deploying Datahub. We created a separate chart for deploying the dependencies with example configuration. They could also be deployed separately on-prem or leveraged as managed services.
Assuming kubectl context points to the correct kubernetes cluster, first create kubernetes secrets that contain MySQL and Neo4j passwords.
The above commands sets the passwords to "datahub" as an example. Change to any password of choice.
Second, deploy the dependencies by running the following
Note, after changing the configurations in the values.yaml file, you can run
To just redeploy the dependencies impacted by the change.
kubectl get pods to check whether all the pods for the dependencies are running.
You should get a result similar to below.
deploy Datahub by running the following
Values in values.yaml have been preset to point to the dependencies deployed using the prerequisites chart with release name "prerequisites". If you deployed the helm chart using a different release name, update the quickstart-values.yaml file accordingly before installing.
kubectl get pods to check whether all the datahub pods are running. You should get a result similar to below.
You can run the following to expose the frontend locally. Note, you can find the pod name using the command above.
In this case, the datahub-frontend pod name was
You should be able to access the frontend via http://localhost:9002.
Once you confirm that the pods are running well, you can set up ingress for datahub-frontend to expose the 9002 port to the public.
|helm uninstall datahub||Remove DataHub|
|helm ls||List of Helm charts|
|helm history||Fetch a release history|