云服务器内容精选

  • 操作步骤 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中选择需要操作的组件。 图1 选择组件 单击“伸缩策略”模块中的“编辑”。 单击选择“混合策略”,参考表1配置混合弹性伸缩策略。 表1 配置混合伸缩策略 参数 参数说明 最大实例数 扩容时允许达到的最大实例数。 取值范围[1,99]。 说明: 最大实例数必须大于最小实例数。 最小实例数 缩容时允许达到的最小实例数。 取值范围[1,99]。 指标 CPU使用率,系统预置指标。 内存使用率,系统预置指标。 自定义指标。单击“添加伸缩指标”,可添加自定义指标,在下拉框中选择已创建的自定义监控指标,如需创建新的自定义指标,请参考配置自定义监控指标。 支持添加多条自定义指标。 说明: 必须输入PromQL语句,PromQL是Prometheus内置的数据查询语言,其提供对时间序列数据丰富的查询,聚合以及逻辑运算能力的支持,详情请参考Prometheus。 PromQL语句查询结果必须为单个值,且类型为vector或scalar。 最近一次创建或升级时间在2023年11月03日之前的组件,在配置自定义伸缩指标设置时,需要重新升级组件才能使自定义伸缩指标策略正常生效。 触发周期 期望策略以指定的周期执行。可选“每天”,“每周”,“每月”。 单天内触发时间 当“触发周期”选择“每天”时需要配置。 配置单天周期内的触发时间策略。 例如:每天,从18:00之后保持实例数为3个 。 单击“添加触发时间”可以添加多条触发时间策略。 单周内触发时间 当“触发周期”选择“每周”时需要配置。 配置单周周期内的触发时间策略。 例如:每周,从周一08:00之后保持实例数为4个 。 单击“添加触发时间”可以添加多条触发时间策略。 单月内触发时间 当“触发周期”选择“每月”时需要配置。 配置单月周期内的触发时间策略。 例如:每月,从5号06:00之后保持实例数为4个 。 单击“添加触发时间”可以添加多条触发时间策略。 混合策略的规则是“或”的关系,时间策略、指标策略任何一个满足条件时,都会触发扩容/缩容。 例如:CPU使用率的最大期望值设置为80,内存使用率的最大期望值设置为70。设置触发“触发周期”为“每天”,单天内触发时间配置:从18:00之后保持实例数为3个,从00:00之后保持实例数为1个 。则每天00:00至18:00,系统自动检测,保持实例数为1个,但如果该时间段内,组件CPU使用率大于80%或内存使用率大于70%,系统会自动增加组件的实例个数。 图2 配置混合策略 (可选)展开“高级设置”,参考表2配置高级设置。 表2 配置高级设置 参数 参数说明 弹性扩容步长 扩容步长,每分钟扩容pod的数量。 默认值为4个,取值范围[1,99]。 扩容稳定窗口 默认值为0秒,取值范围[1,3600]。 弹性缩容步长 缩容步长,每分钟缩容pod的数量。 默认值为99个,取值范围[1,99]。 缩容稳定窗口 默认值为300秒,取值范围[1,3600]。 禁止缩容 单击,可开启禁止缩容功能。 图3 高级配置 单击“确定”,完成混合策略配置。 单击页面上方“生效配置”。在右侧弹框中确认修改信息,并单击“确定”,使配置生效。
  • 约束条件 最多添加20000条防护规则。 单条防护规则最多关联5条服务组。 每条防护规则最多关联2条“IP地址组”。 单条防护规则最多添加20个源/目的IP地址。 防护域名时不支持添加中文域名格式。 仅入方向规则(“方向”配置为“外-内”)的“源”地址支持配置“预定义地址组”。 开启NAT64防护后,使用IPv6访问时,请注意将198.19.0.0/16的网段放通。因为NAT64会将源IP转换成198.19.0.0/16的网段进行ACL访问控制
  • TLS 在更新流量策略内容时,可选择是否开启。在VirtualService中,Tls是一种TLSRoute类型的路由集合,用于处理非终结的TLS和HTTPS的流量,使用SNI(Server Name Indication),即客户端在TLS握手阶段建立连接使用的服务Host名做路由选择。 下图中,service1服务对service2服务的访问会自动启用双向认证,对service1服务和service2服务的代码都无须修改,而且对双方的证书密钥也无须维护。 父主题: 流量策略
  • 操作步骤 以下示例主要针对MQTT设备的订阅及发布。在设备接入控制台中可以进行策略的配置及策略目标的绑定。 进入策略页面。访问设备接入服务,单击“管理控制台”进入设备接入控制台。在左侧导航栏“设备”中单击“策略”,可到策略界面。 图2 策略界面 创建策略。在策略界面单击“创建策略”,按照业务具体填写策略参数,填写完成后单击生成策略。参数值可参考下图。 图3 创建策略 表1 参数说明 参数说明 所属资源空间 下拉选择所属的资源空间。如无对应的资源空间,请先创建资源空间。 策略名称 自定义,如PolicyTest。长度不超过128,只允许字母、数字、下划线(_)、连接符(-)的组合。 资源 在MQTT主题发布与订阅中,需要以“topic:”作为参数前缀。比如说:禁止订阅/test/v1,则该参数填写 topic:/test/v1。 操作 值为发布或订阅。发布代表MQTT设备端Publish请求,订阅代表MQTT设备端Subscribe请求。 权限 值为允许或拒绝。用于允许或拒绝某topic的发布或订阅。 绑定策略目标。策略可以从“资源空间”、“产品”、“设备”这3个范围进行绑定,被绑定的设备将遵循策略的要求允许或拒绝某Topic的发布或订阅。 图4 策略绑定设备 表2 参数说明 参数说明 设备目标类型 下拉选择设备目标类型。类型有“资源空间”、“产品”、“设备”三种。这三种类型并不是互斥的,可以同时存在,比如说:绑定产品A与设备C(C是产品B下的设备)。 资源空间:实现多业务应用的分域管理,绑定后所选资源空间下的所有设备都将匹配该策略。可选择多个资源空间绑定。 产品:一个产品下一般有多个设备,绑定后所选产品下的所有设备都将匹配该策略,比起资源空间,绑定范围更小。可绑定一个或多个不同资源空间下的产品。 设备:绑定策略目标的最小单位,可绑定一个或多个不同资源空间、不同产品的设备。 策略目标 选择对应的“策略目标类型”后,在“策略目标”的参数中会显示可选的数据,勾选需要绑定的即可。
  • 概述 证书策略,即通过平台认证设备的设备CA证书匹配的发放策略。每条证书策略实例指:匹配上该策略实例的设备,将会被发放到该策略实例关联的设备接入实例的对应资源空间(即应用)下。 设备匹配证书策略实例的机制为: 设备的发放策略指定为“证书策略”时,其认证方式也必须为X.509证书认证且同时指定了认证设备的设备CA证书,当设备关联的设备CA证书与证书策略实例关联的证书为同一个证书时,即被认为该设备匹配上该条策略实例; 一个设备最多匹配一条证书策略实例;一个CA证书最多被一条证书策略关联。
  • 操作步骤 进入“策略”界面,单击展开“证书策略”,单击“添加实例”。 按照下方参数说明填写关键参数信息后,单击“确定”。 表1 证书策略参数列表 参数名称 说明 示例 证书名称 即所要根据证书属性将设备发放到指定的目标区域,选择对应的证书。 将需要通过证书“certificates”发放的设备发放至华北-北京四的物联网平台。 需通过证书“certificates”发放的设备:WaterMeter-Beijing0001、WaterMeter-Beijing0002 证书名称:certificates 发放区域:华北-北京四 发放应用:beijing-app1 发放区域 发放到指定区域后,设备将接入对应区域的设备接入服务。 所选区域未开通设备接入服务时,如果确定添加实例,系统将自动为您开通设备接入服务。不同区域设备接入服务价格不同,收费详情请参考价格说明。 发放应用 选择对应设备接入服务区域已创建的应用。在物联网平台中,设备由应用统一管理。 如果对应设备接入服务区域未创建应用,需要前往对应服务创建应用。
  • 了解函数接口定义 函数服务对函数有明确的接口定义。 以java语言为例,接口定义为:作用域 返回参数 函数名(函数参数,Context参数)。 作用域:提供给FunctionGraph调用的用户函数必须定义为public。 返回参数:用户定义,FunctionGraph负责转换为字符串,作为HTTP Response返回。对于返回参数对象类型,HTTP Response该类型的JSON字符串。 函数名:用户定义函数名称。 用户定义参数:当前函数只支持一个用户参数。对于复杂参数,建议定义为对象类型,以JSON字符串提供数据。FunctionGraph调用函数时,解析JSON为对象。 Context参数:runtime提供函数执行上下文,其接口定义在SDK接口说明。 创建Java函数时,函数入口参数需要提供函数完整的名字空间,参数格式为:包名.类名.函数名。 设备发放在此基础上,要求函数代码满足如下条件: 返回参数:需满足设备发放对返回参数的约束; 函数参数:需满足设备发放对函数参数的约束; 函数接口实现:从函数参数中的备选接入点中选择一个接入点,调用发放设备接口,根据接口响应拼接参数返回。
  • 添加自定义策略 进入“策略”界面,单击展开“自定义策略”,单击“添加函数”。 按照下方参数说明填写关键参数信息后,单击“确定”。 参数名称 说明 示例 函数 即在函数服务中实现的自定义策略。如果下拉框没有你想要的函数,可以单击创建新函数来实现你的自定义策略需求。 将需要通过函数“function”发放的设备发放至华北-北京四的物联网平台。 需通过函数“function”发放的设备:WaterMeter-Beijing0001、WaterMeter-Beijing0002 函数:function 发放区域:华北-北京四 发放区域 发放到指定区域后,设备将接入对应区域的设备接入服务。 所选区域未开通设备接入服务时,如果确定添加实例,系统将自动为您开通设备接入服务。不同区域设备接入服务价格不同,收费详情请参考价格说明。
  • 设备发放对返回参数的约束 表1 TdpFuncResult 名称 说明 类型 statusCode String 函数执行状态码,用于标识函数执行过程是否出现异常,遵循HTTP状态码含义。 body String 字符串,但格式为JSON,结构为TdpFuncBody。 表2 TdpFuncBody 名称 说明 类型 status String 设备发放业务功能标识,allow表示发放成功,deny表示发放失败,设备发放使用此标识判断函数内业务功能执行成功与否。 context TdpFuncBodyContext 扩展字段,用于承载函数执行结果。 表3 TdpFuncBodyContext 名称 说明 类型 allocationResult String 发放结果,存放发放接口返回的响应结构体。 errorCode String 错误码,如发放失败,则此值需不为空。 errorMsg String 错误描述,如发放失败,则此值需不为空。 发放设备成功的返回参数样例 { "statusCode": 200, "body": "{\"status\":\"allow\",\"context\":{\"allocationResult\":\"dps返回的下发结果\"}}" } 发放设备失败的返回参数样例 { "statusCode": 200, "body": "{\"status\":\"deny\",\"context\":{\"errorCode\":\"错误码\",\"errorMsg\":\"错误描述\"}}" }
  • 服务管理权限 表1 服务管理细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 部署模型服务 POST /v1/{project_id}/services modelarts:service:create - √ √ 查询模型服务列表 GET /v1/{project_id}/services modelarts:service:list - √ √ 查询模型服务详情 GET /v1/{project_id}/services/{service_id} modelarts:service:get - √ √ 更新模型服务 PUT /v1/{project_id}/services/{service_id} modelarts:service:update - √ √ 删除模型服务 DELETE /v1/{project_id}/services/{service_id} modelarts:service:delete - √ √ 启动停止服务 PUT /v1/{project_id}/services/{service_id} (request body携带status信息) modelarts:service:action - √ √ 启动停止边缘节点服务实例 PUT /v1/{project_id}/services/{service_id}/nodes/{node_id}/status (request body携带status信息) modelarts:nodeservice:action - √ √ 查询服务监控信息 GET /v1/{project_id}/services/{service_id}/monitor modelarts:service:getMonitor - √ √ 查询服务更新日志 GET /v1/{project_id}/services/{service_id}/logs modelarts:service:getLogs - √ √ 查询服务事件日志 GET /v1/{project_id}/services/{service_id}/events modelarts:service:getEvents - √ √ 父主题: 权限策略和授权项
  • 数据管理权限 表1 数据集管理的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询数据集列表 GET /v2/{project_id}/datasets modelarts:dataset:listDatasets - √ √ 创建数据集 POST /v2/{project_id}/datasets modelarts:dataset:createDataset obs:bucket:HeadBucket obs:bucket:ListBucket obs:object:PutObject obs:object:PutObject obs:bucket:ListAllMyBuckets √ √ 查询数据集详情 GET /v2/{project_id}/datasets/{dataset_id} modelarts:dataset:getDataset - √ √ 更新数据集 PUT /v2/{project_id}/datasets/{dataset_id} modelarts:dataset:updateDataset - √ √ 删除数据集 DELETE /v2/{project_id}/datasets/{dataset_id} modelarts:dataset:deleteDataset obs:bucket:ListAllMyBuckets obs:bucket:ListBucket obs:object:DeleteObject √ √ 查询数据集的统计信息 GET /v2/{project_id}/datasets/{dataset_id}/data-annotations/stats modelarts:dataset:getDataset - √ √ 查询数据集监控数据 GET /v2/{project_id}/datasets/{dataset_id}/metrics modelarts:dataset:getDataset - √ √ 查询团队标注任务统计信息 GET /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/data-annotations/stats modelarts:dataset:getWorkforceTask - √ √ 查询团队标注任务成员的进度信息 GET /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/metrics modelarts:dataset:getWorkforceTask - √ √ 表2 数据集版本管理的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询数据集的版本列表 GET /v2/{project_id}/datasets/{dataset_id}/versions modelarts:dataset:getDataset - √ √ 创建数据集标注版本 POST /v2/{project_id}/datasets/{dataset_id}/versions modelarts:dataset:createDatasetVersion obs:object:PutObject √ √ 查询数据集版本详情 GET /v2/{project_id}/datasets/{dataset_id}/versions/{version_id} modelarts:dataset:getDataset - √ √ 删除数据集标注版本 DELETE /v2/{project_id}/datasets/{dataset_id}/versions/{version_id} modelarts:dataset:deleteDatasetVersion obs:bucket:ListAllMyBuckets obs:bucket:ListBucket obs:object:DeleteObject √ √ 表3 样本管理的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询样本列表 GET /v2/{project_id}/datasets/{dataset_id}/data-annotations/samples modelarts:sample:listSamples obs:object:GetObject √ √ 批量添加样本 POST /v2/{project_id}/datasets/{dataset_id}/data-annotations/samples modelarts:sample:addSamples obs:object:PutObject √ √ 批量删除样本 POST /v2/{project_id}/datasets/{dataset_id}/data-annotations/samples/delete modelarts:sample:deleteSamples obs:object:DeleteObject √ √ 查询单个样本信息 GET /v2/{project_id}/datasets/{dataset_id}/data-annotations/samples/{sample_id} modelarts:sample:getSample obs:object:GetObject √ √ 获取样本搜索条件 GET /v2/{project_id}/datasets/{dataset_id}/data-annotations/search-condition modelarts:sample:listSamples - √ √ 分页查询团队标注任务下的样本列表 GET /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/data-annotations/samples modelarts:sample:listSamples obs:object:GetObject √ √ 查询团队标注的样本信息 GET /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/data-annotations/samples/{sample_id} modelarts:sample:getSample obs:object:GetObject √ √ 表4 标签管理的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询数据集标签列表 GET /v2/{project_id}/datasets/{dataset_id}/data-annotations/labels modelarts:dataset:getDataset - √ √ 创建数据集标签 POST /v2/{project_id}/datasets/{dataset_id}/data-annotations/labels modelarts:dataset:updateDataset - √ √ 批量修改标签 PUT /v2/{project_id}/datasets/{dataset_id}/data-annotations/labels modelarts:dataset:updateDataset - √ √ 批量删除标签 POST /v2/{project_id}/datasets/{dataset_id}/data-annotations/labels/delete modelarts:dataset:updateDataset - √ √ 按标签名称更新单个标签 PUT /v2/{project_id}/datasets/{dataset_id}/data-annotations/labels/{label_name} modelarts:dataset:updateDataset - √ √ 按标签名称删除标签及仅包含此标签的文件 DELETE /v2/{project_id}/datasets/{dataset_id}/data-annotations/labels/{label_name} modelarts:dataset:updateDataset obs:object:DeleteObject √ √ 表5 人工标注的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 批量更新样本标签 PUT /v2/{project_id}/datasets/{dataset_id}/data-annotations/samples modelarts:dataset:updateDataset obs:object:GetObject √ √ 表6 标注任务管理的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询数据集的团队标注任务列表 GET /v2/{project_id}/datasets/{dataset_id}/workforce-tasks modelarts:dataset:listWorkforceTasks - √ √ 创建团队标注任务 POST /v2/{project_id}/datasets/{dataset_id}/workforce-tasks modelarts:dataset:createWorkforceTask - √ √ 查询团队标注任务详情 GET /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id} modelarts:dataset:getWorkforceTask - √ √ 启动团队标注任务 POST /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/acceptance modelarts:dataset:updateWorkforceTask - √ √ 更新团队标注任务 PUT /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id} modelarts:dataset:updateWorkforceTask - √ √ 删除团队标注任务 DELETE /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id} modelarts:dataset:deleteWorkforceTask - √ √ 创建团队标注验收任务 POST /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/acceptance modelarts:dataset:updateWorkforceTask - √ √ 查询团队标注验收任务报告 GET /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/acceptance/report modelarts:dataset:getWorkforceTask - √ √ 更新团队标注验收任务状态 PUT /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/acceptance/status modelarts:dataset:updateWorkforceTask - √ √ 表7 团队标注流程管理的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 提交验收任务的样本评审意见 POST /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/acceptance/batch-comment modelarts:dataset:updateWorkforceTask - √ √ 批量更新团队标注样本的标签 PUT /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/data-annotations/samples modelarts:dataset:updateWorkforceTask - √ √ 表8 标注团队管理的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询标注团队列表 GET /v2/{project_id}/workforces modelarts:processTask:listWorkforce - √ √ 创建标注团队 POST /v2/{project_id}/workforces modelarts:processTask:createWorkforce - √ √ 查询标注团队详情 GET /v2/{project_id}/workforces/{workforce_id} modelarts:processTask:getWorkforce - √ √ 更新标注团队 PUT /v2/{project_id}/workforces/{workforce_id} modelarts:processTask:updateWorkforce - √ √ 删除标注团队 DELETE /v2/{project_id}/workforces/{workforce_id}/workers/{worker_id} modelarts:processTask:updateWorkforce - √ √ 表9 标注团队成员管理的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 向标注成员发送邮件 POST /v2/{project_id}/datasets/{dataset_id}/workforce-tasks/{workforce_task_id}/notify modelarts:dataset:updateWorkforceTask - √ √ 查询所有团队的标注成员列表 GET /v2/{project_id}/workforces/workers modelarts:processTask:getWorkforce - √ √ 查询标注团队的成员列表 GET /v2/{project_id}/workforces/{workforce_id}/workers modelarts:processTask:getWorkforce - √ √ 创建标注团队的成员 POST /v2/{project_id}/workforces/{workforce_id}/workers modelarts:processTask:updateWorkforce - √ √ 批量删除标注团队成员 POST /v2/{project_id}/workforces/{workforce_id}/workers/batch-delete modelarts:processTask:updateWorkforce - √ √ 查询标注团队成员详情 GET /v2/{project_id}/workforces/{workforce_id}/workers/{worker_id} modelarts:processTask:getWorkforce - √ √ 更新标注团队成员 PUT /v2/{project_id}/workforces/{workforce_id}/workers/{worker_id} modelarts:processTask:updateWorkforce - √ √ 删除标注团队成员 DELETE /v2/{project_id}/workforces/{workforce_id}/workers/{worker_id} modelarts:processTask:updateWorkforce - √ √ 表10 数据导入任务的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询数据集导入任务列表 GET /v2/{project_id}/datasets/{dataset_id}/import-tasks modelarts:dataset:getDataset - √ √ 创建导入任务 POST /v2/{project_id}/datasets/{dataset_id}/import-tasks modelarts:dataset:createImportTask - √ √ 查询数据集导入任务的详情 GET /v2/{project_id}/datasets/{dataset_id}/import-tasks/{task_id} modelarts:dataset:getDataset - √ √ 表11 数据导出任务的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询数据集导出任务列表 GET /v2/{project_id}/datasets/{dataset_id}/export-tasks modelarts:dataset:getDataset - √ √ 创建数据集导出任务 POST /v2/{project_id}/datasets/{dataset_id}/export-tasks modelarts:dataset:createExportTask - √ √ 查询数据集导出任务的状态 GET /v2/{project_id}/datasets/{resource_id}/export-tasks/{task_id} modelarts:dataset:getDataset - √ √ 表12 数据同步任务的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 同步数据集 POST /v2/{project_id}/datasets/{dataset_id}/sync-data modelarts:dataset:updateDataset obs:bucket:ListBucket obs:bucket:ListAllMyBuckets √ √ 查询数据集同步任务的状态 GET /v2/{project_id}/datasets/{dataset_id}/sync-data/status modelarts:dataset:getDataset - √ √ 表13 智能任务的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询智能标注的样本列表 GET /v2/{project_id}/datasets/{dataset_id}/auto-annotations/samples modelarts:sample:listSamples obs:object:GetObject √ √ 查询单个智能标注样本的信息 GET /v2/{project_id}/datasets/{dataset_id}/auto-annotations/samples/{sample_id} modelarts:sample:getSample obs:object:GetObject √ √ 分页查询智能任务列表 GET /v2/{project_id}/datasets/{dataset_id}/tasks modelarts:dataset:getDataset - √ √ 启动智能任务 POST /v2/{project_id}/datasets/{dataset_id}/tasks modelarts:dataset:updateDataset obs:bucket:PutBucketAcl obs:bucket:GetBucketAcl obs:bucket:GetBucketPolicy obs:bucket:DeleteBucketPolicy obs:bucket:ListBucket obs:bucket:ListAllMyBuckets obs:object:DeleteObject obs:bucket:ListBucketVersions √ √ 获取智能任务的信息 GET /v2/{project_id}/datasets/{dataset_id}/tasks/{task_id} modelarts:dataset:getDataset - √ √ 停止智能任务 POST /v2/{project_id}/datasets/{dataset_id}/tasks/{task_id}/stop modelarts:dataset:updateDataset - √ √ 表14 处理任务的细化权限说明 权限 对应API接口 授权项 依赖的授权项 IAM项目 企业项目 查询处理任务列表 GET /v2/{project_id}/processor-tasks modelarts:processTask:listProcessTasks - √ √ 创建处理任务 POST /v2/{project_id}/processor-tasks modelarts:processTask:createProcessTask obs:bucket:HeadBucket obs:bucket:ListBucket obs:object:PutObject obs:object:PutObject obs:bucket:ListAllMyBuckets obs:bucket:PutBucketAcl obs:bucket:GetBucketAcl obs:bucket:GetBucketPolicy obs:bucket:DeleteBucketPolicy √ √ 查询数据处理的算法类别 GET /v2/{project_id}/processor-tasks/items modelarts:processTask:getProcessTask - √ √ 查询处理任务详情 GET /v2/{project_id}/processor-tasks/{task_id}/versions/{version_id} modelarts:processTask:getProcessTask - √ √ 更新处理任务 PUT /v2/{project_id}/processor-tasks/{task_id} modelarts:processTask:updateProcessTask - √ √ 删除处理任务 DELETE /v2/{project_id}/processor-tasks/{task_id} modelarts:processTask:deleteProcessTask obs:bucket:PutBucketAcl obs:bucket:GetBucketAcl obs:bucket:GetBucketPolicy obs:bucket:DeleteBucketPolicy obs:bucket:ListBucket obs:bucket:ListAllMyBuckets obs:object:DeleteObject √ √ 查询数据处理任务的版本列表 GET /v2/{project_id}/processor-tasks/{task_id}/versions modelarts:processTask:getProcessTask obs:bucket:HeadBucket obs:bucket:ListBucket obs:object:PutObject obs:object:PutObject obs:bucket:ListAllMyBuckets obs:bucket:PutBucketAcl obs:bucket:GetBucketAcl obs:bucket:GetBucketPolicy obs:bucket:DeleteBucketPolicy √ √ 创建数据处理任务版本 POST /v2/{project_id}/processor-tasks/{task_id}/versions modelarts:processTask:createProcessTask - √ √ 查询数据处理任务的版本详情 GET /v2/{project_id}/processor-tasks/{task_id}/versions modelarts:processTask:getProcessTask - √ √ 删除数据处理任务的版本 DELETE /v2/{project_id}/processor-tasks/{task_id}/versions/{version_id} modelarts:processTask:deleteProcessTask obs:bucket:PutBucketAcl obs:bucket:GetBucketAcl obs:bucket:GetBucketPolicy obs:bucket:DeleteBucketPolicy obs:bucket:ListBucket obs:bucket:ListAllMyBuckets obs:object:DeleteObject √ √ 查询数据处理任务版本的结果展示 GET /v2/{project_id}/processor-tasks/{task_id}/versions/{version_id}/results modelarts:processTask:getProcessTask obs:object:GetObject √ √ 停止数据处理任务的版本 POST /v2/{project_id}/processor-tasks/{task_id}/versions/{version_id}/stop modelarts:processTask:updateProcessTask - √ √ 父主题: 权限策略和授权项
  • 创建CronFederatedHPA策略 控制台创建 登录UCS控制台,在左侧导航栏中选择“容器舰队”。 单击已开通集群联邦的容器舰队名称,进入容器舰队详情页面。 在左侧导航栏选择“负载伸缩”,选择“定时伸缩策略”,并单击右上角“创建定时伸缩策略”。 参考表1配置CronFederatedHPA策略。 表1 基础配置参数说明 参数 参数说明 策略名称 CronFederatedHPA策略的名称。 命名空间 需要设置自动扩缩的工作负载所在命名空间的名称。 作用对象 可选择作用于工作负载或指标伸缩策略。 工作负载:选择需要应用该策略的工作负载,也可新建工作负载,新建的具体操作请参见创建工作负载。 指标伸缩策略:选择已创建的指标伸缩策略,也可单击右侧新建,新建的具体操作请参见创建FederatedHPA策略。 单击策略配置下的“添加规则”,参考表2配置策略规则。 表2 CronFederatedHPA策略规则配置 参数 参数说明 规则名称 CronFederatedHPA策略的名称。 目标副本数 CronFederatedHPA策略的目标Pod数。 触发时间 可选择每小时、每天、每周、每月、每年,或选择Cron表达式自行配置触发时间。 每小时:在每小时的第几分钟执行一次。例如选择“5”,策略将会在每小时的第5分钟执行一次。 每天:在每天具体的某一个时间执行一次,可具体到分钟。设置完成后,策略将会在每天的该时点执行。 每周:在每周具体的某一天内的某一时间执行一次,可具体到分钟。设置完成后,策略将会在每周的该天该时点执行。 每月:在每月具体的某一天内的某一时间执行一次,可具体到分钟。设置完成后,策略将会在每月的该天该时点执行。 每年:在每年具体的某月某天内的某一时间执行一次,可具体到分钟。设置完成后,策略将会在每年的该天该时点执行。 Cron表达式: Cron表达式遵循以下语法规则: ┌───────────── 分钟(0-59) │ ┌─────────── 小时(0-23) │ │ ┌────────── 月的某天(1-31) │ │ │ ┌──────── 月份(1-12) │ │ │ │ ┌─────── 周的某天(0-6) │ │ │ │ │ │ │ │ │ │ * * * * * 例如:0 0 13 * 5 表示此任务必须在每个星期五的午夜以及每个月的 13 日的午夜开始。 时区 可选择上海时区或新加坡时区。 设置完成后,单击“确定”,然后单击“创建”,即可跳转定时伸缩策略列表查看策略详情,完成CronFederatedHPA策略创建。 命令行创建 使用kubectl连接集群联邦,详细操作请参见使用kubectl连接集群联邦。 使用如下命令创建并编辑cfhpa.yaml文件。 vi cfhpa.yaml 文件内容定义如下所示,参数定义请参见表3。本示例中构建的CronFederatedHPA策略名称为cron-federated-hpa,直接作用于名称为test的工作负载,内含两条定时规则(名称为“Scale-Up”和“Scale-Down”)。其中,Scale-Up规则为每天8:30的目标Pod数为10,Scale-Down规则为每天21:00的目标Pod数为5。 apiVersion: autoscaling.karmada.io/v1alpha1 kind: CronFederatedHPA metadata: name: cron-federated-hpa # CronFederatedHPA策略名称 spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment # 可选择Deployment或FederatedHPA name: test # 工作负载或FederatedHPA的名称 rules: - name: "Scale-Up" # 规则名称 schedule: 30 08 * * * # 触发时间 targetReplicas: 10 # 目标Pod数,非负整数 timeZone: Asia/Shanghai # 时区 - name: "Scale-Down" # 规则名称 schedule: 0 21 * * * # 触发时间 targetReplicas: 5 # 目标Pod数,非负整数 timeZone: Asia/Shanghai # 时区 表3 关键参数说明 参数 是否必填 参数类型 描述 kind 是 String 可选择Deployment或FederatedHPA。 单独使用CronFederatedHPA策略:Deployment 同时使用FederatedHPA与CronFederatedHPA策略:FederatedHPA name 是 String CronFederatedHPA策略中定义的规则名称,长度为1~32字符。 schedule 是 String 策略触发时间,以Cron表达式呈现,具体遵循以下语法规则: ┌───────────── 分钟(0-59) │ ┌─────────── 小时(0-23) │ │ ┌────────── 月的某天(1-31) │ │ │ ┌──────── 月份(1-12) │ │ │ │ ┌─────── 周的某天(0-6) │ │ │ │ │ │ │ │ │ │ * * * * * 例如:0 0 13 * 5 表示此任务必须在每个星期五的午夜以及每个月的 13 日的午夜开始。 targetReplicas 是 String CronFederatedHPA策略的目标Pod数。 timeZone 是 String 时区,可选择上海时区或新加坡时区。 上海时区:Asia/Shanghai 新加坡时区:Asia/Singapore 执行如下命令创建CronFederatedHPA策略。 kubectl apply -f cfhpa.yaml 回显如下表明创建成功。 CronFederatedHPA.autoscaling.karmada.io/cron-federated-hpa created 创建完成后,可以执行如下命令观察负载伸缩的运行效果。 检查工作负载的当前Pod数:kubectl get deployments 查看CronFederatedHPA策略事件(仅保留最近三条):kubectl describe cronfederatedhpa cron-federated-hpa 可以执行如下命令管理CronFederatedHPA策略。其中cron-federated-hpa为CronFederatedHPA策略的名称,实际情况中需修改为自己所创建的策略名称。 获取CronFederatedHPA策略:kubectl get cronfederatedhpa cron-federated-hpa 更新CronFederatedHPA策略:kubectl edit cronfederatedhpa cron-federated-hpa 删除CronFederatedHPA策略:kubectl delete cronfederatedhpa cron-federated-hpa
  • 查看策略实施状态 在容器舰队或集群的策略详情页,可以查看策略实施详情和状态,以及舰队或集群的不合规资源、告警事件和强制拦截事件的情况。您可以根据这些数据评估集群的合规情况,并及时采取修复措施。 图2 策略实施详情 当前,不合规资源统计的上报时间大约在15至30分钟之间。 如果下发策略实例后未对违规资源进行拦截或告警,请检查是否已开启ValidatingAdmissionPolicy特性门控、是否已启用ValidatingAdmissionWebhook和MutatingAdmissionWebhook准入控制器,详情请参考准入控制器的作用是什么?
  • 创建策略实例 登录UCS控制台,在左侧导航栏中选择“策略中心”。 在列表中找到已启用策略中心功能的容器舰队或集群,单击“创建策略实例”。 填写如下参数: 图1 创建策略实例 策略定义:从内置的33个策略定义中选择一个,以便为您的集群或容器舰队配置资源审计规则。尽管当前不支持自定义策略定义,但这些预定义的策略定义基本可以满足您在合规性和安全性方面的需求。策略定义的详细介绍请参阅策略定义库概述。 策略执行方式:包括拦截和告警两种方式。拦截表示不符合策略要求的资源将无法创建,告警表示不符合策略要求的资源仅告警提醒,仍可以正常创建。 策略生效范围:选择生效的命名空间。 单击“创建”,创建完成后系统会自动分发策略,如果分发成功,策略实例将在集群中生效。 策略实例分发成功后可在集群中执行符合策略实例的动作,此时该动作可正常执行;若在集群中执行不符合策略实例的动作,该动作将被拒绝掉或者上报告警事件。
  • 修改/删除策略实例 作为平台工程师,您通常需要定期审视和更新策略实例,或者删除一些不再使用的策略实例。要执行这些操作,请参考以下步骤: 登录UCS控制台,在左侧导航栏中选择“策略中心”。 在列表中找到已启用策略中心功能的容器舰队或集群,单击舰队或集群名称,进入详情页面。 在“策略实施详情”中单击“策略实例”页签。 找到待操作的策略实例,单击操作列的“编辑”或“删除”,完成相关参数的修改,或者删除策略实例。