华为云用户手册

  • 设备接入调测 本章节以MQTT.fx为例,介绍以MQTT原生协议接入IoT边缘节点,通过边缘节点上报设备属性至 物联网平台 。MQTT.fx是目前主流的MQTT客户端,可以快速验证是否可以与物联网平台服务交互发布或订阅消息。 访问这里,填写添加边缘设备后生成的设备ID和设备密钥,生成连接信息(ClientId、Username、Password)。 打开MQTT.fx软件,单击设置图标。 参考截图中配置鉴权参数,然后单击截图中“Apply”。 Broker Address:填写边缘节点服务器公网IP地址 Broker Port:填写边缘节点提供给南向MQTT(S)设备接入的端口,即7883 Client ID:设备ClientId,参考1获取 User Name:即设备ID,参考1获取 Password:加密后的设备密钥,参考1获取 在设备对接边缘节点场景中,需要在设备侧集成相应证书(证书文件),用于设备校验边缘节点的身份。 单击“Connect”,设备鉴权成功后,在IoT边缘控制台和物联网平台可以看到设备处于在线状态。如果模拟器右侧的红灯变成绿灯,说明与物联网平台的连接成功。 IoTEdge云服务上边缘节点显示子设备在线: 物联网平台显示边缘节点、子设备在线: 通过MQTT.fx模拟设备上报属性,并在物联网平台查看设备上报数据。 在Publish页签,填写设备属性上报Topic,及JSON消息体,单击“Publish”完成上报。 Topic:$oc/devices/iot_edge_test_0219/sys/properties/report 其中,iot_edge_test_0219为设备ID,请替换为实际值。 消息体: { "services" : [{ "service_id" : "sensor", "properties" : { "temp" : 25, "humi" : 11 }, "event_time" : "20210212T121212Z" } ] } 在物联网平台查看设备上报数据。 通过MQTT.fx订阅命令下发Topic,并在物联网平台下发控制命令,查看设备是否收到平台下发的命令。 在Subscribe页签,填写命令下发Topic,并单击“Subscribe”完成订阅。 Topic:$oc/devices/iot_edge_test_0219/sys/commands/# 其中,iot_edge_test_0219为设备ID,请替换为实际值。 在物联网平台执行命令下发。 进入设备详情页,选择“命令”页签,单击同步命令下发区域的“命令下发”,设置参数并单击“确定”完成命令下发。 选择命令:sensor: control_light light:ON 在MQTT.fx客户端查看,平台下发命令接收成功。
  • 安装专业版节点 使用root用户登录边缘节点服务器后台系统,使用SFTP工具或移动存储设备,将边缘节点的安装工具和配置文件的执行命令复制到节点的目录下。 图4 复制到节点目录中 解压installer安装包 例:sudo tar -zxvf edge-installer_1.0.9_x86_64.tar.gz -C /opt 其中edge-installer_1.0.9_x86_64.tar.gz为安装包文件名,请以下载的实际文件名为准。 图5 解压安装包 解压配置文件到/opt/IEF/Cert 例:sudo mkdir -p /opt/IEF/Cert; sudo tar -zxvf node_name.tar.gz -C /opt/IEF/Cert 其中node_name.tar.gz为配置文件名,请以下载的实际文件名为准。 图6 解压配置文件 执行安装命令,当最后一行提示“install_success”时,即代表安装成功,稍后可在“边缘节点”页查看节点状态。 cd /opt/edge-installer; sudo ./installer -op=install 图7 执行安装命令 如果安装过程异常或失败,请参见边缘节点纳管失败如何处理。 安装完IEF相关程序后,边缘节点会显示未安装状态,需等待10分钟左右,IEF相关配置初始化完成,才会拉起边缘节点相关应用,使边缘节点在线。
  • 应用管理概述 应用管理是IoT边缘提供的边缘应用管理能力,通过将系统预置的应用或用户自定义的应用部署到边缘节点,可在边侧进行协议解析、数据处理、本地子系统集成等能力拓展。当前IoT边缘支持容器化部署和安装包部署的方式,您可以制作镜像上传到 容器镜像服务 (SWR),也可以选择上传安装包到 对象存储服务 (OBS)。系统预置的应用如表1所示。 表1 系统预置应用 应用名称 应用类型 说明 $edge_hub 系统必选 边缘节点上的处理中心,负责设备和通信管理。 $edge_agent 系统必选 在边缘节点上管理边缘应用,包括部署、升级、运行监控。 $edge_access 系统可选 扩展边缘节点的协议接入能力,当前支持Modbus,OPC-UA协议接入。不推荐使用,推荐使用OT数采(以基于IoT边缘实现OT数采(OPCUA协议)为例,可开发自定义驱动应用)。 $edge_rule 系统可选 负责边缘设备数据的计算和处理,需与数据清洗配合使用。 $edge_apigw 系统可选 边缘节点的API网关,负责为边缘应用提供路由转发,正反向代理等能力,需与路由管理配合使用。 $industry_dc_bsi 系统可选 负责采集MES、ERP等子系统数据,对接到异构系统。系工业子系统数采应用,若想部署该应用,需购买工业子系统数采集成/采集服务。 $edge_omagent 系统可选 负责边缘节点远程监控和运维,提供日志上报、远程ssh、指标上报、文件上传下载能力。 $edge_keepalive 系统可选 边缘节点主备切换模块,保证节点的高可用。 $ot_dc_opcua 系统可选 边缘扩展协议接入。 $ot_dc_yk 系统可选 负责边缘OT数采。 $edge_push 系统可选 提供外部推送能力。 $edge_schedule 系统可选 边缘定时调度模块。 $edge_npu_plugin 系统可选 边缘管理NPU设备分配挂载应用。 父主题: 应用管理
  • 安装包部署 软件部署配置 部署方式选择安装包部署,"安装包地址"为{桶名/对象名}。如桶名为:“Demo”,对象名为:“ModuleSDK-Demo.zip”, 则安装包为obs://Demo/ModuleSDK-Demo.zip。 容器规格与高级配置请根据您的需要进行配置。 运行配置 输入端点、输出端点与demo中代码定义的端点一一对应,由于本例演示的是数采模块,因此不对端点进行配置。 部署配置请根据您的需要进行选择。 输入输出端点是非必需配置的,当有数据流转时需要配置,如OT应用(数据处理)。 驱动类应用和IT应用一般不需要配置。 配置确认 建议直接单击“立即发布”,方便后面直接部署应用的时候,能够获取到最新版本。
  • edge.h的接口函数介绍 所有接口函数定义的数据结构均呈现在edge_struct.h头文件中。 1. 初始化 接口描述: int edge_init(const char* workdir) 接口功能: 初始化sdk的工作环境,加载证书、读取配置等 表13 参数说明 参数名称 类型 参数描述 示例 workdir workdir 初始化文件所在目录,conf目录所在的目录,conf是存放证书文件以及日志配置的目录 conf在/code/api_test/workdir目录下,就填写/code/api_test/workdir 2. 注册回调接口 接口描述: int edge_set_callbacks(ST_MODULE_CBS* module_cbs, ST_DEVICE_CBS* device_cbs) 接口功能: 注册回调接口,登录、子设备添加、删除、设备消息、设备命令等都是异步通知的,故需要注册对应的处理函数。 表14 参数说明 参数名称 类型 参数描述 module_cbs ST_MODULE_CBS 模块回调函数结构体 device_cbs ST_DEVICE_CBS 设备回调函数结构体 表15 ST_MODULE_CBS模块相关的回调函数说明 参数名称 类型 参数描述 pfn_shadow_cb FN_SHADOW_ARRIVED* 模块影子回调函数类型,模块的配置可以使该接口接收 pfn_command_cb FN_COMMAND_ARRIVED* 发送到模块的命令的接收函数声明, pfn_connected FN_SDK_CONNECTED SDK连接到边缘hub的回调函数声明 pfn_disconnected FN_SDK_DISCONNECTED SDK和边缘hub断链的回调函数声明 表16 ST_DEVICE_CBS子设备相关的回调函数 参数名称 类型 参数描述 pfn_device_message_cb FN_MESSAGE_ARRIVED* 子设备消息回调 pfn_device_command_cb FN_COMMAND_ARRIVED* 子设备命令回调 pfn_device_event_cb FN_DEVICE_EVENT_ARRIVED* 子设备事件回调 pfn_sub_device_add_cb FN_SUB_DEVICE_ADD_ARRIVED* 子设备添加通知回调 pfn_sub_device_deleted_cb FN_SUB_DEVICE_DELETED_ARRIVED* 子设备删除通知回调 pfn_on_start_scan_cb FN_START_SCAN_ARRIVED* 收到子设备扫描通知回调 pfn_device_properties_set_cb FN_DEVICE_PROPERTIES_SET_ARRIVED* 收到子设备属性设置通知回调 pfn_device_properties_get_cb FN_DEVICE_PROPERTIES_GET_ARRIVED* 收到子设备属性获取通知回调 pfn_device_shadow_cb FN_DEVICE_SHADOW_ARRIVED* 收到子设备影子
  • edge.h回调函数说明 模块影子数据回调 函数描述: typedef EDGE_RETCODE (FN_SHADOW_ARRIVED)(const char* shadow, unsigned int shadow_len); 函数功能: 当下发模块配置时,通过此函数通知到用户,用户应用的配置也通过此函数通知。 表2 参数说明 参数名称 类型 参数描述 示例 shadow char* 模块影子数据(json字符串),第三方应用下发用户的配置数据 { “config”:”test” } shadow_len unsigned int 影子数据的长度 - 命令下发回调 函数描述: typedef EDGE_RETCODE (FN_COMMAND_ARRIVED)(const char* command_name, const char* device_id, const char* service_id, const char* request_id, const char* body, unsigned int body_len); 函数功能: 此函数声明用户命令下发通知,设备命令下发即使用此函数声明。 表3 参数说明 参数名称 类型 参数描述 command_name char* 设备命令名称,在设备关联的产品模型中定义。 device_id char* 命令对应的目标设备ID,命令下发对应的最终目标设备 service_id char* 设备的服务ID,在设备关联的产品模型中定义 request_id char* {request_id}用于唯一标识这次请求,响应该命令时需要带上。 body char* json字符串,设备命令的执行参数,具体字段在设备关联的产品模型中定义 body_len unsigned int - 消息下发回调 函数描述: typedef EDGE_RETCODE (FN_MESSAGE_ARRIVED)(const char* message_id, const char* message_name, const char* device_id, const char* body, unsigned int body_len); 函数功能: 此函数声明用于消息下发通知,平台使用此接口承接平台下发给设备的自定义格式的数据。 表4 参数说明 参数名称 类型 参数描述 message_id char* 消息名称 message_name char* 消息的唯一标识 device_id char* 命令对应的目标设备ID,命令下发对应的最终目标设备 body char* 消息内容。 body_len unsigned int 消息长度 事件下发回调 函数描述: typedef EDGE_RETCODE (FN_DEVICE_EVENT_ARRIVED)(const char* device_id, const char* body, unsigned int body_len); 函数功能: 此函数声明用于事件下发通知,平台使用此接口承接平台下发给设备的自定义格式的数据。 表5 参数说明 参数名称 类型 参数描述 示例 device_id char* 命令对应的目标设备ID,命令下发对应的最终目标设备 - body char* 事件内容。 { "object_device_id":"deviceId", "services":[ { "service_id":"serviceTest", "event_id":"eventTest", "event_type":"eventTypeTest", "event_time":"time", "paras":{ "test":"test" } } ] } body_len unsigned int 消息长度 - 子设备添加回调 函数描述: typedef EDGE_RETCODE (FN_SUB_DEVICE_ADD_ARRIVED)(const char* addSubDeviceInfo, unsigned int body_len); 函数功能: 此函数声明用于通知子设备添加,使用此接口承接平台添加成功子设备的通知。 表6 参数说明 参数名称 类型 参数描述 示例 addSubDeviceInfo char* 添加成功的子设备信息,具体格式见示例 {"devices": [{"parent_device_id":"c6b39067b03421a48", "node_id": "subdevice11", "device_id":"2bb77-063ad2f5a6cc", "name": "subDevice11", "description": null, "product_id":"c6b3b34663d3ea42f6", "fw_version": null, "sw_version": null, "status": "ONLINE" }],"version":1} body_len unsigned int 长度 - 子设备删除回调 函数描述: typedef EDGE_RETCODE (FN_SUB_DEVICE_DELETED_ARRIVED)(const char* deleteSubDeviceInfo, unsigned int body_len); 函数功能: 此函数声明用于通知子设备删除,使用此接口承接平台删除成功子设备的通知。 表7 参数说明 参数名称 类型 参数描述 示例 deleteSubDeviceInfo char* 删除成功的子设备信息,具体格式见示例 {"devices": [{"parent_device_id":"c6b39067b03421a48", "node_id": "subdevice11", "device_id":"2bb77-063ad2f5a6cc", "name": "subDevice11", "description": null, "product_id":"c6b3b34663d3ea42f6", "fw_version": null, "sw_version": null, "status": "ONLINE" }],"version":1} body_len unsigned int 长度 - 子设备扫描回调 函数描述: typedef EDGE_RETCODE (FN_START_SCAN_ARRIVED)(const char* protocol, const char* channel, const char* parentDeviceId,const char* scan_setting, unsigned int body_len); 函数功能: 此函数声明用于通知网关扫描子设备。 表8 参数说明 参数名称 类型 参数描述 protocol char* 协议 channel char* 通道信息 parentDeviceId char* 父设备ID scan_setting char* 扫描设备 body_len unsigned int 配置长度 子设备属性设置回调 函数描述: typedef EDGE_RETCODE (FN_DEVICE_PROPERTIES_SET_ARRIVED)(ST_PROPERTY_SET* sub_device_property_set); 函数功能: 此函数声明用于接收平台对子设备的属性设置。 表9 参数说明 参数名称 类型 参数描述 示例 sub_device_property_set ST_PROPERTY_SET* 属性设置 参见edge.h 子设备属性获取回调 函数描述: typedef EDGE_RETCODE (FN_DEVICE_PROPERTIES_GET_ARRIVED)(ST_PROPERTY_GET* sub_device_property_get); 函数功能: 此函数声明用于接收平台获取子设备的属性。 表10 参数说明 参数名称 类型 参数描述 示例 sub_device_property_get ST_PROPERTY_GET* 属性设置 参见edge.h 子设备影子回调 函数描述: typedef EDGE_RETCODE (FN_DEVICE_SHADOW_ARRIVED)(ST_DEVICE_SHADOW* sub_device_shadow); 函数功能: 此函数声明用于接收平台设置子设备的影子。 表11 参数说明 参数名称 类型 参数描述 示例 sub_device_property_get ST_DEVICE_SHADOW* 属性设置 参见edge.h 自定义topic 消息通知 回调 函数描述: typedef EDGE_RETCODE (FN_CUSTOMIZED_MESSAGE_ARRIVED)(const char* topic, const char* payload, unsigned int len); 函数功能: 此函数声明用于接收平台设置子设备的影子。 表12 参数说明 参数名称 类型 参数描述 topic char* 自定义topic payload char* 消息内容 len unsigned int 消息长度
  • 镜像包打包 上传打包的项目。 将jar文件上传到联网的linux机器上,如目录(/home/monitor)中 安装docker。 请确认使用的系统已经安装docker(docker版本需要高于17.06,推荐18.06),安装参照docker 安装教程 制作镜像。 搜索基础镜像,基础镜像需要集成jre。 docker search jre8 选择合适的镜像(镜像需要集成了jre且版本不低于8) NAME DESCRIPTION STARS OFFICIAL AUTOMATED livingobjects/jre8 Jre8 image 4 [OK] livingobjects/jre8镜像是docker hub第三方提供的镜像,非IoT团队发布,且IoT团队未提供任何官方镜像。该镜像在此仅做示例,IoT团队对该镜像的安全性不作保证。强烈建议用户自己封装镜像! 拉取镜像 docker pull livingobjects/jre8 编写dockerfile制作镜像 dockerfile内容参照如下(具体可参考编写高效的Dockerfile ) #Version 1.0.0 FROM livingobjects/jre8 #基础镜像来源 RUN mkdir -p /opt/iot/edge/monitor / && chmod -R 777 /opt/ #授权 COPY monitor /opt/iot/edge/monitor #复制文件到指定目录,此dockerfile文件位置:/home,jar包位置:/home/monitor USER root #用户名 EXPOSE 8080 CMD ["java", "-jar", "/opt/iot/edge/monitor/monitor-app.jar", "run"] #运行命令 构建镜像 docker build -t edge_monitor:1.0.0 /home --no-cache 查看打包完成的镜像 docker images REPOSITORY TAG IMAGE ID CREATED SIZE edge_monitor 1.0.0 93f9d964bcea 12 seconds ago 243MB 镜像上传。 上传镜像 开通容器 镜像服务 SWR 镜像上传需要使用SWR镜像容器服务,开通及使用请参照容器镜像服务 SWR_用户指南 获取SWR登录指令 请参照使用容器引擎客户端上传镜像第四节。 tag镜像 使用tag命令将镜像重命名以确定上传位置和组织,获取上传位置和组织前缀请参考pull/push命令 docker tag edge_monitor:1.0.0 swr.cn-north-4.myhuaweicloud.com/hw_swr/edge_monitor:1.0.0 上传镜像 docker push swr.cn-north-4.myhuaweicloud.com/hw_swr/edge_monitor:1.0.0 查看上传结果 上传镜像后请在SWR将镜像设置为公开。
  • 镜像包打包 构建需要打包的项目 构建项目,此处示例,构建好的文件存放在目录 /home/ModuleSDK-Demo 下 安装docker 请确认您使用的系统已经安装Docker(Docker版本需要高于17.06,推荐18.06),安装方法可参照docker 安装教程。 制作镜像 搜索基础镜像。 docker search dotnet 根据您的工程配置,选择合适的镜像。 镜像需要集成与您的工程配置兼容的.Net运行环境,下文使用的.Net版本仅作演示。 拉取镜像。 docker pull mcr.microsoft.com/dotnet/runtime:2.1 mcr.microsoft.com/dotnet/runtime:2.1 镜像是微软提供的镜像,非IoT团队发布,且IoT团队未提供任何官方镜像。该镜像在此仅做示例,IoT团队对该镜像的安全性不作保证,强烈建议用户自己封装镜像! 编写 Dockerfile 制作镜像。 创建 Dockerfile,内容示例如下(具体可参考编写高效的Dockerfile )。 下面提供了ModuleSDK-Demo镜像构建样例,仅作示例展示,请按需修改。 # 基础镜像来源 FROM mcr.microsoft.com/dotnet/runtime:2.1 # 指定工作目录 WORKDIR /app # 复制工程二进制文件和相关文件(即项目构建发布的产物) COPY ModuleSDK-Demo/ /app ENTRYPOINT ["dotnet", "ModuleSDK-Demo.dll"] 构建镜像 docker build -t modulesdk-demo:1.0.0 -f Dockerfile . 查看打包完成的镜像 docker images 可以看到modulesdk-demo这个镜像已经制作完成。 REPOSITORY TAG IMAGE ID CREATED SIZE modulesdk-demo 1.0.0 85ed3c3dc738 8 minutes ago 182MB 上述步骤演示的是直接复制已编译好的工程文件来构建镜像,您也可以采取在构建镜像时编译的方式,具体可参照.Net 官方文档的指引。 镜像上传 上传镜像 镜像上传需要使用镜像容器服务(SWR),首先需要开通容器镜像服务(SWR)。开通及使用请参照容器镜像服务(SWR)。 获取 SWR 登录指令 获取登录指令请参照获取指令。 访问密钥即AK/SK(Access Key ID/Secret Access Key),获取的AK/SK将用于登录。 登录 SWR 仓库 docker login -u [区域项目名]@[AK] -p [登录密钥] [镜像仓库地址] 可以直接从控制台获取登录命令,如下图。 镜像仓库地址 = swr.区域项目名称.myhuaweicloud.com 例如,华北-北京一对应的镜像仓库地址为:swr.cn-north-1.myhuaweicloud.com 修改镜像所属组织 修改镜像的组织名,以便推送到个人组织内。 docker tag [OPTIONS] [镜像名:版本号] [镜像仓库地址/所属组织/镜像名:版本号] 例如: docker tag modulesdk-demo:1.0.0 swr.cn-north-4.myhuaweicloud.com/iotedge/modulesdk-demo:1.0.0 上传镜像 docker push [镜像仓库地址/所属组织/镜像名:版本号] 例如: docker push swr.cn-north-4.myhuaweicloud.com/iotedge/modulesdk-demo:1.0.0 在我的镜像查看上传结果 上传镜像后请在 SWR 将镜像设置为公开。 查看镜像详情: 编辑镜像: 设置为公开: 这一步很重要,关系到后面能否正常部署应用。
  • 镜像包打包 上传需要打包的项目。将项目上传到网络能访问到的Linux机器上,放到目录下(比如 /home/MyCApp)。 安装docker。 请确认使用的系统已经安装docker(docker版本需要高于17.06,推荐18.06),安装方法可参照docker 安装教程。 制作镜像。 搜索基础镜像。 对基础镜像没有要求,可自行选择合适的基础镜像,以下选用带cmake的镜像作为示例 docker search cmake 选择合适的镜像(镜像需要集成了cmake且版本不低于3.9.5) NAME DESCRIPTION STARS OFFICIAL AUTOMATED lycantropos/cmake CMake Docker image 3 [OK] 拉取镜像 lycantropos/cmake镜像是docker hub第三方提供的镜像,非IoT团队发布,且IoT团队未提供任何官方镜像。该镜像在此仅做示例,IoT团队对该镜像的安全性不作保证。强烈建议用户自己封装镜像! docker pull lycantropos/cmake 添加启动脚本start.sh,放到项目文件下(和main.c在一个目录下)。 function log(){ echo `date "+%Y-%m-%d %T"`: $1 } log "[INFO] start execute process." # 这里的路径取决于项目保存的位置 cd /opt/iot/edge/MyCApp ./MyCApp MyCApp为可执行文件,生成步骤可参考生成可执行文件 编写 Dockerfile 制作镜像 创建 Dockerfile,命名为 myapp-dockerfile 内容参照如下(具体可参考编写高效的Dockerfile )。 下面提供myapp-dockerfile 样例,请根据具体需要修改。 注意myapp-dockerfile需要和项目放到一个目录下。 #Version 1.0.0 # 基础镜像来源 # 如果不采用在镜像中编译源文件的方式,可以任意选择基础镜像 FROM lycantropos/cmake # 创建镜像文件目录,并且授权 RUN mkdir -p /opt/iot/edge/MyCApp/conf && chmod -R 777 /opt ENV docker_path=/opt/iot/edge/MyCApp ENV LD_LIBRARY_PATH=${docker_path}:$LD_LIBRARY_PATH WORKDIR ${docker_path} # 复制工程或文件到指定目录 COPY MyCApp/MyCApp $docker_path # 将依赖库和配置文件放到对应目录下,确保编译的时候不会出错 COPY MyCApp/lib /usr/lib COPY MyCApp/conf $docker_path/conf COPY MyCApp/start.sh $docker_path # 指定容器将要监听的端口 USER root EXPOSE 8082 ENTRYPOINT ["/bin/bash", "/opt/iot/edge/MyCApp/start.sh"] 构建镜像 docker build -f ./myapp-dockerfile -t my_app_docker:v1.0.0 ./ 查看打包完成的镜像 docker images 可以看到my_app_docker这个镜像已经制作完成。 REPOSITORY TAG IMAGE ID CREATED SIZE my_app_docker v1.0.0 983b4e5aa72a 10 minutes ago 1.51GB 镜像上传 以上步骤可以通过体验馆熟悉流程。 上传镜像 镜像上传需要使用镜像容器服务(SWR),首先需要开通容器镜像服务(SWR)。开通及使用请参照容器镜像服务(SWR)。 获取 SWR 登录指令 获取登录指令请参照获取指令。 访问密钥即AK/SK(Access Key ID/Secret Access Key),获取的密钥和AK将用于登录。 登录 SWR 仓库 docker login -u [区域项目名]@[AK] -p [登录密钥] [镜像仓库地址] 可以直接从控制台获取登录命令,如下图。 镜像仓库地址 = swr.区域项目名称.myhuaweicloud.com 例如,华北-北京一对应的镜像仓库地址为:swr.cn-north-1.myhuaweicloud.com 修改镜像所属组织 修改镜像的组织名,以便推送到个人组织内。 docker tag [OPTIONS] [镜像名:版本号] [镜像仓库地址/所属组织/镜像名:版本号] 例如, docker tag my_app_docker:v1.0.0 swr.cn-north-4.myhuaweicloud.com/iotedge/my_app_docker:v1.0.0 上传镜像 docker push [镜像仓库地址/所属组织/镜像名:版本号] 例如, docker push swr.cn-north-4.myhuaweicloud.com/iotedge/my_app_docker:v1.0.0 在我的镜像查看上传结果 上传镜像后请在 SWR 将镜像设置为公开。 步骤一: 步骤二: 步骤三: 这一步很重要,关系到后面能否正常部署应用。
  • 请求示例 URI样例 PUT https://gaussdb-nosql.cn-north-7.myhuaweicloud.com/v3/619d3e78f61b4be68bc5aa0b59edcf7b/instances/944bdc55da6c4b33b260b34185ac86bein13/cold-volume 扩容实例的冷数据存储空间至1000GB { "size" : 1000 }
  • URI PUT https://{Endpoint}/v3/{project_id}/instances/{instance_id}/cold-volume 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 参数解释: 用户在某一region下的project ID。获取方法请参见获取项目ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 instance_id 是 String 参数解释: 实例ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 表3 请求Body参数 参数 是否必选 参数类型 描述 size 是 Integer 参数解释: 待扩容后冷存储空间大小,单位:GB。 约束限制: 用户每次至少选择1GB扩容量,且必须为整数。 待扩容后的冷数据存储空间最大规格为100000GB。 取值范围: 不涉及。 默认取值: 不涉及。 is_auto_pay 否 String 参数解释: 扩容包年/包月实例的冷数据存储容量时可指定,表示是否自动从账户中支付,此字段不影响自动续订的支付方式。 约束限制: 不涉及。 取值范围: true,表示自动从账户中支付。 false,表示手动从账户中支付,默认为该方式。 默认取值: 不涉及。
  • 请求示例 URI样例 DELETE https://gaussdb-nosql.cn-north-7.myhuaweicloud.com/v3/619d3e78f61b4be68bc5aa0b59edcf7b/instances/c865f921f3dd45198f209a607533a779in06/enlarge-failed-nodes 请求体样例 { "node_id" : "b60f00f19cd044fc8d7b52908978f629no06" }
  • URI DELETE https://{Endpoint}/v3/{project_id}/instances/{instance_id}/enlarge-failed-nodes 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 参数解释: 租户在某一Region下的project ID。获取方法请参见获取项目ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 instance_id 是 String 参数解释: 实例ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。
  • 请求示例 URI样例 POST https://gaussdb-nosql.cn-north-7.myhuaweicloud.com/v3/375d8d8fad1f43039e23d3b6c0f60a19/configurations/e02e76567ae04662a2753492b77f965bpr06/copy 复制参数模板 { "name" : "paramsGroup-2434", "description" : "复制参数模板" }
  • 请求URI 请求URI由如下部分组成: {URI-scheme}://{Endpoint}/{resource-path}?{query-string} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此单独强调。 表1 URI中的参数说明 参数 描述 URI-scheme 表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint 指定承载REST服务端点的服务器 域名 或IP,不同服务不同区域的Endpoint不同,您可以从地区和终端节点获取。 例如 IAM 服务在“华北-北京一”区域的Endpoint为“iam.cn-north-1.myhuaweicloud.com”。 resource-path 资源路径,也即API访问路径。从具体API的URI模块获取,例如“获取用户Token”API的resource-path为“/v3/auth/tokens”。 query-string 查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“limit=10”,表示查询不超过10条数据。 例如您需要获取IAM在“华北-北京一”区域的Token,则需使用“华北-北京一”区域的Endpoint(iam.cn-north-1.myhuaweicloud.com),并在获取用户Token的URI部分找到resource-path(/v3/auth/tokens),拼接起来如下所示。 https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens 图1 URI示意图 为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • 请求消息头 附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。 详细的公共请求消息头字段请参见表3。 表3 公共请求消息头 名称 描述 是否必选 示例 Content-Type 发送的实体的MIME类型。推荐用户默认使用application/json,如果API是对象、镜像上传等接口,媒体类型可按照流类型的不同进行确定。 是 application/json Content-Length 请求body长度,单位为Byte。 POST请求为可选,GET请求该字段值留空。 3495 X-Project-Id project id,项目编号。请参考获取项目ID章节获取项目编号。 否 e9993fc787d94b6c886cbaa340f9c0f4 X-Auth-Token 用户Token。 请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。 是 注:以下仅为Token示例片段 MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ 对于获取用户Token接口,由于不需要认证,所以只添加“Content-Type”即可,添加消息头后的请求如下所示。 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json
  • 请求消息体(可选) 该部分可选。请求消息体通常以结构化格式(如JSON或XML)发出,与请求消息头中Content-Type对应,传递除请求消息头之外的内容。若请求消息体中的参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于获取用户Token接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,其中username为用户名,domainname为用户所属的账号名称,********为用户登录密码,xxxxxxxxxxxxxxxxxx为project的名称,如“”“cn-north-1”,您可以从地区和终端节点获取。 scope参数定义了Token的作用域,上面示例中获取的Token仅能访问project下的资源。您还可以设置Token的作用域为某个账号下所有资源或账号的某个project下的资源,详细定义请参见获取用户Token。 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxxxxxxxxxxxx" } } } } 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。对于获取用户Token接口,返回的响应消息头中“x-subject-token”就是需要获取的用户Token。有了Token之后,您就可以使用Token认证调用其他API。
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 表2 HTTP方法 方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 在获取用户Token的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens
  • URI PUT https://{Endpoint}/v3/{project_id}/instances/{instance_id}/slowlog-desensitization 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户在某一region下的project ID。获取方法请参见获取项目ID。 instance_id 是 String 实例ID,可以调用查询实例列表和详情接口获取。如果未申请实例,可以调用创建实例接口创建。
  • 请求示例 URI样例 PUT https://gaussdb-nosql.cn-north-7.myhuaweicloud.com/v3/375d8d8fad1f43039e23d3b6c0f60a19/instances/9136fd2a9fcd405ea4674276ce36dae8in10/slowlog-desensitization 关闭脱敏状态 { "desensitization_status" : "off" }
  • 响应示例 状态码: 200 Success { "total_count" : 4, "flavors" : [ { "engine_name" : "cassandra", "engine_version" : "3.11", "vcpus" : "4", "ram" : "16", "spec_code" : "geminidb.cassandra.xlarge.4", "availability_zone" : [ "az1", "az2" ], "az_status" : { "az1" : "normal", "az2" : "unsupported" } }, { "engine_name" : "cassandra", "engine_version" : "3.11", "vcpus" : "8", "ram" : "32", "spec_code" : "geminidb.cassandra.2xlarge.4", "availability_zone" : [ "az1", "az2" ], "az_status" : { "az1" : "unsupported", "az2" : "normal" } }, { "engine_name" : "cassandra", "engine_version" : "3.11", "vcpus" : "16", "ram" : "64", "spec_code" : "geminidb.cassandra.4xlarge.4", "availability_zone" : [ "az1", "az2" ], "az_status" : { "az1" : "normal", "az2" : "sellout" } }, { "engine_name" : "cassandra", "engine_version" : "3.11", "vcpus" : "32", "ram" : "128", "spec_code" : "geminidb.cassandra.8xlarge.4", "availability_zone" : [ "az1", "az2" ], "az_status" : { "az1" : "normal", "az2" : "normal" } } ] }
  • URI GET https://{Endpoint}/v3.1/{project_id}/flavors 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 参数解释: 租户在某一region下的project ID。获取方法请参见获取项目ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 表2 Query参数 参数 是否必选 参数类型 描述 engine_name 否 String 参数解释: 数据库类型。 约束限制: 不涉及。 取值范围: 取值为“cassandra”,表示查询GeminiDB Cassandra数据库实例支持的规格。 取值为“mongodb”,表示查询GeminiDB Mongo数据库实例支持的规格。 取值为“influxdb”,表示查询GeminiDB Influx数据库实例支持的规格。 取值为“redis”,表示查询GeminiDB Redis数据库实例支持的规格。 默认取值: 不传该参数,默认为“cassandra”。 mode 否 String 参数解释: 实例类型。 约束限制: 不涉及。 取值范围: 取值为“CloudNativeCluster”, 表示查询云原生部署模式支持的规格。 默认取值: 不传该参数表示查询数据库类型下的所有经典部署模式支持的规格。 product_type 否 String 参数解释: 产品类型。 约束限制: 当创建GeminiDB Redis云原生部署模式集群类型必传此参数。 取值范围: Standard 标准型 Capacity 容量型 默认取值: 不涉及。 offset 否 Integer 参数解释: 索引位置,偏移量。 约束限制: 不涉及。 取值范围: 取值必须为数字,且不能为负数。 默认取值: 从第一条数据偏移offset条数据后开始查询,默认为0(偏移0条数据,表示从第一条数据开始查询)。 limit 否 Integer 参数解释: 查询规格信息上限值。 约束限制: 不涉及。 取值范围: 1~100。 默认取值: 不传该参数时,默认查询前100条规格信息。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total_count Integer 参数解释: 总记录数。 取值范围: 不涉及。 flavors Array of Flavors objects 参数解释: 实例规格信息列表。 表5 Flavors 参数 参数类型 描述 engine_name String 参数解释: 接口名称。 取值范围: 取值为“cassandra”,表示响应结果为GeminiDB Cassandra数据库实例支持的规格。 取值为“mongodb”,表示响应结果为GeminiDB Mongo数据库实例支持的规格。 取值为“influxdb”,表示响应结果为GeminiDB Influx数据库实例支持的规格。 取值为“redis”,表示响应结果为GeminiDB Redis数据库实例支持的规格。 engine_version String 参数解释: 接口版本。 取值范围: 不涉及。 默认取值: 不涉及。 vcpus String 参数解释: CPU核数。 取值范围: 不涉及。 默认取值: 不涉及。 ram String 参数解释: 内存大小,单位为兆字节。 取值范围: 不涉及。 默认取值: 不涉及。 spec_code String 参数解释: 资源规格编码。 例如:geminidb.cassandra.8xlarge.4 说明: “geminidb.cassandra”表示Cassandra数据库产品。 “8xlarge.4”表示节点性能规格。 取值范围: 不涉及。 availability_zone Array of strings 参数解释: 支持该规格的可用区ID。 说明: 该字段已废弃,请不要使用。 取值范围: 不涉及。 az_status Object 参数解释: 规格在可用区内的状态。 取值范围: normal,表示在售。 unsupported,表示暂不支持该规格。 sellout,表示售罄。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total_count Integer 可恢复的实例总数。 restorable_instances Array of QueryRestoreList objects 可恢复的实例信息。 表5 QueryRestoreList 参数 参数类型 描述 instance_id String 实例ID。 instance_mode String 实例模式。 engine_name String 接口名称。 engine_version String 接口版本。 vpc_id String VPC ID。 subnet_ids Array of strings 子网ID列表。 security_group_ids Array of strings 安全组ID列表。
  • URI GET https://{Endpoint}/v3/{project_id}/backups/{backup_id}/restorable-instances 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 用户在某一region下的project ID。获取方法请参见获取项目ID。 backup_id 是 String 备份文件ID。 表2 Query参数 参数 是否必选 参数类型 描述 offset 否 Integer 索引位置偏移量。取值大于或等于0。不传该参数时,查询偏移量默认为0。 limit 否 Integer 查询个数上限值。取值范围:1~100。不传该参数时,默认查询前100条信息。
  • 响应示例 状态码: 200 Success { "total_count" : 1, "restorable_instances" : [ { "instance_id" : "6aef2786115341b6a18a67e0ee6ef664in10", "instance_mode" : "ReplicaSet", "engine_name" : "geminimongodb", "engine_version" : "4.0.3.11", "vpc_id" : "674e9b42-cd8d-4d25-a2e6-5abcc565b961", "subnet_ids" : [ "f1df08c5-71d1-406a-aff0-de435a51007" ], "security_group_ids" : [ "7aa51dbf-5b63-40db-9724-dad3c4828b58" ] } ] }
  • 维度 Key Value cassandra_cluster_id,cassandra_node_id GeminiDB Cassandra数据库实例的集群ID或节点ID。 redis_cluster_id,redis_node_id GeminiDB Redis数据库实例的集群ID或节点ID。 influxdb_cluster_id,influxdb_node_id GeminiDB Influx数据库实例的集群ID或节点ID。 mongodb_cluster_id,mongodb_node_id GeminiDB Mongo数据库实例的集群ID或节点ID。
  • GeminiDB Mongo支持的监控指标 表16 GeminiDB Mongo支持的监控指标 指标ID 指标名称 指标含义 取值范围 单位 进制 测量对象 监控周期(原始指标) nosql001_cpu_usage CPU利用率 该指标为从系统层面采集的CPU使用率。 0~100 % 不涉及 GeminiDB Mongo实例的节点 1分钟 nosql002_mem_usage 内存利用率 该指标为从系统层面采集的内存使用率。 0~100 % 不涉及 GeminiDB Mongo实例的节点 1分钟 nosql003_bytes_out 网络输出吞吐量 统计平均每秒从测量对象的所有网络适配器输出的流量。 ≥ 0 bytes/s 1024(IEC) GeminiDB Mongo实例的节点 1分钟 nosql004_bytes_in 网络输入吞吐量 统计平均每秒从测量对象的所有网络适配器输入的流量。 ≥ 0 bytes/s 1024(IEC) GeminiDB Mongo实例的节点 1分钟 nosql005_disk_usage 存储容量使用率 该指标为存储容量使用率。 0~100 % 不涉及 GeminiDB Mongo实例 1分钟 nosql006_disk_total_size 存储容量总容量 该指标为实例的存储容量总容量。 ≥ 0 GB 不涉及 GeminiDB Mongo实例 1分钟 nosql007_disk_used_size 存储容量使用量 该指标为实例的存储容量使用量。 ≥ 0 GB 不涉及 GeminiDB Mongo实例 1分钟 mongodb001_command_ps command执行频率 该指标用于统计平均每秒command语句在节点上执行次数。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb002_delete_ps delete语句执行频率 该指标用于统计平均每秒delete语句在节点上执行次数。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb003_insert_ps insert语句执行频率 该指标用于统计平均每秒insert语句在节点上执行次数。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb004_query_ps query语句执行频率 该指标用于统计平均每秒query语句在节点上执行次数。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb005_update_ps update语句执行频率 该指标用于统计平均每秒update语句执行次数。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb006_getmore_ps getmore语句执行频率 该指标用于统计平均每秒getmore语句在节点上执行次数。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb007_connections 当前活动连接数 该指标用于统计试图连接到实例节点的连接数。 ≥ 0 Count 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb007_connections_usage 当前活动连接数百分比 该指标用于统计试图连接到实例节点的连接数占可用连接数百分比。 0~100 % 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb008_mem_resident 驻留内存 该指标用于统计当前驻留内存的大小。 ≥ 0 MB 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb009_mem_virtual 虚拟内存 该指标用于统计当前虚拟内存的大小。 ≥ 0 MB 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb010_regular_asserts_ps 常规断言频率 该指标用于统计常规断言频率。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb011_warning_asserts_ps 警告频率 该指标用于统计警告频率。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb012_msg_asserts_ps 消息断言频率 该指标用于统计消息断言频率。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb013_user_asserts_ps 用户断言频率 该指标用于统计用户断言频率。 ≥ 0 Count/s 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb014_queues_total 等待锁的操作数 该指标用于统计当前等待锁的操作数。 ≥ 0 Count 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb015_queues_readers 等待读锁的操作数 该指标用于统计当前等待读锁的操作数。 ≥ 0 Count 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb016_queues_writers 等待写锁的操作数 该指标用于统计当前等待写锁的操作数。 ≥ 0 Count 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb017_page_faults 缺页错误数 该指标用于统计当前节点上的缺页错误数。 ≥ 0 Count 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb018_porfling_num 慢查询数 该指标用于统计当前节点上的慢查询数。 ≥ 0 Count 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb019_cursors_open 当前维护游标数 该指标用于统计当前节点上的维护游标数。 ≥ 0 Count 不涉及 GeminiDB Mongo实例的节点 1分钟 mongodb020_cursors_timeout 服务超时游标数 该指标用于统计当前节点上的服务超时游标数。 ≥ 0 Count 不涉及 GeminiDB Mongo实例的节点 1分钟
  • GeminiDB Cassandra支持的监控指标 表15 GeminiDB Cassandra支持的监控指标 指标ID 指标名称 指标含义 取值范围 单位 进制 测量对象 监控周期(原始指标) nosql005_disk_usage 存储容量使用率 该指标为存储容量使用率。 0~100 % % 不涉及 GeminiDB Cassandra实例 1分钟 nosql006_disk_total_size 存储容量总容量 该指标为实例的存储容量总容量。 ≥ 0 GB GB 1024(IEC) GeminiDB Cassandra实例 1分钟 nosql007_disk_used_size 存储容量使用量 该指标为实例的存储容量使用量。 ≥ 0 GB GB 1024(IEC) GeminiDB Cassandra实例 1分钟 nosql009_dfv_write_delay 存储写时延 该指标用于统计某段时间写入数据到存储层的平均时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 nosql010_dfv_read_delay 存储读时延 该指标用于统计某段时间从存储层读取数据的平均时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra001_cpu_usage CPU使用率 该指标用于统计测量对象的CPU使用率。 0~100 % % 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra002_mem_usage 内存使用率 该指标用于统计测量对象的内存使用率。 0~100 % % 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra003_bytes_out 网络输出吞吐量 该指标用于统计平均每秒从测量对象的所有网络适配器输出的流量。 ≥ 0 Bytes/s Bytes/s 1024(IEC) GeminiDB Cassandra实例的节点 1分钟 cassandra004_bytes_in 网络输入吞吐量 该指标用于统计平均每秒从测量对象的所有网络适配器输入的流量。 ≥ 0 Bytes/s Bytes/s 1024(IEC) GeminiDB Cassandra实例的节点 1分钟 cassandra014_connections 活动连接数 该指标用于统计当前Cassandra实例节点的活动连接数。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra015_read_latency 读耗时 该指标用于统计数据库读请求的平均耗时。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra016_write_latency 写耗时 该指标用于统计数据库写请求的平均耗时。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra037_pending_write 挂起的写任务数 该指标描述当前排队等待的写任务数。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra038_pending_read 挂起的读任务数 该指标描述当前排队等待的读任务数。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra044_range_slice_latency scan耗时 该指标描述平均scan耗时。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra049_dropped_mutation 写丢弃次数 该指标描述平均写丢弃次数。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra052_dropped_read 读丢弃次数 该指标描述平均读丢弃次数。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra092_load_info 节点负责的数据量 该指标描述节点负责的数据量大小。 ≥ 0 Byte Byte 1024(IEC) GeminiDB Cassandra实例的节点 1分钟 cassandra093_write_count_latency 累计写请求 该指标描述节点启动累计的写请求个数。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra094_write_1min_rate 最近一分钟平均写速率 该指标描述最近一分钟内的平均写速率。 ≥ 0 Counts/s Counts/s 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra095_write_p75_latency p75写时延 该指标描述p75写时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra096_write_p95_latency p95写时延 该指标描述p95写时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra097_write_p99_latency p99写时延 该指标描述p99写时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra098_read_count_latency 累计读请求 该指标描述节点启动累计的读请求个数。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra099_read_1min_rate 最近一分钟平均读速率 该指标描述最近一分钟内的平均读速率。 ≥ 0 Counts/s Counts/s 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra100_read_p75_latency p75读时延 该指标描述p75读时延 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra101_read_p95_latency p95读时延 该指标描述p95读时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra102_read_p99_latency p99读时延 p该指标描述99读时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra103_range_slice_count_latency 累计range读请求 该指标描述累计range读请求。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra104_range_slice_1min_rate 最近一分钟平均range读速率 最近一分钟平均range读速率。 ≥ 0 Counts/s Counts/s 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra105_range_slice_p75_latency p75range读时延 该指标描述p75range读时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra106_range_slice_p95_latency p95range读时延 该指标描述p95range读时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra107_range_slice_p99_latency p99range读时延 该指标描述p99range读时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra163_write_p999_latency p999写时延 该指标描述p999写时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra164_read_p999_latency p999读时延 该指标描述p999读时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra165_large_partition_num 大key数量 该指标描述当前节点大key的数量。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra166_write_max_latency 最大写时延 该指标描述最大写时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra167_read_max_latency 最大读时延 该指标描述最大读时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra168_imbalance_table_num 表数据分布不均匀的个数 该指标描述表级别的数据分布不均匀的表数量。 ≥ 0 Counts Counts 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra169_modify_request_size_mean 写入请求大小平均值 该指标描述写入请求大小平均值。 ≥ 0 Bytes Bytes 1024(IEC) GeminiDB Cassandra实例的节点 1分钟 cassandra170_query_response_size_mean 查询请求大小平均值 该指标描述查询请求大小平均值。 ≥ 0 Bytes Bytes 1024(IEC) GeminiDB Cassandra实例的节点 1分钟 cassandra173_limit_diff_count_mean limit差值大小平均值 该指标描述limit差值大小平均值。 ≥ 0 - 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra174_tombstone_query_rate 墓碑查询请求速率 该指标描述墓碑查询请求速率。 ≥ 0 Counts/s Counts/s 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra175_single_delete_rate 单行删除速率 该指标描述单行删除速率。 ≥ 0 Counts/s Counts/s 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra176_range_delete_rate 范围删除速率 该指标描述范围删除速率。 ≥ 0 Counts/s Counts/s 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra177_large_row_count 超大行个数速率 该指标描述超大行个数速率。 ≥ 0 Counts/s Counts/s 不涉及 GeminiDB Cassandra实例的节点 1分钟 cassandra174_tombstone_query_rate 最大同步时延 该指标描述主备实例间的最大同步时延。 ≥ 0 ms ms 不涉及 GeminiDB Cassandra实例的节点 1分钟
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全