Ozone on Kubernetes
- Working kubernetes cluster (LoadBalancer, PersistentVolume are not required)
- kubectl
As the apache/ozone docker images are available from the dockerhub the deployment process is very similar to Minikube deployment. The only big difference is that we have dedicated set of k8s files for hosted clusters (for example we can use one datanode per host) Deploy to kubernetes
kubernetes/examples
folder of the ozone distribution contains kubernetes deployment resource files for multiple use cases.
To deploy to a hosted cluster use the ozone subdirectory:
cd kubernetes/examples/ozone
kubectl apply -f .
And you can check the results with
kubectl get pod
Access the services
Now you can access any of the services. By default the services are not published but you can access them with port-forward rules.
kubectl port-forward s3g-0 9878:9878
kubectl port-forward scm-0 9876:9876
Apache Ozone Helm Chart
For a streamlined deployment of Apache Ozone on Kubernetes, consider using the Apache Ozone Helm Chart. This Helm Chart simplifies the installation and management of an Ozone cluster by packaging best practices into a set of configurable Kubernetes resources.
-
Add the Ozone Helm Repository
First, add the Apache Ozone Helm repository and update your local Helm repo cache:
helm repo add ozone-helm https://apache.github.io/ozone-helm-charts/ helm repo update
-
Install the Chart
Install the Ozone Helm Chart using the following command. This command deploys a default Ozone cluster:
helm install my-ozone-cluster ozone-helm/ozone
-
Customize Your Deployment
To customize the configuration, create or modify a values.yaml file with your desired settings and install the chart as follows:
helm install my-ozone-cluster -f values.yaml ozone-helm/ozone
For more detailed documentation and advanced configuration options, please refer to the Apache Ozone Helm Chart documentation.
Next >>