创建TelemetryService Yaml 文件

apiVersion: shifu.edgenesis.io/v1alpha1
kind: TelemetryService
metadata:
  name: push-endpoint-1
  namespace: devices
spec:
  telemetrySeriveEndpoint: http://telemetryservice.shifu-service.svc.cluster.local
  serviceSettings:
    SQLSetting:
      serverAddress: 192.168.14.163:6041
      secret: my-secret
      dbName: shifu
      dbTable: testTable2
      dbtype: TDengine
  • telemetrySeriveEndpoint是telemetryService的端点地址
  • serverAddress表示数据库地址
  • username表示你的数据库用户名
  • secret表示存储你的数据库用户名与密码的Secret名字
  • dbName表示数据库名
  • dbTable表示数据库表(table)名
  • dbtype表示数据库类型

创建Secret

以上面的secret中内容为名创建Secret,在usernamepassword域中分别填写数据库用户名与密码。

kubectl create secret generic my-secret --from-literal=username=your_username --from-literal=password=your_password -n devices

备注

如果你有多个遥测服务,你可以把它们写在一个文件里,用---进行分割。

编辑Configmap Yaml文件

# configmap.yaml
data:
  telemetries: |
    telemetries:
      device_health1:
        properties:
          instruction: status
          pushSettings:
            telemetryCollectionService: push-endpoint-1 # Edit it to the name same with TelemetryService's name

然后编辑Configmap.yaml文件,确保telemetryCollectionService的值与你在上一步创建的遥测服务的名称相同。

再次部署deviceShifu

然后你需要再次部署deviceShifu ,这样TelemetryService就会将采集到的数据推送到TDengine中。

例子

下面是一个例子,帮助你更好地了解如何使用它。

https://github.com/Edgenesis/shifu/tree/main/examples/tdengineTelemetryService/deployment


物联网Shifu
1 声望0 粉丝