emqx/ekuiper-managereKuiper manager是由EMQ提供的eKuiper首选管理Web控制台,用户可通过它管理一个至多个eKuiper实例,完全免费使用。该控制台支持eKuiper规则的全生命周期管理,只要能连接到eKuiper的REST端口,即可与eKuiper部署在同一机器或独立机器上。
!架构图
适用于需要通过Web界面管理eKuiper规则和实例的场景,包括但不限于:
shelldocker pull emqx/ekuiper-manager:1.8.0 docker pull lfedge/ekuiper:1.8.0
创建docker-compose.yml文件,内容如下:
yamlversion: '3.4' services: manager: image: emqx/ekuiper-manager:1.8.0 container_name: manager ports: - "9082:9082" # 管理控制台端口 restart: unless-stopped volumes: - /tmp/manager_data:/ekuiper-manager/data # 持久化管理数据 environment: DEFAULT_EKUIPER_ENDPOINT: "[***]" # 默认eKuiper实例地址 ekuiper: image: lfedge/ekuiper:1.8.0 ports: - "9081:9081" # eKuiper REST API端口 container_name: ekuiper hostname: ekuiper restart: unless-stopped user: root volumes: - /tmp/data:/kuiper/data # eKuiper数据持久化 - /tmp/log:/kuiper/log # eKuiper日志持久化 environment: MQTT_SOURCE__DEFAULT__SERVER: "tcp://broker.emqx.io:1883" # 默认MQTT源服务器 KUIPER__BASIC__CONSOLELOG: "true" # 启用控制台日志 KUIPER__BASIC__IGNORECASE: "false" # 不忽略大小写
启动服务:
shelldocker-compose up -d
shelldocker run -d -p 9081:9081 --name kuiper \ -e MQTT_SOURCE__DEFAULT__SERVER="tcp://broker.emqx.io:1883" \ lfedge/ekuiper:1.8.0
shelldocker run -d -p 9082:9082 \ -e DEFAULT_EKUIPER_ENDPOINT="[***]" \ emqx/ekuiper-manager:1.8.0
[***](将$yourhost替换为部署主机IP)adminpublic!登录界面
通过上述步骤已配置默认eKuiper实例。如需修改eKuiper实例地址,可更改DEFAULT_EKUIPER_ENDPOINT环境变量并重启eKuiper manager。
!添加服务
需要MQTT broker作为eKuiper规则的数据源。推荐使用EMQ,或使用公共MQTT测试服务器tcp://broker.emqx.io:1883。
示例场景:通过MQTT接收传感器的温度和湿度数据,当5秒时间窗口内平均温度超过30°C时触发告警。
demo的流,配置如下:
demotcp://broker.emqx.io:1883(如需使用其他服务器,可点击"添加配置键"设置新配置)!创建流
demo流。进入"规则"页面,点击"创建规则"
填写规则ID、名称,并输入SQL:
sqlSELECT count(*), avg(temperature) AS avg_temp, max(humidity) AS max_hum FROM demo GROUP BY TUMBLINGWINDOW(ss, 5) HAVING avg_temp > 30
!创建规则
添加MQTT动作:
mqttresult/rule1)!MQTT动作配置
点击"提交",规则列表中会显示创建的myRule规则并自动启动。
在"规则"页面可查看所有规则及其状态:
!规则列表
!规则状态
DEFAULT_EKUIPER_ENDPOINT:默认eKuiper实例的REST API地址(如[***])MQTT_SOURCE__DEFAULT__SERVER:默认MQTT数据源服务器地址KUIPER__BASIC__CONSOLELOG:是否启用控制台日志(true/false)KUIPER__BASIC__IGNORECASE:是否忽略SQL大小写(true/false)


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务