跳到主要内容

使用 Helm 部署

Helm 是 Kubernetes 的包管理工具,用于简化 Kubernetes 应用程序的部署、配置和管理。本指南介如何在 Kubernetes 上通过 Helm Chart 部署 TDengine IDMP 服务。

前置条件

  1. 本文适用 Kubernetes v1.24 以上版本
  2. 已安装 Helm 3
  3. (可选)如需启用持久化存储,需配置 PersistentVolume 供应器

安装 Helm

如未安装 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

获取 TDengine IDMP Chart

git clone https://github.com/taosdata/tdengine-idmp-deployment.git
cd tdengine-idmp-deployment/helm

部署 TDengine IDMP 服务

信息

如需部署 TDengine TSDB 服务,请参考官方文档:
使用 Helm 部署 TDengine 集群

1. 使用默认配置安装

cd tdengine-idmp-deployment/helm
helm install tdengine-idmp .

2. 自定义参数安装

如需自定义参数,可通过自定义 values 文件后安装:

helm install tdengine-idmp . -f my-values.yaml

或通过命令行覆盖参数:

helm install tdengine-idmp . --set key=value

下表列出了部署 TDengine IDMP 时常用的 Helm 参数。您可以通过 --set key=value 或编辑 values.yaml 文件进行自定义。

参数描述默认值
replicaCount副本数量1
image.repository镜像仓库tdengine/tdengine-idmp
image.tag镜像标签latest
image.pullPolicy镜像拉取策略IfNotPresent
service.typeKubernetes 服务类型ClusterIP
service.port服务端口6042
resources资源请求和限制{}
persistence.enabled启用持久化存储false
persistence.size持久卷大小2Gi
persistence.storageClass持久卷的存储类""
nodeSelectorPod 分配的节点选择器{}
tolerationsPod 分配的容忍设置[]
affinityPod 分配的亲和性规则{}

3. 访问服务

  • ClusterIP(默认): 使用端口转发访问:

    kubectl port-forward svc/tdengine-idmp 6042:6042 --address 0.0.0.0

    然后访问 http://localhost:6042

  • NodePort:

    1. 获取 NodePort 和节点 IP:

      kubectl get svc tdengine-idmp
      kubectl get nodes -o wide
    2. 通过 http://<节点IP>:<NodePort> 访问服务。

  • LoadBalancer: 通过云服务商分配的外部 IP 访问。

4. 持久化存储

如需启用持久化,在 values.yaml 中设置:

persistence:
enabled: true
size: 2Gi

确保集群已配置 PersistentVolume 供应。

5. 卸载与清理

如需删除所有资源,执行:

helm uninstall tdengine-idmp