华为云用户手册

  • 请求示例 为ID为634f346e-a291-4124-a6be-ac57e6152463的防护包下指定防护策略绑定防护ID为“634f346e-a291-4124-a6be-ac57e6152464”的IP。 POST https://{endpoint}/v1/cnad/policies/{policy_id}/bind { "package_id" : "634f346e-a291-4124-a6be-ac57e6152463", "id_list" : [ "634f346e-a291-4124-a6be-ac57e6152464" ] }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:32 最大长度:2097152 Content-Type 是 String Content-Type 缺省值:application/json;charset=utf8 最小长度:1 最大长度:255 表3 请求Body参数 参数 是否必选 参数类型 描述 package_id 是 String 防护包id 最小长度:32 最大长度:64 id_list 是 Array of strings 防护ip的id列表 最小长度:7 最大长度:128 数组长度:0 - 2147483647
  • Go 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" antiddos "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/antiddos/v1" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/antiddos/v1/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/antiddos/v1/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := antiddos.NewAntiDDoSClient( antiddos.AntiDDoSClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.ShowDefaultConfigRequest{} response, err := client.ShowDefaultConfig(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • Python 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkantiddos.v1.region.antiddos_region import AntiDDoSRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkantiddos.v1 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.getenv("CLOUD_SDK_AK") sk = os.getenv("CLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = AntiDDoSClient.new_builder() \ .with_credentials(credentials) \ .with_region(AntiDDoSRegion.value_of("cn-north-4")) \ .build() try: request = ShowDefaultConfigRequest() response = client.show_default_config(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
  • Java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.antiddos.v1.region.AntiDDoSRegion; import com.huaweicloud.sdk.antiddos.v1.*; import com.huaweicloud.sdk.antiddos.v1.model.*; public class ShowDefaultConfigSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); AntiDDoSClient client = AntiDDoSClient.newBuilder() .withCredential(auth) .withRegion(AntiDDoSRegion.valueOf("cn-north-4")) .build(); ShowDefaultConfigRequest request = new ShowDefaultConfigRequest(); try { ShowDefaultConfigResponse response = client.showDefaultConfig(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:32 最大长度:2097152 Content-Type 是 String Content-Type请求头 缺省值:application/json;charset=utf8 最小长度:1 最大长度:255
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 enable_L7 Boolean 是否开启L7层防护,固定值为fasle traffic_pos_id Long 流量分段ID,取值范围:1~9、88、99 最小值:1 最大值:99 http_request_pos_id Long HTTP请求数分段ID,取值范围:1~15 最小值:1 最大值:15 cleaning_access_pos_id Long 清洗时访问限制分段ID,取值范围:1~8、88、99 最小值:1 最大值:99 app_type_id Integer 应用类型ID,可选取值: 0 1
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:32 最大长度:2097152 Content-Type 是 String Content-Type 缺省值:application/json;charset=utf8 最小长度:1 最大长度:128 表3 请求Body参数 参数 是否必选 参数类型 描述 op_type 是 Integer 操作类型。0 - 上传, 1 - 更换 cert_name 是 String 证书名称 cert_file 否 String 证书文件。上传新证书(op_type为0)时必填,更换为已有证书(op_type为1)时置空 cert_key_file 否 String 私钥文件。上传新证书(op_type为0)时必填,更换为已有证书(op_type为1)时置空 domain_id 是 String 域名 id
  • 操作步骤 查询默认防护策略。 接口相关信息 URI格式:GET /v1/{project_id}/antiddos/default-config 详情请参见“查询Anti-DDoS默认防护策略”。 请求示例 GET: https://{endpoint}/v1/1858a4e1f99d4454bd6a539d5477f5de/antiddos/default/config {endpoint}信息请从地区和终端节点获取。 Body: { } 响应示例 { "app_type_id": 1, "cleaning_access_pos_id": 8, "enable_L7": false, "http_request_pos_id": 8, "traffic_pos_id": 8 } 配置默认防护策略。 接口相关信息 URI格式:POST /v1/{project_id}/antiddos/default-config 详情请参见“配置Anti-DDoS默认防护策略”。 请求示例 POST: https://{endpoint}/v1/1858a4e1f99d4454bd6a539d5477f5de/antiddos/default-config {endpoint}信息请从地区和终端节点获取。 Body: { "app_type_id": 1, "cleaning_access_pos_id": 8, "enable_L7": false, "http_request_pos_id": 8, "traffic_pos_id": 8 } 响应示例 { }
  • 请求示例 将指定防护包的全量防护对象更改为EIP“1.1.1.1”(ID标识为“0c613ff9-2b63-4aa2-9333-e03541fe0d9a”)。 POST https://{endpoint}/v1/cnad/packages/{package_id}/protected-ips { "protected_ip_list" : [ { "ip" : "1.1.1.1", "id" : "0c613ff9-2b63-4aa2-9333-e03541fe0d9a", "type" : "EIP" } ] }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:32 最大长度:2097152 Content-Type 是 String Content-Type 缺省值:application/json;charset=utf8 最小长度:1 最大长度:255 表3 请求Body参数 参数 是否必选 参数类型 描述 protected_ip_list 是 Array of UpdateProtectedIpInPolicyBody objects 全量防护ip列表 数组长度:0 - 2147483647 表4 UpdateProtectedIpInPolicyBody 参数 是否必选 参数类型 描述 id 是 String 防护ip的id 最小长度:32 最大长度:64 ip 是 String 防护ip 最小长度:7 最大长度:128 type 是 String 类型。VPN:VPN;NAT:NAT;VIP:VIP;CCI:CCI;EIP:弹性公网IP;ELB:弹性负载均衡;REROUTING_IP:REROUTING_IP;SubEni:SubEni;NetInterFace:NetInterFace; name 否 String 名字 最小长度:1 最大长度:255
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:32 最大长度:2097152 Content-Type 是 String Content-Type 缺省值:application/json;charset=utf8 最小长度:1 最大长度:255 表3 请求Body参数 参数 是否必选 参数类型 描述 name 否 String 策略名 最小长度:1 最大长度:255 threshold 否 Integer 清洗阈值 最小值:100 最大值:1000 description 否 String 描述 最小长度:0 最大长度:255 udp 否 String udp协议封禁。block:封禁,unblock:不封禁
  • Python 设置 消息通知 的主题为“urn:smn:cn-north-7:2d2d90a56a3243bdb909f6a24a27be8d:cnad-test-intl”,并配置需要告警通知的攻击类型为DDoS攻击 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkantiddos.v1.region.antiddos_region import AntiDDoSRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkantiddos.v1 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.getenv("CLOUD_SDK_AK") sk = os.getenv("CLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = AntiDDoSClient.new_builder() \ .with_credentials(credentials) \ .with_region(AntiDDoSRegion.value_of("cn-north-4")) \ .build() try: request = UpdateAlertConfigRequest() warnConfigbody = UpdateAlertConfigRequestBodyWarnConfig( anti_d_do_s=True, back_doors=False, bruce_force=False, high_privilege=False, remote_login=False, send_frequency=1, waf=False, weak_password=False ) request.body = UpdateAlertConfigRequestBody( warn_config=warnConfigbody, topic_urn="urn:smn:cn-north-7:2d2d90a56a3243bdb909f6a24a27be8d:cnad-test-intl", display_name="" ) response = client.update_alert_config(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
  • Go 设置消息通知的主题为“urn:smn:cn-north-7:2d2d90a56a3243bdb909f6a24a27be8d:cnad-test-intl”,并配置需要告警通知的攻击类型为DDoS攻击 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" antiddos "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/antiddos/v1" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/antiddos/v1/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/antiddos/v1/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := antiddos.NewAntiDDoSClient( antiddos.AntiDDoSClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.UpdateAlertConfigRequest{} backDoorsWarnConfig:= false bruceForceWarnConfig:= false highPrivilegeWarnConfig:= false remoteLoginWarnConfig:= false sendFrequencyWarnConfig:= int32(1) wafWarnConfig:= false weakPasswordWarnConfig:= false warnConfigbody := &model.UpdateAlertConfigRequestBodyWarnConfig{ AntiDDoS: true, BackDoors: &backDoorsWarnConfig, BruceForce: &bruceForceWarnConfig, HighPrivilege: &highPrivilegeWarnConfig, RemoteLogin: &remoteLoginWarnConfig, SendFrequency: &sendFrequencyWarnConfig, Waf: &wafWarnConfig, WeakPassword: &weakPasswordWarnConfig, } request.Body = &model.UpdateAlertConfigRequestBody{ WarnConfig: warnConfigbody, TopicUrn: "urn:smn:cn-north-7:2d2d90a56a3243bdb909f6a24a27be8d:cnad-test-intl", DisplayName: "", } response, err := client.UpdateAlertConfig(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:32 最大长度:2097152 Content-Type 是 String Content-Type请求头 缺省值:application/json;charset=utf8 最小长度:1 最大长度:255 表3 请求Body参数 参数 是否必选 参数类型 描述 display_name 是 String 告警群组描述。 最小长度:1 最大长度:255 topic_urn 是 String 告警群组的唯一标识。 最小长度:1 最大长度:255 warn_config 是 WarnConfig object 告警配置信息。 表4 WarnConfig 参数 是否必选 参数类型 描述 antiDDoS 是 Boolean DDoS攻击 back_doors 否 Boolean 网页后门 bruce_force 否 Boolean 暴力破解(系统登录,FTP,DB) high_privilege 否 Boolean 数据库进程权限过高 remote_login 否 Boolean 异地登录提醒 send_frequency 否 Integer 取值范围: 0:表示每天一次 1:表示半小时一次 对于HID必选。 waf 否 Boolean 保留字段 weak_password 否 Boolean 弱口令(系统,数据库)
  • 请求示例 设置消息通知的主题为“urn:smn:cn-north-7:2d2d90a56a3243bdb909f6a24a27be8d:cnad-test-intl”,并配置需要告警通知的攻击类型为DDoS攻击 POST https://{endpoint}/v2/{project_id}/warnalert/alertconfig/update { "display_name" : "", "topic_urn" : "urn:smn:cn-north-7:2d2d90a56a3243bdb909f6a24a27be8d:cnad-test-intl", "warn_config" : { "antiDDoS" : true, "back_doors" : false, "bruce_force" : false, "high_privilege" : false, "remote_login" : false, "send_frequency" : 1, "waf" : false, "weak_password" : false } }
  • Java 设置消息通知的主题为“urn:smn:cn-north-7:2d2d90a56a3243bdb909f6a24a27be8d:cnad-test-intl”,并配置需要告警通知的攻击类型为DDoS攻击 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.antiddos.v1.region.AntiDDoSRegion; import com.huaweicloud.sdk.antiddos.v1.*; import com.huaweicloud.sdk.antiddos.v1.model.*; public class UpdateAlertConfigSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); AntiDDoSClient client = AntiDDoSClient.newBuilder() .withCredential(auth) .withRegion(AntiDDoSRegion.valueOf("cn-north-4")) .build(); UpdateAlertConfigRequest request = new UpdateAlertConfigRequest(); UpdateAlertConfigRequestBody body = new UpdateAlertConfigRequestBody(); UpdateAlertConfigRequestBodyWarnConfig warnConfigbody = new UpdateAlertConfigRequestBodyWarnConfig(); warnConfigbody.withAntiDDoS(true) .withBackDoors(false) .withBruceForce(false) .withHighPrivilege(false) .withRemoteLogin(false) .withSendFrequency(1) .withWaf(false) .withWeakPassword(false); body.withWarnConfig(warnConfigbody); body.withTopicUrn("urn:smn:cn-north-7:2d2d90a56a3243bdb909f6a24a27be8d:cnad-test-intl"); body.withDisplayName(""); request.withBody(body); try { UpdateAlertConfigResponse response = client.updateAlertConfig(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
  • 前提条件 专业版和基础版边缘节点均支持远程维护功能。 节点状态为未安装/升级中/删除中时,无法使用远程登录功能。 远程主机安装了SSH服务端程序,并正常监听22端口,仅下载模块日志的话可以忽略这条。 节点已经部署$edge_omagent模块且运行正常。 输入的远程主机账号密码错误,则无法登录节点。 节点状态是离线时,可能会因无法正常建立通道,导致功能不可用。 只支持一个用户在线登录,新用户登录会造成老用户下线。 页签切换,会造成客户端通道关闭,需要重新登录。 当应用$edge_agent大于1-1-6版本时,不再支持远程SSH功能,如需使用,则需部署$edge_omagent应用1-1-11或以上版本。
  • 工作台 访问IoT边缘本地控制台,进入首页统一门户,如下图所示: 图1 统一门户 工作台主要包含以下五个模块: 监控总览:对数据库、操作系统、网络设备、容器、服务器和虚拟化等监控对象进行分类,分别展示各个监控对象的数量和告警级别,其中,告警级别包括紧急、严重、次要、警告和信息。 告警统计:以柱状图的形式展示一周内各监控对象的告警信息数量。 近一周告警:以折线图的形式展示一周内严重级别以上的告警数目变化,同时展示最新的告警信息详情。 对象未恢复告警数Top10:对于产生告警的监控对象,按照一周内未恢复告警数目从高到低展示10条内容。 触发器告警Top10:根据触发器告警的次数从高到低展示一周内的10条内容。 首次登录使用Admin账号,为保证安全,建议在用户管理中新建用户账号登录。 父主题: 统一门户
  • 本地运维管理 IoT边缘本地控制台为边缘集群提供本地运维能力,统一监控资源、告警与指标信息。 登录“IoT边缘本地控制台”,您可以: 管理员可对账号以及账号的权限进行管理和设置。 对应用的状态进行监控,以及管理。 在本地设置和查看各种业务指标,并设置告警阈值,支持告警的查看和管理。 支持边缘网关的发放,实现边缘就近接入与数据路由。 支持国产化软硬件部署,覆盖主流操作系统、数据库、中间件、服务器存储等资源指标监控。 贯穿IT监控、CMDB、自动化、ITSM、事件平台等领域,实现监控和资产、告警和流程、流程与资产等运维场景串联打通。 统一门户 监控运维中心 告警中心 应用管理 物联接入 系统配置
  • 本地控制台应用及依赖说明 在Iot边缘企业版中安装本地控制台应用,用于实现集群本地运维运维管理,涉及应用包括 : sys-console-gateway : 本地控制台网关。所有其他本地控制台应用的基础,用于集成其他本地控制台应用,包括统一入口,认证鉴权,session管理,前后端转发。 所有其他本地控制台应用都依赖此应用,所以须优先安装此应用。 sys-lwops: 监控运维。 sys-edge-harbor: 本地镜像仓库。 sys-iotedge: 物联接入。依赖 sys-edge-harbor 的安装。 父主题: 基于IoT边缘企业版实现集群本地运维管理
  • 前提概要 前提:体验需要三方配合,首先要开通IoTEdge,用于节点管理和应用管理,再开通IoTDA,用于设备接入与管理,还得有边缘服务器作为节点被IoTEdge纳管。当前章节讲的是进程包,进程包需要开通OBS,将准备的进程包上传至OBS。 边缘服务器:第一点提到的IoTEdge, IoTDA, OBS是华为云服务,使用华为云租户账号直接免费开通可用,边缘服务器属于硬件,可以购买低配的E CS 代替,其EIP则作为边缘服务器的节点IP地址。 在IoTEdge上注册节点:在购买的ECS上执行安装脚本命令,即自动部署好2个系统应用,agent用于节点应用管理,hub用于数据通信。 进程包插件:是集成了边缘SDK的应用程序打包而成,可作为边缘节点的自定义应用部署到边缘服务器上,以进程方式运行,可在节点上进行设备数据协议解析、子系统数据解析、数据业务处理、智能计算等。 概述:用户将进程包上传到OBS云服务,通过IoTEdge将该进程包配置为用户自定义应用,按需部署到指定边缘节点上运行起来。
  • 安装专业版节点 在“节点管理”的节点列表选择您需要安装的节点,单击右侧“安装”,获得提示。 图5 安装 选择支持架构和安装目录,然后单击拷贝安装命令,使用SSH工具以root用户登录边缘节点服务器后台系统,执行安装命令。 图6 提示 安装命令的选择需要与购买的ecs的架构保持一致。 图7 执行安装 图8 安装命令执行成功 单击“我知道了”,等待边缘节点的状态变为“在线”,表示该节点已安装并连接成功。 您可以单击“节点名称”,查看该节点详细信息,关于节点详情描述可参见基本信息。
  • 点位超出有效地址范围 报错信息: 无报错信息,但设备详情页面周期上报数据,单击采集后有数据。 排查位置: 找到该点位对应的从站配置信息,查看该点位地址是否在配置的有效范围。 一个值需要多寄存器存储时需要考虑是否所有涉及寄存器都满足有效范围,例如:数据类型为double的值需要占4个16bits的寄存器,起始地址为0x0则需要满足0x0-0x3都在有效地址范围内。 如有效地址是相邻的两段,则应合并为一个有效地址段,否则同样会导致该错误。如:有效地址范围为“0x0-0xa,0xb-0x13”应合并为“0x0-0x13”。 正确格式: 满足所有需要周期采集的数据地址都在有效地址范围。 父主题: 点位采集失败
  • 步骤2:使用IAM账户 获取Token 以获取华北-北京四(cn-north-4)区域的Token为例。 POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens Request Header: Content-Type: application/json Request Body: { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", //子账户名称 "password": "********", //子账户密码 "domain": { "name": "domainname" //主账户名称 } } } }, "scope": { "project": { "name": "project name" //区域名称,如cn-north-4 } } } }
  • 解决方案 检查用户账号是否正常。 当用户账号存在未实名认证、未充值或者属于冻结状态。您可登录账号,在用户检查是否实名认证,是否有余额(以上信息在用户Console均可以查到)。 检查获取Token是否正常。 确保获取Token为24小时之内的Token。 确保获取Token的参数嵌套是否正确。 正确的嵌套应该如下列代码示例所示,错误的嵌套也能获取Token,但无法访问服务。 使用AK/SK方式访问,检查AK和SK是否填写正确。 检查“project_id”是否填写正确。“project_id”可参考获取项目ID。 如果无法确定原因和解决问题,请联系技术服务人员。
  • 语音交互 服务需要申请什么权限 语音交互服务本身无权限限制,用户不需要额外添加任何权限,即可对语音交互服务执行操作。 但是如下场景除外: 当用户需要使用录音文件识别功能时,需要用户具有主账号或者Security Administrator的权限。 因为录音文件保存在用户的OBS(Object Storage Service, 对象存储服务 )桶中。考虑到数据的安全,语音交互服务无法直接获取到用户数据,需要用户授权录音文件引擎读取用户OBS桶权限,只有主账号或者有Security Administrator权限的子账号才可以授权。 主账号:即在使用语音交互服务前注册的账号,该账号具有管理员权限,可执行所有操作。 父主题: 权限类
  • calc ak sk signature fail:signature expired报错 调用API时,出现Incorrect IAM authentication information: calc ak sk signature fail:signature expired报错。表示的是AK、SK凭证过期。 请先检测您使用的是临时AK、SK,还是永久性AK、SK。临时安全凭证通过接口临时访问密钥AK/SK获取;永久安全凭证通过我的凭证界面控制台获取。 如果使用的是永久性AK、SK出现此报错。请检查您的服务器时间和网络时间是否一致,时间同步后,可解决该报错。 父主题: 错误码类
  • Token怎么获取 Token接口请求构造如下所示: username、domainname、project name可登录控制台“我的凭证”页面获取。password为用户密码。 如果您的华为云账号已升级为华为账号,将不支持获取Token。建议为您自己创建一个IAM用户,获取IAM用户的Token。详细说明请参见账密报错“The username or password is wrong.”。 POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "region" } } } } 如下图所示,返回的响应消息头中“x-subject-token”就是需要获取的用户Token。获取Token之后,您就可以使用Token认证调用SIS服务API。 获取Token后,再调用SIS服务API接口时,您需要在请求消息头中添加“X-Auth-Token”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。 Content-Type: application/json X-Auth-Token: ABCDEFJ.... 您还可以通过这个视频教程了解如何使用Token认证:https://bbs.huaweicloud.com/videos/101333 。 父主题: API使用类
  • There was a bad response from the server报错 调用API时,出现There was a bad response from the server报错。表示无法正常连接到SIS服务。 请先检查您的华为云账号是否已经进行了实名认证。 如果您的网络环境异常也会引发该报错,请确保您的网络连接正常,可以访问SIS服务。如果使用的是局域网或内部网络,请确保可以正常访问公网。 网络环境如果正常,请检查代码示例中endpoint、url、请求参数、请求头是否设置正确。 父主题: 错误码类
共100000条