Helm Deployment
Helm is a package manager for Kubernetes that simplifies the deployment, configuration, and management of Kubernetes applications. This guide introduces how to deploy the TDengine IDMP service on Kubernetes using a Helm Chart.
Prerequisites
- Install Kubernetes v1.24 or later.
- Install Helm 3.
- (Optional) To persist data, configure a PersistentVolume.
Install Helm
Run the following command to install Helm:
curl -fsSL -o get_helm.sh \
https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
chmod +x get_helm.sh
./get_helm.sh
Obtain the TDengine IDMP Helm chart
git clone https://github.com/taosdata/tdengine-idmp-deployment.git
cd tdengine-idmp-deployment/helm
Install TDengine IDMP
To install TDengine TSDB-Enterprise, refer to the following document: Deploy TDengine with Helm
-
Install TDengine IDMP with the Helm chart:
cd tdengine-idmp-deployment/helm
helm install tdengine-idmp .To use custom settings, you can specify a values file:
helm install tdengine-idmp . -f my-values.yaml
or command-line parameters:
helm install tdengine-idmp . --set key=value
The Helm parameters used to deploy TDengine IDMP are described as follows: You can set these parameters on the command line or in a values file.
Parameter | Description | Default |
---|---|---|
replicaCount | Number of replicas | 1 |
image.repository | Image repository | tdengine/idmp-ee |
image.tag | Image tag | latest |
image.pullPolicy | Image pull policy | IfNotPresent |
service.type | Kubernetes service type | ClusterIP |
service.port | Service port | 6042 |
resources | Resource requests and limits | {} |
persistence.enabled | Whether persistence is enabled | false |
persistence.size | Size of persistent volume | 2Gi |
persistence.storageClass | Persistent volume class | "" |
nodeSelector | Node selector for pod allocation | {} |
tolerations | Tolerance for pod allocation | [] |
affinity | Affinity for pod allocation | {} |
-
Access the service
- ClusterIP (Default): Forward the port as follows:
kubectl port-forward svc/tdengine-idmp 6042:6042 --address 0.0.0.0
Then access
localhost:6042
in a web browser.-
NodePort:
-
Obtain the node port and IP:
kubectl get svc tdengine-idmp
kubectl get nodes -o wide -
Access
https://<ip>:<nodeport>
in a browser.
-
-
LoadBalancer: Access the service through the external IP address provided by your cloud service provider.
-
To configure persistent storage, add the following configuration to
values.yml
:persistence:
enabled: true
size: 2GiEnsure that you have configured a PersistentVolume.
-
Run the following command to uninstall TDengine IDMP:
helm uninstall tdengine-idmp