🐝
蜂巢OPENAPI
  • 蜂巢TNest
  • 产品介绍
    • 产品概述
    • 产品功能
    • 产品优势
    • 应用场景
  • 快速入门
    • 入门概述
    • 部署
    • 快速接入
    • 应用开发及编译
    • 应用部署
  • API
    • 接口规范
    • 终端数据查询
      • 系统基本信息上报
      • 系统运行数据上报
        • 采样频率、上报频率设置
        • CPU温度定时上报
        • CPU使用率定时上报
        • 内存使用率定时上报
        • 磁盘使用率定时上报
        • 4G模组信息定时上报
        • 有线网卡流量信息定时上报
      • 容器数据上报
      • 微应用数据上报
      • 进程数据上报
      • 服务数据上报
      • 网络端口数据上报
      • 终端在线状态
      • 链路跟踪
    • 终端告警
      • 告警规则下发
      • CPU使用率告警
      • 内存使用率告警
      • 磁盘使用率告警
      • CPU温度告警
      • 证书过期告警
      • 证书修改告警
      • 插入网线告警
      • 网线拔出告警
      • 网络链路时延告警
      • 网络链路中断告警
      • 网络链路丢包率告警
    • 运行诊断
      • 网络诊断
      • 工况诊断
      • 系统诊断
      • 进程诊断
    • 容器管理
      • 下载容器
      • 安装容器
      • 启动容器
      • 停止容器
      • 替换容器
      • 卸载容器
      • 克隆容器
    • 应用管理
      • 下载微应用
      • 安装微应用
      • 启动微应用
      • 停止微应用
      • 卸载微应用
      • 使能微应用
      • 去使能微应用
      • 微应用升级
    • 设备管理
      • 物理接口管理
        • 网口管理
      • 终端校时
      • 终端重启
      • 命令行
      • 网络访问黑名单
      • 网络访问白名单
      • 网络接口封堵
    • 连接管理
      • 网络访问黑名单
      • 网络访问白名单
    • 系统更新
      • 下载固件
      • 固件升级
      • 下载补丁包
      • 安装补丁包
      • 下载配置文件
      • 部署配置文件
    • 日志管理
      • 日志提取
      • 日志监控
        • 监控规则下发
        • 监控日志上报
        • 系统操作日志上报(审计日志)
  • 用户指南
    • 蜂巢部署
    • 安全接入
    • 可观测性
      • 系统基本信息上报
      • 运行数据监控
      • 终端告警
      • 运行诊断
    • 设备管理
      • 网络接口封堵
      • 终端校时
      • 终端重启
      • 命令行
    • 日志管理
      • 日志提取
      • 监控日志上报
      • 系统操作日志审计
    • 连接管理
      • 访问黑名单
      • 访问白名单
    • 容器管理
      • 容器下载
      • 容器安装/卸载
      • 容器启动/停止
      • 容器替换
      • 容器克隆
    • 应用管理
      • 应用下载
      • 应用安装/卸载
      • 应用使能/去使能
      • 应用启动/停止
      • 应用升级
    • 系统更新
      • 固件升级
      • 补丁包安装
      • 配置更新
  • 常见问题
    • 蜂巢部署相关问题
    • 设备注册相关问题
    • API调用相关问题
    • 应用编译相关问题
由 GitBook 提供支持
在本页
  • 1. 请求消息
  • 1.1 Topic
  • 1.2 Payload
  • 请求示例
  • 2. 应答消息
  • 2.1 Topic
  • 2.2 应答消息payload
  • 应答示例
  1. API
  2. 容器管理

克隆容器

1. 请求消息

1.1 Topic

Topic
/v1/devices/{DeviceSn}/virtualization/command

消息发送方

物联网平台

消息接收方

网关设备

1.2 Payload

数据域
数据类型
是否必选
描述

mid

stirng

是

消息ID,推荐使用uuid, 请求和应答匹配,用来匹配请求和应答消息和去重

msgTime

string

是

消息发送时间戳,RFC3339标准,例如:1985-04-12T23:20:50.52Z

zone

string

否

设备部署的区域,例如ZONE3

node

string

否

设备部署的节点,例如440000

requestId

string

否

微服务链路追踪用的标识

deviceSn

string

是

设备ESN码,用于唯一标识设备

deviceId

string

否

统一物联网平台分配的设备id,据说可能会重复,不能唯一标识设备

service

string

是

服务名称。这里固定为:virtualization

cmd

string

是

具体操作方法,这里固定为:actionContainerClone

params

object

是

详细参数内容

Params结构体说明

字段
必选/可选
类型
描述

containerId

必选

String

平台侧生成的容器id,用户关联往后相关的一系列操作

containerName

必选

string

容器名称。字符串形式,区分大小写,仅支持数字、字母、下划线和横线,首字符需为数字或者大小写字母,长度范围是2~64。

containerHyperv

必选

string

容器类型。枚举类型,取值如下:

  • docker:Docker容器

  • linux-lxc:LXC容器

srcContainerId

必选

String

需要复制的源容器id

srcContainerName

必选

string

需要复制的源容器名称。

字符串形式,区分大小写,仅支持数字、字母、下划线和横线,首字符需为数字或者大小写字母,长度范围是2~64。

imageName

必选

string

克隆生成镜像文件名

imageTag

必选

string

克隆生成镜像tag

cpuCount

可选

number

分配给容器的CPU核个数。如果指定了cpuCount时不可以指定cpuPeriod

cpuPeriod

可选

number

CPU的运行周期,即容器对CPU的使用在多长时间内做一次重新分配。

取值范围是1000~1000000,缺省值为100000(即0.1s),单位是微秒。

必须与cpuQuota搭配使用。

cpuQuota

可选

number

在CPU运行周期内,最多可以有多少时间来运行容器。取值范围是-1或1000~1000000000(即1000s),缺省值为-1,表示不做控制。

单位是微秒。必须与cpuPeriod搭配使用。

memorySize

可选

number

分配给容器的内存大小。

整数类型,LXC容器取值范围是64~1536,Docker容器取值范围是32~1536,单位是MB。

缺省情况下,单个LXC容器最多可占用的内存大小为256MB。

单个Docker容器最多可占用的内存大小为64MB。

说明:所有容器最多可占用的内存大小为1536MB。

storageSize

可选

number

分配给容器的磁盘空间大小。

整数类型,取值范围:85~860,单位是MB。

缺省情况下,单个LXC容器最多可占用的磁盘大小为200MB。

说明:

所有容器最多可占用的磁盘大小为860MB。

容器工作目录为外扩存储时,所有容器最多可占用的磁盘大小为外扩存储的实际可用大小。

Docker容器不支持该字段。

imageName

可选

string

容器OVA格式镜像文件名。字符串形式,区分大小写,不支持空格,长度范围是1~128。

devices

可选

list

映射到容器中的设备节点列表。取值格式为devName:mapName。

  • devName:映射设备节点在主机内的名称,字符串形式。

  • mapName:映射设备节点在容器内的名称,字符串形式。

volumes

可选

list

添加到容器中的数据卷列表。最多支持8个数据卷。说明:仅Docker容器支持该字段。

volumes/path

可选

string

容器的数据卷的路径。字符串形式,区分大小写,不支持空格,长度范围是1~128。

此路径为容器内的绝对路径,且不能配置为根目录。说明:仅Docker容器支持该字段。

volumes/size

可选

number

数据卷的大小。整数形式,取值范围是16~860,单位是MB。说明:仅Docker容器支持该字段。

volumes/visible

可选

number

用户在设备上是否拥有直接访问该数据卷的权限。取值如下:

  • 0:用户不可直接在设备上访问该数据卷。

  • 1:用户可直接在设备上访问该数据卷。

说明:仅Docker容器支持该字段。

ip

可选

string

表示分配给容器的Ipv4地址,点分十进制格式,掩码长度固定为24位,与网桥在同一网段;支持配置的地址范围为x.x.x.129~x.x.x.254。

  • LXC网桥名称:br0

  • Docker网桥名称:br_docker0

请求示例

{
    "mid": 54132,
    "service": "virtualization",
    "cmd": "actionContainerClone",
    "params": {
        "containerId": "2222",
        "containerName": "docker02",
        "containerHyperv": "docker",
        "srcContainerId": "1111",
        "srcContainerName": "docker01",
        "fileId": "abcde",
        "cpuCount": 2,
        "cpuPeriod": 100000,
        "cpuQuota": 200000,
        "memorySize": 256,
        "storageSize": 256,
        "imageName": "ARLXC-EC-2.0.0-arm64.ova",
        "devices": ["di1:di1", "ttyRS1:ttyRS1"],
        "volumes": [
            {
                "path": "/mnt/volume0",
                "size": 16,
                "visible": 0
            },
            {
                "path": "/mnt/volume1",
                "size": 20,
                "visible": 1
            }
        ]
        "ip": "192.168.0.0"
    },
    "zone":"设备部署的区域",
    "node":"设备部署的节点",
    "deviceSn": "D23pigXo",     
    "deviceId": "A1234456",
    "requestId":"xxxxxxxxxx",
    "msgTime": "1985-04-12T23:20:50.52Z "
}

2. 应答消息

2.1 Topic

Topic
/v1/devices/virtualization/response

消息发送方

物联网平台

消息接收方

网关设备

2.2 应答消息payload

参数说明

数据域
数据类型
是否必选
描述

mid

string

是

消息ID,用于消息去重。

replyId

string

是

表示响应的是哪条请求指令,为该指令的mid,用来匹配请求和应答

msgTime

string

是

消息发送时间戳,采用RFC3339标准,例如:1985-04-12T23:20:50.52Z。

zone

string

否

设备部署的区域,例如ZONE3

node

string

否

设备部署的节点,例如440000

requestId

string

否

微服务链路追踪用的标识

deviceSn

string

是

设备ESN码,用于唯一标识设备

deviceId

string

否

统一物联网平台分配的设备id,据说可能会重复,不能唯一标识设备

code

uint16

是

标识应答的返回码

批处理请求时,如果所有处理都成功,返回200

如果有部分失败,返回400。

取值如下:

•100:指令接收成功,等待执行完成。

•200:请求成功。

•400:请求消息错误,例如消息格式错误等。

•404:不支持该操作。

•429:请求太多。

•500:服务端内部错误,由应用定义。

body

object

否

(可选)对象内容。

body结构体说明

字段名
必选/可选
类型
参数描述

containerId

必选

String

平台侧生成的容器id,用户关联往后相关的一系列操作

应答示例

{
    "mid": "54132",
    "replyId": "54132",
    "code": 200,
    "body": {
        "containerId": "2222",
        "srcContainerId": "1111",
    },
    "zone":"设备部署的区域",
    "node":"设备部署的节点",
    "deviceSn": "D23pigXo",
    "deviceId": "A1234456",
    "requestId":"xxxxxxxxxx",
    "msgTime": "1985-04-12T23:20:50.52Z "
}
上一页卸载容器下一页应用管理

最后更新于1年前