轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
lfedge/ekuiper-kubernetes-tool
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

ekuiper-kubernetes-tool Docker 镜像下载 - 轩辕镜像

ekuiper-kubernetes-tool 镜像详细信息和使用指南

ekuiper-kubernetes-tool 镜像标签列表和版本信息

ekuiper-kubernetes-tool 镜像拉取命令和加速下载

ekuiper-kubernetes-tool 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

ekuiper-kubernetes-tool
lfedge/ekuiper-kubernetes-tool

ekuiper-kubernetes-tool 镜像详细信息

ekuiper-kubernetes-tool 镜像标签列表

ekuiper-kubernetes-tool 镜像使用说明

ekuiper-kubernetes-tool 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

该镜像用于监控文件夹内文件,检测到新增或更新文件时读取并执行其中命令,处理完成后将文件名记录至同一文件夹的.history文件。
0 次下载activelfedge镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

ekuiper-kubernetes-tool 镜像详细说明

ekuiper-kubernetes-tool 使用指南

ekuiper-kubernetes-tool 配置说明

ekuiper-kubernetes-tool 官方文档

文件驱动型eKuiper自动化管理工具

一、镜像概述与主要用途

1.1 概述

本工具是一款基于文件驱动的自动化管理程序,用于监控指定文件夹下的命令文件。当检测到新增或更新的命令文件时,程序将解析文件内容并执行其中定义的HTTP命令(主要针对eKuiper流处理引擎),执行完成后将文件信息记录至历史文件(.history)中,避免重复处理。

1.2 主要用途

  • 自动化管理eKuiper流(Stream)和规则(Rule)的全生命周期(创建、查询、更新、删除等)
  • 通过文件触发机制实现eKuiper操作的批量执行与定时调度
  • 记录操作历史,确保命令文件仅被处理一次

二、核心功能与特性

  • 文件夹监控:定期扫描指定目录,检测新增或修改的命令文件
  • 命令解析执行:解析JSON格式的命令文件,生成HTTP请求并发送至eKuiper
  • 灵活配置:通过YAML配置文件自定义监控间隔、超时时间、日志路径等参数
  • 历史记录:自动生成.history文件,记录已处理的命令文件名及时间戳
  • 日志管理:支持自定义日志路径,记录程序运行状态与命令执行结果
  • 批量命令支持:单个命令文件可包含多个HTTP请求,按顺序执行

三、使用场景与适用范围

3.1 适用场景

  • eKuiper自动化运维:通过命令文件批量创建/删除流和规则,替代手动API调用
  • 定时任务调度:结合监控间隔,定期执行状态检查或数据同步命令
  • CI/CD集成:在部署流程中自动配置eKuiper流和规则,实现环境一致性
  • 批量操作处理:一次性执行多个关联命令(如创建流→创建规则→启动规则)

3.2 适用范围

  • 使用eKuiper进行流处理的用户
  • 需要通过文件驱动方式管理eKuiper资源的场景
  • 需记录操作历史并避免重复执行的自动化流程

四、配置说明

4.1 配置文件(config.yaml)

程序通过YAML格式的配置文件进行参数设置,示例及参数说明如下:

port: 9081          # eKuiper服务端口
timeout: 500        # 命令执行超时时间(单位:毫秒)
intervalTime: 60    # 文件夹检查间隔(单位:秒)
ip: "127.0.0.1"     # eKuiper服务IP地址
logPath: "./log/kubernetes.log"  # 日志文件保存路径
commandDir: "./sample/"          # 命令文件所在目录路径
参数名类型描述默认值示例
portinteKuiper服务端口9081
timeoutint命令执行超时时间(毫秒)500
intervalTimeint文件夹检查间隔(秒)60
ipstringeKuiper服务IP地址"127.0.0.1"
logPathstring日志文件保存路径"./log/kubernetes.log"
commandDirstring命令文件监控目录路径"./sample/"

4.2 命令文件(JSON)格式

命令文件为JSON格式,用于定义待执行的HTTP请求集合。文件需放置在commandDir配置指定的目录下,程序将自动监控并处理。

4.2.1 字段说明

字段名是否必填类型描述
commands否arrayHTTP命令集合,每个元素为一个请求
url否stringHTTP请求路径(相对于eKuiper IP:Port)
method否stringHTTP请求方法(post/get/delete/put等)
description是string操作描述(可选,用于日志记录)
data否json object请求体数据(创建操作时必填)

4.2.2 命令文件示例

单个命令文件可包含一个或多个HTTP请求,示例如下:

{
    "commands": [
        {
            "url": "/streams",
            "description": "创建stream1",
            "method": "post",
            "data": {
                "sql": "create stream stream1 (id bigint, name string) WITH (datasource = \"topic/temp\", FORMAT = \"json\");"
            }
        },
        {
            "url": "/streams/stream1",
            "description": "查询stream1",
            "method": "get"
        }
    ]
}

五、使用方法

5.1 环境准备

  • 依赖:Go 1.16+(编译环境)、eKuiper服务(运行环境)
  • 确保eKuiper服务已启动,且IP和端口可被工具访问

5.2 程序编译

通过以下命令编译生成可执行文件:

go build -o tools/kubernetes/kuiper-kubernetes-tool tools/kubernetes/main.go

编译后生成的可执行文件路径:tools/kubernetes/kuiper-kubernetes-tool

5.3 基本使用步骤

  1. 准备配置文件
    创建config.yaml,配置eKuiper连接信息、监控目录等参数(详见4.1节)。

  2. 准备命令文件
    在commandDir目录下创建JSON格式的命令文件(详见4.2节)。

  3. 启动程序
    执行编译后的可执行文件,程序将自动加载配置并开始监控命令目录:

    ./kuiper-kubernetes-tool  # 需与config.yaml在同一目录,或通过参数指定配置文件路径
    
  4. 查看结果

    • 命令执行日志:查看logPath配置的日志文件
    • 历史记录:命令文件所在目录生成.history文件,记录处理记录

5.4 Docker部署

5.4.1 Dockerfile示例

# 编译阶段
FROM golang:1.18-alpine AS builder
WORKDIR /app
COPY . .
RUN go mod download
RUN go build -o kuiper-kubernetes-tool tools/kubernetes/main.go

# 运行阶段
FROM alpine:3.16
WORKDIR /app
COPY --from=builder /app/kuiper-kubernetes-tool .
COPY config.yaml .  # 复制配置文件(或通过挂载外部配置)

# 创建命令目录和日志目录
RUN mkdir -p /app/commands /app/log

# 运行程序
CMD ["./kuiper-kubernetes-tool"]

5.4.2 Docker Run命令

docker run -d \
  --name kuiper-tool \
  -v /host/config.yaml:/app/config.yaml \  # 挂载外部配置文件
  -v /host/commands:/app/commands \      # 挂载命令文件目录(需与config.yaml中commandDir一致)
  -v /host/log:/app/log \                # 挂载日志目录(需与config.yaml中logPath一致)
  kuiper-kubernetes-tool:latest

5.4.3 Docker Compose配置

version: "3"
services:
  kuiper-tool:
    build: .
    volumes:
      - ./config.yaml:/app/config.yaml
      - ./commands:/app/commands
      - ./log:/app/log
    restart: always
    environment:
      - EKUIPER_IP=192.168.1.100  # 可通过环境变量覆盖配置文件中的eKuiper IP(需程序支持环境变量注入)

5.5 命令文件操作示例

5.5.1 流(Stream)操作示例

创建流
{
    "commands": [
        {
            "url": "/streams",
            "description": "创建stream1",
            "method": "post",
            "data": {
                "sql": "create stream stream1 (id bigint, name string, score float) WITH (datasource = \"topic/temperature\", FORMAT = \"json\", KEY = \"id\");"
            }
        }
    ]
}
查询流列表
{
    "commands": [
        {
            "url": "/streams",
            "description": "查询所有流",
            "method": "get"
        }
    ]
}
查询指定流
{
    "commands": [
        {
            "url": "/streams/stream1",
            "description": "查询stream1详情",
            "method": "get"
        }
    ]
}
删除流
{
    "commands": [
        {
            "url": "/streams/stream1",
            "description": "删除stream1",
            "method": "delete"
        }
    ]
}

5.5.2 规则(Rule)操作示例

创建规则
{
    "commands": [
        {
            "url": "/rules",
            "description": "创建rule1",
            "method": "post",
            "data": {
                "id": "rule1",
                "sql": "SELECT * FROM stream1",
                "actions": [{"log": {}}]
            }
        }
    ]
}
启停规则
{
    "commands": [
        {
            "url": "/rules/rule1/stop",
            "description": "停止rule1",
            "method": "post"
        },
        {
            "url": "/rules/rule1/start",
            "description": "启动rule1",
            "method": "post"
        }
    ]
}
查询规则状态
{
    "commands": [
        {
            "url": "/rules/rule1/status",
            "description": "查询rule1状态",
            "method": "get"
        }
    ]
}

5.5.3 多命令集示例

单个命令文件可按顺序执行多个关联操作,示例如下:

{
    "commands": [
        {
            "url": "/streams",
            "description": "创建stream1",
            "method": "post",
            "data": {
                "sql": "create stream stream1 (id bigint) WITH (datasource = \"topic/temp\");"
            }
        },
        {
            "url": "/rules",
            "description": "创建rule1",
            "method": "post",
            "data": {
                "id": "rule1",
                "sql": "SELECT * FROM stream1",
                "actions": [{"log": {}}]
            }
        },
        {
            "url": "/rules/rule1/start",
            "description": "启动rule1",
            "method": "post"
        }
    ]
}

六、历史记录文件(.history)

程序处理命令文件后,会在命令文件所在目录(commandDir)生成.history文件,记录已处理的文件信息,格式如下:

[
  {
    "name": "sample.json",    // 已处理的命令文件名
    "loadTime": 1594362344    // 处理时间戳(Unix时间,秒级)
  }
]

说明:

  • .history文件用于避免重复处理同一命令文件
  • 若需重新处理某文件,可删除.history中对应记录或修改文件名

七、注意事项

  • 命令文件必须为合法JSON格式,否则程序将记录错误日志并跳过该文件
  • commandDir目录需提前创建,且程序需有读写权限
  • eKuiper服务需正常运行且可被工具访问(IP:Port需正确配置)
  • 配置文件中的路径(如logPath、commandDir)若为相对路径,需相对于程序运行目录
  • 大批量命令执行时,建议拆分多个文件,避免单个文件处理超时
查看更多 ekuiper-kubernetes-tool 相关镜像 →
lfedge/ekuiper logo
lfedge/ekuiper
by The Linux Foundation - LF Edge
LF Edge eKuiper 是一款轻量级物联网数据分析与流处理引擎,运行于资源受限边缘设备,支持 SQL 或图形化规则,适用于工业物联网、车联网等边缘实时数据处理场景。
8100K+ pulls
上次更新:2 天前
rancher/rke-tools logo
rancher/rke-tools
by Rancher by SUSE
认证
暂无描述
14100M+ pulls
上次更新:3 个月前
temporalio/admin-tools logo
temporalio/admin-tools
by Temporal Technologies Inc
认证
以工作流即代码方式构建和运行弹性应用的Docker镜像
810M+ pulls
上次更新:23 天前
octopusdeploy/kubernetes-agent-tools-base logo
octopusdeploy/kubernetes-agent-tools-base
by Octopus Deploy
认证
该容器镜像供Kubernetes Agent执行Kubernetes脚本,包含运行Octopus Deploy的Kubernetes工作负载所需的最小工具集。
100K+ pulls
上次更新:3 天前
rancher/k3d-tools logo
rancher/k3d-tools
by Rancher by SUSE
认证
支持k3d(https://k3d.io)的辅助容器镜像
45M+ pulls
上次更新:3 年前

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.