本指南介绍如何使用 Kubernetes 和 Minikube 搭建 Trendz 分析集群。
前置条件
- ThingsBoard 版本 4.3.0 或更高。若使用 4.2.1 或更早版本,请参阅此指南将 Trendz 连接到 ThingsBoard。
- 已激活的 Trendz Analytics 插件。激活方法请参阅此指南。
您需要拥有 Kubernetes 集群,且 kubectl 命令行工具必须配置为可与集群通信。
若尚未安装 Minikube,请按此说明操作。
通过指定用于 Trendz 实例的节点并为该节点添加自定义标签来配置集群。利用亲和性设置,指示 Kubernetes 在指定节点上部署 Trendz 实例。 确保节点满足特定 CPU 和内存要求,典型用量约为 4 CPU 和 8GB 内存。您可设置自己的限制,但我们建议遵循或超过前述推荐规格。
安装步骤
步骤 1. 克隆 Trendz Kubernetes 脚本
1
2
git clone https://github.com/thingsboard/trendz-k8s.git --depth 1
cd trendz-k8s
步骤 2. 配置 Trendz 数据库
搭建外部 PostgreSQL 数据库实例,并创建名为 “trendz” 的空数据库。此实例可托管在 RDS(AWS)等服务上或作为您的有状态部署。 确保您拥有以下信息:
- URL(示例:jdbc:postgresql://trendz-db-service:5432/trendz)
- 用户名(示例:postgres)
- 密码(示例:postgres)
编辑 trendz-secret.yml 文件配置 Trendz 数据库:
1
nano trendz-secret.yml
1
2
3
4
SPRING_DATASOURCE_URL: jdbc:postgresql://trendz-db-service:5432/trendz
SPRING_DATASOURCE_USERNAME: postgres
SPRING_DATASOURCE_PASSWORD: postgres
步骤 3. 运行
1
2
3
4
5
6
7
8
kubectl apply -f trendz-namespace.yml
kubectl apply -f trendz-app-config.yml
kubectl apply -f trendz-app-db-config.yml
kubectl apply -f trendz-app-pvc.yml
kubectl apply -f trendz-app-deployment.yml
kubectl apply -f trendz-python-executor-config.yml
kubectl apply -f trendz-python-executor-deployment.yml
步骤 4. 检查日志
检查日志并确认实例已成功启动。 应出现以下行:
1
2
3
kubectl logs -f [trendz-pod-name]
Started TrendzApplication in 5.654 seconds (JVM running for 6.229)
其中:
trendz-pod-name- 从运行中的 trendz pod 列表获取的 trendz pod 名称。
步骤 5. 设置负载均衡器
最后一步是设置负载均衡器,将请求路由到 Trendz 实例。使用 trendz-ingress.yml 文件中的参考更新您当前的负载均衡器配置。
请勿直接应用此文件,仅供参考。 不同环境对此配置有不同要求,您需要根据环境调整这些设置。
步骤 6. 将 ThingsBoard 与 Trendz 同步
最后一步是确认 ThingsBoard 已与 Trendz 同步。操作如下:
- 以 Sysadmin 身份登录 ThingsBoard。
- 打开 Trendz Settings 页面。
若看到 “Synchronization completed successfully” 提示,说明同步已自动完成,无需进一步操作。
若出现错误提示,请按以下步骤排查:
- 确认 Trendz 正在运行。
- 填写正确的 Trendz internal URL,且 ThingsBoard 服务可访问。
- 填写正确的 ThingsBoard internal URL,且 Trendz 服务可访问。
- 点击 Save configuration。
- 点击 Retry discovery。
当出现 “Synchronization completed successfully” 后,同步即完成。
认证
默认可在 http://localhost:8888 访问 Trendz UI。
Trendz 使用 ThingsBoard 作为认证服务,首次认证需使用 ThingsBoard 中的 Tenant Administrator 凭证。
Topology Discovery
首次登录 Trendz 后,需发现拓扑以使 Trendz 识别资产、设备、其配置与关系:
- 点击 Discover Topology 按钮开始拓扑发现。
- 等待拓扑发现完成。
- 点击 Finish 按钮关闭拓扑发现页面并解锁 Trendz 主要功能。
更多关于 Trendz 如何使用拓扑的信息,请参阅此处。
下一步
-
快速入门指南 - 快速了解 Trendz 主要功能。
-
指标探索器 - 学习使用 Trendz Metric Explorer 探索和创建指标。
-
异常检测 - 学习识别数据中的异常。
-
字段计算 - 了解字段计算及使用方法。
-
状态 - 学习基于原始遥测定义和分析资产状态。
-
预测 - 学习进行预测及遥测行为预测。
-
筛选器 - 学习在分析中筛选数据集。
-
可用可视化部件 - 了解 Trendz 中可用的可视化部件及配置方法。
-
分享与嵌入可视化 - 学习将 Trendz 可视化添加到 ThingsBoard 仪表盘或第三方网页。
-
AI 助手 - 学习使用 Trendz AI 功能。