Local Kubernetes Deployment
This installation doc will help you start a OpenMetadata standalone instance on your local machine. openmetadata-helm-charts houses Kubernetes Helm charts for deploying OpenMetadata and its dependencies (Elasticsearch, MySQL and Airflow) on a Kubernetes cluster.Requirements
- A local Kubernetes cluster with installation of Docker Desktop or MiniKube
- kubectl to manage Kubernetes resources
- Helm to deploy resources based on Helm charts from the OpenMetadata repository
Procedure
1. Start Local Kubernetes Cluster
For this guide, we will be using minikube as our local kubernetes cluster. Run the following command to start a minikube cluster with 4 vCPUs and 8 GiB Memory.2. Create Kubernetes Secrets required for Helm Charts
Create kubernetes secrets that contains MySQL and Airflow passwords as secrets.3. Add Helm Repository for Local Deployment
Run the below command to add OpenMetadata Helm Repository -helm repo list to ensure the OpenMetadata repository was added.
4. Install OpenMetadata Dependencies Helm Chart
We created a separate chart to configure and install the OpenMetadata Application Dependencies with example configurations. Deploy the dependencies by running the following command -kubectl get pods to check whether all the pods for the dependencies are running. You should get a result similar to below.
running status and ready state.
Helm Chart for OpenMetadata Dependencies uses the following helm charts:
- Bitnami MySQL (helm chart version 9.7.2)
- OpenSearch (helm chart version 2.12.2)
- Airflow (helm chart version 8.8.0)
5. Install OpenMetadata Helm Chart
Deploy OpenMetadata Application by running the following command -kubectl get pods --selector=app.kubernetes.io/name=openmetadata to check the status of pods running. You should get a result similar to the output below -
running status and ready state.
6. Port Forward OpenMetadata Kubernetes Service to view UI
To expose the OpenMetadata UI on a local Kubernetes Cluster, run the below command -http.
Browse the Application with url http://localhost:8585 from your Browser. The default login credentials are admin@open-metadata.org:admin to log into OpenMetadata Application.
7. Cleanup
Use the below command to uninstall OpenMetadata Helm Charts Release.pvc). These will need to be manually cleaned after helm uninstall. You can use kubectl delete persistentvolumeclaims mysql-0 elasticsearch-0 CLI command for the same.
Troubleshooting
Pods fail to start due to ErrImagePull issue
Sometimes, kubernetes timeout pulling the docker images. In such cases, you will receive ErrImagePull issue. In order to resolve this, you can manually pull the required docker images in your kubernetes environment.
You can find the docker image name of the failing pods using the command below -
docker pull <docker_image_name> will make sure to get the image available for kubernetes and resolve the issue.
View openmetadata kubernetes pod logs
Run the below command to list openmetadata kubernetes pods deployed in a namespace:openmetadata in the namespace ometa-dev:
Next Steps
- Refer the How-to Guides for an overview of all the features in OpenMetadata.
- Visit the Connectors documentation to see what services you can integrate with OpenMetadata.
- Visit the API documentation and explore the rich set of OpenMetadata APIs.
Deploy in Cloud (Production)
Deploy in Cloud
Deploy OpenMetadata in Kubernetes Cloud Environments