华为云用户手册

  • 配置思路 图1是典型网络部署流程和步骤,如果您的网络业务有特殊需求,可以在此基础上进行调整。 图1 配置流程图 本案例以防火墙(FW)作为网关设备,整网设备均在华为乾坤云平台纳管。其中FW、随板AC通过Web网管、命令行方式上云,随板AC下挂的设备通过DHCP Option方式上云,然后远程进行业务配置。 数据规划。 使用云网规工具自动规划AP的安装点位,确保AP的无线信号对学校全覆盖。 规划网络信息,包括组网方案、设备款型、接口、无线业务、QoS策略、网络安全策略等。 配置前准备。 (可选)手机下载并安装华为乾坤APP软件,用于网络验收。 现场安装设备,包括硬装、连线、上电等。 设备上线。 创建站点并添加设备:在华为乾坤云平台创建站点,将所有设备加入同一个站点,以便统一配置。 配置防火墙接入Internet:通过PPPoE拨号方式接入运营商网络,采用Web网管配置。 配置设备上线云平台。 防火墙注册上线:配置防火墙为双机热备镜像模式,工作模式切为云管理模式,采用Web网管配置对接云平台。 随板AC注册上线:采用命令行配置对接云平台。 随板AC下挂设备注册上线:在随板AC(作为DHCP Server)上配置下挂设备的地址池和DHCP 148参数。接入交换机采用DHCP Option148方式注册上线,也就是从DHCP Server上获取IP地址的同时也获取云管理平台的IP/URL地址和端口号,完成注册上线。 在华为乾坤云平台配置网络业务。 配置交换机业务。 配置随板AC下行接口,以及接口允许通过的VLAN等参数。 配置随板AC的DHCP Server功能,为用户终端分配IP地址。 配置接入交换机上行、下行接口,以及接口允许通过的VLAN等参数。 配置认证业务。 访客Wi-Fi采用用户名密码认证,创建员工用户组,定制Portal推送页面、推送策略、认证规则等。 员工Wi-Fi采用短信认证,配置华为乾坤云平台与短信服务器对接,定制Portal推送页面、推送策略、认证规则等。 教学有线终端接入采用802.1X认证,使用默认的认证授权配置。 配置员工和访客Wi-Fi,包括创建SSID、配置用户认证和QoS策略等。 结果验证。确认终端可以正常上网,可以在华为乾坤云平台监控各设备状态信息。 父主题: 防火墙+核心交换机+接入交换机+AP+随板AC组网场景
  • 功能介绍 您可以通过AI漫游查看如下信息: 首页卡片中展示了当前时间窗内AI漫游引导次数、终端画像数和终端厂商识别的统计信息。 首页列表中展示了当前时间窗内各厂商AI漫游终端的统计信息,包括:厂商、终端数量、引导成功次数/总次数、漫游前和漫游后信号强度、终端画像数、上行和下行速率等。 单击“查看详情”列中,可以查看该厂商漫游调优事件的详情,包括:漫游时间、用户MAC、用户名和漫游结果等。 单击单个漫游事件前面的,可以查看此次漫游出详情、漫游入详情和漫游过程途径AP信息。
  • 竞争力 相比传统统一策略的漫游引导,智能漫游差异化的引导改善了漫游策略终端私有,网络侧主动引导成功率低业界难题,实现漫游成功率提升至90%,漫游体现提升。 相比业界定制化的漫游策略(网络厂商与部分终端厂商合作),存在只能优化部分手机款型的漫游体验,其他款型无法兼顾,相比我司方案普适性差的缺点。 基于历史大数据的自我在线学习,能自适应新上线终端款型的漫游引导(终端款型新上线,操作系统迭代升级),及时性高,维护成本低。
  • 应对方案与关键技术 基于大数据进行终端漫游行为画像训练,基于不同“终端款型+操作系统”实施差异性漫游引导策略(是否能引导,什么时候引导,引导到哪个AP),提升漫游成功率,降低漫游过程的丢包,时延,提升终端漫游体验。 以终端类型识别为基础,采用强化学习算法进行在线终端画像实时训练,与设备侧、终端侧协同提升漫游体验。 终端下行信号测量:基于Wi-Fi 802.11k,Wi-Fi 802.11h协议获取每个终端的下行信号测量能力及测量结果,以及终端802.11v的漫游协议支持能力。 终端漫游行为基线:探寻每个终端漫游的终端802.11v选网条件(源AP信号阈值、目标AP信号阈值、源/目标AP信号差值等)以及不同的终端802.11v协议参数组合,建立行为基线。 终端画像训练:大数据识别与分析每个终端的漫游行为特征,结合基础画像的漫游引导效果,采用强化学习算法训练出每种终端款型的行为特征。
  • 操作(Action) 操作(Action)即为SCP中支持的授权项。 “访问级别”列描述如何对操作进行分类(list、read和write等)。此分类可帮助您了解在SCP中相应操作对应的访问级别。 “资源类型”列指每个操作是否支持资源级权限。 资源类型支持通配符号*表示所有。如果此列没有值(-),则必须在SCP语句的Resource元素中指定所有资源类型(“*”)。 如果该列包含资源类型,则必须在具有该操作的语句中指定该资源的URN。 资源类型列中必需资源在表中用星号(*)标识,表示使用此操作必须指定该资源类型。 关于ServiceStage定义的资源类型的详细信息请参见资源类型(Resource)。 “条件键”列包括了可以在SCP语句的Condition元素中支持指定的键值。 如果该授权项资源类型列存在值,则表示条件键仅对列举的资源类型生效。 如果该授权项资源类型列没有值(-),则表示条件键对整个授权项生效。 如果此列条件键没有值(-),表示此操作不支持指定条件键。 关于ServiceStage定义的条件键的详细信息请参见条件(Condition)。 您可以在SCP语句的Action元素中指定以下ServiceStage的相关操作。 表1 ServiceStage支持的授权项 授权项 描述 访问级别 资源类型 条件键 servicestage:app:getApplication 授予用户查看指定应用权限 read app g:EnterpriseProjectId g:ResourceTag servicestage:app:createApplication 授予用户创建应用权限 write app g:EnterpriseProjectId g:RequestTag g:TagKeys servicestage:app:modifyApplication 授予用户更新应用权限 write app g:EnterpriseProjectId g:ResourceTag g:RequestTag g:TagKeys servicestage:app:deleteApplication 授予用户删除应用权限 write app g:EnterpriseProjectId g:ResourceTag servicestage:app:listApplication 授予用户查看应用列表权限 list - - servicestage:app:getConfiguration 授予用户查看应用配置权限 read app g:ResourceTag g:EnterpriseProjectId servicestage:app:deleteConfiguration 授予用户删除应用配置权限 write app g:EnterpriseProjectId g:ResourceTag servicestage:app:modifyConfiguration 授予用户更新应用配置权限 write app g:EnterpriseProjectId g:ResourceTag servicestage:app:getComponent 授予用户查看指定应用组件权限 read app g:EnterpriseProjectId g:ResourceTag servicestage:app:createComponent 授予用户创建应用组件权限 write app g:ResourceTag g:EnterpriseProjectId servicestage:app:modifyComponent 授予用户更新应用组件权限 write app g:ResourceTag g:EnterpriseProjectId servicestage:app:deleteComponent 授予用户删除应用组件权限 write app g:ResourceTag g:EnterpriseProjectId servicestage:app:listComponent 授予用户查看应用组件列表权限 list - - servicestage:environment:create 授予用户创建环境权限 write environment g:EnterpriseProjectId g:RequestTag g:TagKeys servicestage:environment:get 授予用户查看环境信息权限 read environment g:ResourceTag g:EnterpriseProjectId servicestage:environment:list 授予用户查看环境列表权限 list - - servicestage:environment:modify 授予用户更新环境权限 write environment g:ResourceTag g:EnterpriseProjectId g:RequestTag g:TagKeys servicestage:environment:delete 授予用户删除环境权限 write environment g:ResourceTag g:EnterpriseProjectId servicestage:environment:tag 授予TMS用户创建环境标签权限 tagging environment g:ResourceTag g:EnterpriseProjectId g:RequestTag g:TagKeys servicestage:app:tag 授予TMS用户创建应用标签权限 tagging app g:ResourceTag g:EnterpriseProjectId g:RequestTag g:TagKeys servicestage:environment:listResourcesByTag 授予TMS用户通过标签查询环境资源权限 read environment g:RequestTag g:TagKeys servicestage:app:listResourcesByTag 授予TMS用户通过标签查询应用资源权限 read app g:RequestTag g:TagKeys servicestage:environment:unTagResource 授予TMS用户删除环境资源标签权限 tagging environment g:ResourceTag g:RequestTag g:EnterpriseProjectId g:TagKeys servicestage:app:unTagResource 授予TMS用户删除应用资源标签权限 tagging app g:ResourceTag g:EnterpriseProjectId g:RequestTag g:TagKeys servicestage:environment:listTags 授予TMS用户查询环境资源标签列表权限 read - - servicestage:app:listTags 授予TMS用户查询应用资源标签列表权限 read - - servicestage:pipeline:get 授予用户查看流水线权限 read pipeline - servicestage:pipeline:create 授予用户创建流水线权限 write pipeline - servicestage:pipeline:modify 授予用户更新流水线权限 write pipeline - servicestage:pipeline:delete 授予用户删除流水线权限 write pipeline - servicestage:pipeline:list 授予用户查看流水线列表权限 list - - servicestage:assembling:runtimeList 授予用户查看技术栈列表权限 read - - servicestage:assembling:getInfo 授予用户查看构建信息权限 list - - servicestage:assembling:create 授予用户创建构建任务权限 write assembling - servicestage:assembling:modify 授予用户更新构建任务权限 write assembling - servicestage:assembling:delete 授予用户删除构建任务权限 write assembling - servicestage:assembling:list 授予用户查看构建任务列表权限 list - - servicestage:repositoryAuth:list 授予用户获取仓库授权列表权限 list - - servicestage:repositoryAuth:get 授予用户获取仓库授权权限 read repositoryAuth - servicestage:repositoryAuth:create 授予用户创建仓库授权权限 write repositoryAuth - servicestage:repositoryAuth:delete 授予用户删除仓库授权权限 write repositoryAuth - servicestage:environment:listTagsForResource 授予eps用户查询环境资源标签列表权限 read environment g:ResourceTag g:EnterpriseProjectId servicestage:app:listTagsForResource 授予eps用户查询应用资源标签列表权限 read app g:ResourceTag g:EnterpriseProjectId ServiceStage的API通常对应着一个或多个授权项。表2展示了API与授权项的关系,以及该API需要依赖的授权项。 表2 API与授权项的关系 API 对应的授权项 依赖的授权项 GET /v2/{project_id}/cas/metadata/runtimes servicestage:app:listApplication - GET /v2/{project_id}/cas/metadata/flavors servicestage:app:listApplication - POST /v2/{project_id}/cas/environments servicestage:environment:create - GET /v2/{project_id}/cas/environments servicestage:environment:list - PUT /v2/{project_id}/cas/environments/{environment_id} servicestage:environment:modify - DELETE /v2/{project_id}/cas/environments/{environment_id} servicestage:environment:delete - GET /v2/{project_id}/cas/environments/{environment_id} servicestage:environment:get - PATCH /v2/{project_id}/cas/environments/{environment_id}/resources servicestage:environment:modify - POST /v2/{project_id}/cas/applications servicestage:app:createApplication - GET /v2/{project_id}/cas/applications servicestage:app:listApplication - PUT /v2/{project_id}/cas/applications/{application_id} servicestage:app:modifyApplication - DELETE /v2/{project_id}/cas/applications/{application_id} servicestage:app:deleteApplication - GET /v2/{project_id}/cas/applications/{application_id} servicestage:app:getApplication - PUT /v2/{project_id}/cas/applications/{application_id}/configuration servicestage:app:modifyConfiguration - DELETE /v2/{project_id}/cas/applications/{application_id}/configuration servicestage:app:deleteConfiguration - GET /v2/{project_id}/cas/applications/{application_id}/configuration servicestage:app:getConfiguration - POST /v2/{project_id}/cas/applications/{application_id}/components servicestage:app:createComponent servicestage:assembling:getInfo servicestage:assembling:create GET /v2/{project_id}/cas/applications/{application_id}/components servicestage:app:listComponent - PUT /v2/{project_id}/cas/applications/{application_id}/components/{component_id} servicestage:app:modifyComponent - DELETE /v2/{project_id}/cas/applications/{application_id}/components/{component_id} servicestage:app:deleteComponent - GET /v2/{project_id}/cas/applications/{application_id}/components/{component_id} servicestage:app:getComponent - POST /v2/{project_id}/cas/applications/{application_id}/components/{component_id}/instances servicestage:app:createComponent servicestage:assembling:getInfo servicestage:assembling:create GET /v2/{project_id}/cas/applications/{application_id}/components/{component_id}/instances servicestage:app:listComponent - POST /v2/{project_id}/cas/applications/{application_id}/components/{component_id}/instances/{instance_id}/action servicestage:app:modifyComponent - PUT /v2/{project_id}/cas/applications/{application_id}/components/{component_id}/instances/{instance_id} servicestage:app:modifyComponent - DELETE /v2/{project_id}/cas/applications/{application_id}/components/{component_id}/instances/{instance_id} servicestage:app:deleteComponent - GET /v2/{project_id}/cas/applications/{application_id}/components/{component_id}/instances/{instance_id} servicestage:app:getComponent - GET /v2/{project_id}/cas/applications/{application_id}/components/{component_id}/instances/{instance_id}/snapshots servicestage:app:getComponent - GET /v2/{project_id}/cas/jobs/{job_id} servicestage:app:listApplication - POST /v3/{project_id}/cas/environments servicestage:environment:create - GET /v3/{project_id}/cas/environments servicestage:environment:list - PUT /v3/{project_id}/cas/environments/{environment_id} servicestage:environment:modify - DELETE /v3/{project_id}/cas/environments/{environment_id} servicestage:environment:delete - GET /v3/{project_id}/cas/environments/{environment_id} servicestage:environment:get - PUT /v3/{project_id}/cas/environments/{environment_id}/resources servicestage:environment:modify - GET /v3/{project_id}/cas/environments/{environment_id}/resources servicestage:environment:list - POST /v3/{project_id}/cas/applications servicestage:app:createApplication - GET /v3/{project_id}/cas/applications servicestage:app:listApplication - PUT /v3/{project_id}/cas/applications/{application_id} servicestage:app:modifyApplication - GET /v3/{project_id}/cas/applications/{application_id} servicestage:app:getApplication - GET /v3/{project_id}/cas/applications/{application_id}/configuration servicestage:app:getConfiguration - PUT /v3/{project_id}/cas/applications/{application_id}/configuration servicestage:app:modifyConfiguration - DELETE /v3/{project_id}/cas/applications/{application_id}/configuration servicestage:app:deleteConfiguration - POST /v3/{project_id}/cas/applications/{application_id}/components servicestage:app:createComponent servicestage:assembling:getInfo servicestage:assembling:create GET /v3/{project_id}/cas/applications/{application_id}/components servicestage:app:listComponent - GET /v3/{project_id}/cas/components servicestage:app:listComponent - PUT /v3/{project_id}/cas/applications/{application_id}/components/{component_id} servicestage:app:modifyComponent - DELETE /v3/{project_id}/cas/applications/{application_id}/components/{component_id} servicestage:app:deleteComponent - GET /v3/{project_id}/cas/applications/{application_id}/components/{component_id} servicestage:app:getComponent - POST /v3/{project_id}/cas/applications/{application_id}/components/{component_id}/action servicestage:app:modifyComponent - GET /v3/{project_id}/cas/applications/{application_id}/components/{component_id}/records servicestage:app:listComponent - GET /v3/{project_id}/cas/runtimestacks servicestage:app:listApplication - GET /v1/{project_id}/git/auths servicestage:repositoryAuth:list - GET /v1/{project_id}/git/auths/{repo_type}/redirect servicestage:repositoryAuth:get - POST /v1/{project_id}/git/auths/{repo_type}/oauth servicestage:repositoryAuth:create - POST /v1/{project_id}/git/auths/{repo_type}/personal servicestage:repositoryAuth:create - POST /v1/{project_id}/git/auths/{repo_type}/password servicestage:repositoryAuth:create - DELETE /v1/{project_id}/git/auths/{name} servicestage:repositoryAuth:delete - GET /v2/{project_id}/servicestage-environment/{environment_id}/tags servicestage:environment:listTagsForResource - GET /v2/{project_id}/servicestage-application/{app_id}/tags servicestage:app:listTagsForResource -
  • 功能限制 最多可配置100条限流规则。 SQL限流功能当前仅支持SELECT、UPDATE、DELETE关键字,不支持INSERT关键字。 当SQL语句匹配多条限流规则时,优先生效最新添加的规则,之前的规则不再生效。 在添加SQL限流规则之前,已经开始执行的SQL语句,不会被记入并发数。 若复制时延过大,针对只读实例,新增或删除限流规则不会立刻生效。 系统表不受SQL限流的限制。 不涉及数据查询的SQL不受限流的限制,例如:select sleep(***); 暂不支持对存储过程、触发器、函数内的SQL做限流设置。 您可以在DAS执行如下SQL查看SQL限流规则的执行情况:select * from information_schema.rds_sql_filter_info; 当设置过多限流规则时,对性能有一定影响,使用后请删除多余的规则。
  • 操作场景 RDS for MySQL Serverless实例提供了CPU、内存的实时弹性能力,构建云盘架构下的RDS for MySQL产品新形态。实例不仅提供网络资源、命名空间、存储空间的垂直资源隔离能力,还提供计算资源按需计费的能力,具有资源用量低、简单易用、弹性灵活和价格低廉等优点,赋能用户面向业务峰谷时对计算能力进行快速且独立的扩缩要求,做到快速响应业务变化的同时,合理优化使用成本,进一步助力企业降本增效。 本文将介绍在云数据库RDS管理控制台创建Serverless实例的过程。
  • 前提条件 已注册华为云账号。 注册华为云账号后,如果需要对华为云上的资源进行精细管理,请使用 统一身份认证 服务(Identity and Access Management,简称 IAM )创建IAM用户及用户组,并授权,以使得IAM用户获得具体的操作权限,更多操作,请参见创建用户组、用户并授予RDS权限。 账户余额大于等于0元。 RDS for MySQL支持主从复制时数据传输加密,如需开通该功能,请联系客服人员申请。实例购买前开通该功能,购买成功后,手动开启SSL开关,则该实例主从复制时数据传输加密。
  • 配置天关或防火墙上线 华为乾坤防勒索解决方案需要在客户侧部署天关或防火墙才能正常使用。本方案配套的天关/防火墙的型号及上线指导,如表1所示。具体操作请参见《天关和防火墙上线指南》。 表1 天关或防火墙的型号 设备类型 设备型号 USG6000E-C天关 USG63xxE-C:USG6301E-C/6302E-C/6303E-C USG65xxE-C:USG6501E-C/USG6502E-C/USG6503E-C USG6000F-C天关 USG6603F-C、USG6606F-C USG6000E防火墙 防火墙USG61xxE:USG6106E 防火墙USG63xxE:USG6305E/USG6306E/USG6308E/USG6309E/USG6312E/USG6315E/USG6322E/USG6325E/USG6332E/USG6335E/USG6350E/USG6355E/USG6365E/USG6385E/USG6395E 防火墙USG6303E:USG6303E 防火墙USG65xxE:USG6515E/USG6525E/USG6530E/USG6550E/USG6555E/USG6560E/USG6565E/USG6575E-B/USG6580E/USG6585E 防火墙USG65xxE-K:USG6520E-K/USG6560E-K/USG6590E-K 防火墙USG63xxE-B:USG6308E-B/USG6318E-B/USG6338E-B/USG6358E-B/USG6378E-B/USG6388E-B/USG6398E-B 防火墙USG6xxxE-Exx:USG6000E-E03/USG6000E-E07 防火墙USG66xxE:USG6610E/USG6620E/USG6630E/USG6650E/USG6680E/USG6605E-B/USG6620E-K/USG6640E-K 防火墙USG67xxE:USG6712E/USG6716E USG6000F防火墙 防火墙USG65xxF: USG6525F/USG6555F/USG6565F/USG6585F/USG6585F-B/USG6520F-K/USG6560F-K/USG6590F-K/USG6510F-D/USG6530F-D/USG6510F-DK/USG6510F-DL/USG6530F-DL 防火墙USG66xxF:USG6615F/USG6625F/USG6635F/USG6655F/USG6685F/USG6620F-K/USG6650F-K 防火墙USG67xxF:USG6710F/USG6715F/USG6725F/USG6710F-K 防火墙USG6000F-Exx:USG6000F-E01/USG6000F-E03/USG6000F-E05/USG6000F-E07/USG6000F-E09/USG6000F-E12/USG6000F-E15/USG6000F-E20 父主题: 部署指南
  • 修订记录 发布日期 修订记录 2024-04-08 第十一次公测发布。 新增AR地图操作指导。 2023-12-28 第十次公测发布。 入门指引:增加实景三维生产服务相关描述。 实景三维操作指导:新增该章节。 2023-11-17 第九次公测发布。 新建工作共享空间: 修改每个租户下创建工作共享空间的上限值。 表1中删除“空间类型”参数。 处理影像数据: 在“查看成果数据”的操作步骤中增加说明。 增加“执行成功”状态下的任务可被删除的相关描述。 2023-05-30 第八次公测发布。 处理影像数据:在“查看成果数据”的操作步骤中增加说明。 导入数据:更新导入卫星影像图片。 2023-04-25 第七次公测发布。 导入数据:新增命名辅助工具内容描述,删除影像供应商相关内容描述以及更新相关图片。 创建任务:更新带有供应商字段的相关图片。 2023-03-29 第六次公测发布。 导入数据:新增适配的卫星型号SJ9A。 创建任务:新增国家2000、国家2000-GaussKruger坐标系相关操作描述。 2023-03-10 第五次公测发布。 导入数据:更新支持的影像供应商型号和新增导入生产资料的操作描述。 创建任务:新增L3处理等级和导入生产资料操作描述。 处理影像数据:更新图1 任务概览页和表1 操作任务与操作步骤。 查看用量统计:更新卫星影像生产服务用量的统计内容与相关图片。 2023-02-03 第四次公测发布。 导入数据:新增四维测绘支持的卫星型号和更新相关图片。 2023-01-18 第三次公测发布。 导入数据:删除“导入影像参数说明”表格有关坐标系的描述。 创建任务:新增坐标系的描述。 2023-01-11 第二次公测发布。 导入数据:新增导入参数的提示信息。 新建工作共享空间:更新功能参数的名称。 创建任务:新增卫星影像文件的选择规则以及更新图片。 处理影像数据:更新概览页图片。 查看用量统计:更新导航路径与图片。 2022-12-27 第一次公测发布。
  • 官方镜像工具 编译工具 使用版本 是否默认 jdk 8u372 - 11.0.18 是 17.0.2 - nodejs 18.18.2 是 20.10.0 - go 1.18.7 是 1.20.7 - python 3.8.18 是 3.12.1 - maven 3.8.8 是 内置工具 说明 git 2.27.0 jq 1.6 gcc 7.3.0 cmake 3.16.5 lz4 1.9.2 make 4.3 zip 3.0 unzip 6.0 curl 7.71.1 openssh 8.2 haveged 1.9.13 bzip2-devel 1.0.8 zlib 1.2.11 zlib-devel 1.2.11 父主题: 扩展插件
  • 后续操作 查看代理列表 在资源池列表中找到目标资源池,单击资源池名称,进入“代理列表”页面。 代理列表可显示代理机状态、内存使用率、可用硬盘等信息。 代理机有以下五种状态: 表5 代理机状态说明 代理机状态 说明 运行中 代理机正在执行任务。 空闲中 代理机处于连接状态,未运行任务。 停用 代理机处于连接状态,但被停用无法执行任务。 下线 代理机处于掉线断开状态,如需上线请登录代理机重新注册,否则删除即可。 删除中 代理机正在被删除中。 删除代理 在“代理列表”页面,单击操作列,可以删除指定的代理机。 “运行中”状态的代理机无法删除。 启动/停用代理 在“代理列表”页面,单击操作列,可停用对应代理,停用后,状态列显示为“停用”;单击,可以重新启用代理,状态列恢复为“空闲中”。 查看资源池详情 在“代理列表”页面,单击“资源池详情”页签,可以查看资源池的详细信息(资源池所有者、资源池类型、资源池创建时间以及描述信息)。
  • 新建代理 完成新建资源池后,在资源池列表中找到目标资源池,单击资源池名称,进入“代理列表”页面。 单击“新建代理”,页面弹出对话框。 根据需要完成参数配置。 配置主机所需的网络环境。 表3 步骤一配置 配置项 配置说明 自动安装JDK 主机需要具备JAVA8+环境。 开启此开关后,将为主机自动安装JDK至“/usr/local”目录中。 如果关闭此开关,则需手动安装。如何安装JAVA8+? 说明: 仅资源池类型为“LINUX”或“LINUX_DOCKER”时显示此配置项。 自动安装Git 主机需要具备Git环境。 开启此开关后,将为主机自动安装Git。 如果关闭此开关,则需手动安装。如何安装Git? 说明: 仅资源池类型为“LINUX”或“LINUX_DOCKER”时显示此配置项。 自动安装Docker 主机需要具备Docker环境。 开启此开关后,将为主机自动安装Docker至“/usr/bin”目录中。安装完成后将自动注册服务并启动docker服务。 如果关闭此开关,则需手动安装。如何安装Docker? 说明: 仅资源池类型为“LINUX”或“LINUX_DOCKER”时显示此配置项。 配置身份认证信息。 表4 步骤二配置 配置项 配置说明 AK Access Key Id。 在通过获取AK/SK下载的访问密钥文件中获取。 SK Secret Access Key。 在通过获取AK/SK下载的访问密钥文件中获取。 代理名称 代理(Agent)的名称,同一台主机不可以安装相同名称的代理。 请根据实际情况填写。为了方便管理,命名建议清晰,建议关联代理机IP,如:10.10.10.10-agent-01。 代理工作空间 代理在主机上运行的工作目录,任务执行的工作空间,同一台主机的不同代理不可以使用同样的代理工作空间。 请根据实际情况填写。为了方便管理,建议关联数据盘,例如: Linux:/opt/cloud/agent01。 Windows:C:/opt/cloud/agent01。 MAC:/opt/cloud/agent01。 生成命令。 完成参数配置,勾选“我已阅读并同意”,单击“生成命令”,命令框中自动生成安装代理命令。 单击“复制命令”,复制此命令。 登录主机,执行上一步复制的安装命令。 Linux主机:使用root账号登录主机,执行安装命令。 Windows主机:使用管理员身份登录主机,打开Git Bash,执行安装命令。 MAC主机:使用root账号登录主机,执行安装命令。 当命令终端显示如下提示时,表示安装结束。 图1 安装成功回显 返回“代理列表”页面,关闭弹窗。 等待10-30秒,刷新页面,在列表中可查看到已经安装的代理实例状态为“空闲中”,表示安装成功。
  • 操作步骤 调用创建实例接口,创建LakeFormation实例,同时记录接口返回的实例Id。 请求示例: POST https://{endpoint}/v1/{project_id}/instances Body: { "name": "lakeformation", "charge_mode": "postPaid", "shared": "false", "specs": [ { "spec_code": "lakeformation.unit.basic.qps", "stride_num": 1 } ], "enterprise_project_id": "0" } 响应示例: { "instance_id": "13677734-a4ee-43e2-9d11-30b8b2e32a95", "name": "lakeformation", "description": "", "enterprise_project_id": "0", "shared": false, "default_instance": false, "create_time": "2023-06-29T09:08:33.000+00:00", "update_time": "2023-06-29T09:08:34.000+00:00", "status": "RESOURCE_PREPARATION", "resource_progress": 25, "resource_expected_duration": 15, "in_recycle_bin": false, "tags": [], "specs": [ { "spec_code": "lakeformation.unit.basic.qps", "stride_num": 1 }, { "spec_code": "lakeformation.unit.basic.metadata", "stride_num": 0 } ] } 调用查询实例详情接口,查询实例状态,等待实例状态变为RUNNING运行中,表示实例创建完成。 请求示例: GET https://{endpoint}/v1/{project_id}/instances/{instance_id} instance_id:1响应信息中的“instance_id”参数值。 响应示例: { "instance_id": "13677734-a4ee-43e2-9d11-30b8b2e32a95", "name": "lakeformation", "description": "", "enterprise_project_id": "0", "shared": false, "default_instance": false, "create_time": "2023-06-29T09:08:33.000+00:00", "update_time": "2023-06-29T09:08:34.000+00:00", "status": "RUNNING", "in_recycle_bin": false, "tags": [], "specs": [ { "spec_code": "lakeformation.unit.basic.qps", "stride_num": 1 }, { "spec_code": "lakeformation.unit.basic.metadata", "stride_num": 0 } ] } (可选)如果当前租户首次创建LakeFormation实例,该实例将自动作为默认实例(default)。客户端可以直接访问默认实例,或通过指定具体的实例ID来访问对应的实例。非默认实例可以通过调用设为默认实例接口将非默认实例设为默认实例。 请求示例: POST https://{endpoint}/v1/{project_id}/instances/{instance_id}/default instance_id:1响应信息中的“instance_id”参数值。 调用创建服务接入客户端接口,选择客户端对应的VPC相关信息创建接入客户端,LakeFormation服务将自动为其创建终端节点和DNS内网 域名 ,用于打通网络连接。 请求示例: POST https://{endpoint}/v1/{project_id}/instances/{instance_id}/access-clients instance_id:1响应信息中的“instance_id”参数值。 Body: { "name": "access-client", "vpc_id": "131fb837-37ae-4aa6-9e87-312919df659f", "subnet_id": "2fa7ec47-c7f6-4a81-8e77-1dd41121b726" } 响应示例: { "id": "b73a9311-1ce9-48fe-b714-21bc41ce7b82", "name": "access-client", "access_mode": "SYSTEM", "status": "CREATING", "vpc_id": "131fb837-37ae-4aa6-9e87-312919df659f", "subnet_id": "2fa7ec47-c7f6-4a81-8e77-1dd41121b726" } 调用获取服务接入客户端详情接口,查询接入客户端状态,等待状态变为RUNNING,表示接入客户端创建完成,同时可以在详情中查看接入IP、域名等详细信息。 请求示例: GET https://{endpoint}/v1/{project_id}/instances/{instance_id}/access-clients/{client_id} instance_id:1响应信息中的“instance_id”参数值。 client_id:4响应信息中的“id”参数值。 响应示例: { "id": "b73a9311-1ce9-48fe-b714-21bc41ce7b82", "name": "access-client", "access_mode": "SYSTEM", "status": "RUNNING", "vpc_id": "131fb837-37ae-4aa6-9e87-312919df659f", "subnet_id": "2fa7ec47-c7f6-4a81-8e77-1dd41121b726", "access_connections": [ { "vpcep_id": "f72c8034-df38-4dbc-bd5d-2f50531ba104", "ip": "10.0.0.6", "owner": "555d9e8999c94705be3d7edb70a3199a", "domain": "xxx.dalf-ed1c-b3070cba-baae-4220-b7ff-9b2bca043efb.apig-lakeformation.com" } ], "create_time": "2023-06-29T12:12:12.000+00:00" } 参考目录管理相关接口,使用上述步骤获取的接入IP与实例ID访问元数据管理相关接口,获取目录列表。 请求示例: GET https://{endpoint}/v1/{project_id}/instances/{instance_id}/catalogs endpoint:{instance_id}.lakeformation.lakecat.com,如果已经将实例设为默认实例可以使用default-{project_id}.lakeformation.lakecat.com。 instance_id:1响应信息中的“instance_id”参数值,如果已经将实例设为默认实例可以直接使用default作为实例ID。 请求头示例 Host:lakeformation.lakecat.com 响应示例: [ { "catalog_name": "hive", "description": "Default catalog, for Hive", "location": "obs://lakeformation-555d9e8999c94705-xxx/ed1ce787-1671-4ce4-b84f-6f40ccb26752" } ]
  • 响应参数 状态码: 200 表3 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,定位辅助信息。 表4 响应Body参数 参数 参数类型 描述 agreements Array of TenantAgreement objects 租户协议列表。 is_agency Boolean 是否绑定了委托。 表5 TenantAgreement 参数 参数类型 描述 agreement_name String 协议名称。只能包含字母、数字、下划线和中划线,且长度为1到64个字符。 agreement_version String 协议版本号。只能包含字母和数字,且长度为1到32个字符。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 common_error_code String CBC公共错误码。 solution_msg String 解决方案描述。 状态码: 404 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 common_error_code String CBC公共错误码。 solution_msg String 解决方案描述。 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 common_error_code String CBC公共错误码。 solution_msg String 解决方案描述。
  • 响应示例 状态码: 200 租户协议查询响应体 { "agreements" : [ { "agreement_name" : "agreement AAA", "agreement_version" : "v1" }, { "agreement_name" : "agreement BBB", "agreement_version" : "v1" } ], "is_agency" : true } 状态码: 400 Bad Request { "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" } 状态码: 401 Unauthorized { "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' } 状态码: 403 Forbidden { "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" } 状态码: 404 Not Found { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 408 Request Timeout { "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" } 状态码: 500 Internal Server Error { "error_code" : "common.00000500", "error_msg" : "internal error" }
  • 响应示例 状态码: 200 OK [ "test" ] 状态码: 400 Bad Request { "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" } 状态码: 401 Unauthorized { "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' } 状态码: 403 Forbidden { "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" } 状态码: 404 Not Found { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 408 Request Timeout { "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" } 状态码: 500 Internal Server Error { "error_code" : "common.00000500", "error_msg" : "internal error" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 [数组元素] Array of strings OK 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。 状态码: 404 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。 状态码: 500 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。
  • URI GET /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/names 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目编号。获取方法,请参见获取项目ID。 instance_id 是 String LakeFormation实例ID。创建实例时自动生成。例如:2180518f-42b8-4947-b20b-adfc53981a25。 catalog_name 是 String catalog名称。只能包含字母、数字和下划线,且长度为1~256个字符。 表2 Query参数 参数 是否必选 参数类型 描述 database_pattern 否 String 数据库名称通配符。只能包含中文、字母、数字和_-|*.特殊字符,且长度为1~128个字符。
  • 响应示例 状态码: 400 Bad Request { "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" } 状态码: 401 Unauthorized { "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' } 状态码: 403 Forbidden { "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" } 状态码: 404 Not Found { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 408 Request Timeout { "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" } 状态码: 500 Internal Server Error { "error_code" : "common.00000500", "error_msg" : "internal error" }
  • 请求示例 POST https://{endpoint}/v1/{project_id}/agreement { "agreements" : [ { "agreement_name" : "agreement AAA", "agreement_version" : "v1" }, { "agreement_name" : "agreement BBB", "agreement_version" : "v1" } ] }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 租户token。 表3 请求Body参数 参数 是否必选 参数类型 描述 agreements 否 Array of TenantAgreement objects 租户协议列表。 表4 TenantAgreement 参数 是否必选 参数类型 描述 agreement_name 否 String 协议名称。只能包含字母、数字、下划线和中划线,且长度为1到64个字符。 agreement_version 否 String 协议版本号。只能包含字母和数字,且长度为1到32个字符。
  • 响应参数 状态码: 200 表5 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,定位辅助信息。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 common_error_code String CBC公共错误码。 solution_msg String 解决方案描述。 状态码: 404 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 common_error_code String CBC公共错误码。 solution_msg String 解决方案描述。 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 common_error_code String CBC公共错误码。 solution_msg String 解决方案描述。
  • AK/SK认证 AK/SK签名认证方式仅支持消息体大小12M以内,12M以上的请求请使用Token认证。 AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。 AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。 SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
  • Token认证 Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。 使用Token前请确保Token离过期有足够的时间,防止调用API的过程中Token过期导致调用API失败。 Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限。 Token可通过调用获取用户Token接口获取,调用本服务API需要project级别的Token,即调用获取用户Token接口时,请求body中auth.scope的取值需要选择project,如下所示。 { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", //用户名 "password": "********", //用户名对应的密码 "domain": { "name": "domainname" //用户名所属的租户 } } } }, "scope": { "project": { "id": "xxxxxxxx" //token作用范围对应的资源集ID } } } } 获取Token 后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。 Content-Type: application/json X-Auth-Token: ABCDEFJ....
  • 响应示例 状态码: 400 Bad Request { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 401 Unauthorized { "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' } 状态码: 403 Forbidden { "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" } 状态码: 404 Not Found { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 408 Request Timeout { "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" } 状态码: 500 Internal Server Error { "error_code" : "common.00000500", "error_msg" : "internal error" }
  • 响应参数 状态码: 204 表3 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,定位辅助信息。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 common_error_code String CBC公共错误码。 solution_msg String 解决方案描述。 状态码: 404 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 common_error_code String CBC公共错误码。 solution_msg String 解决方案描述。 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 common_error_code String CBC公共错误码。 solution_msg String 解决方案描述。
  • 响应示例 状态码: 200 OK { "policy_version" : 217, "policy_updateTime" : "1657788005000", "policies" : [ { "allow_exceptions" : [ ], "data_mask_policy_items" : [ ], "deny_exceptions" : [ ], "deny_policy_items" : [ { "accesses" : [ { "is_allowed" : true, "type" : "select" } ], "conditions" : [ { "type" : "ip-range", "values" : [ "*.*.*.*" ] } ], "delegate_admin" : false, "groups" : [ "groupD" ], "roles" : [ ], "users" : [ ] } ], "id" : 39, "is_audit_enabled" : true, "is_default_policy" : false, "is_deny_all_else" : false, "is_enabled" : true, "name" : "database_a.test.[**]-table_all_column", "options" : { }, "policy_items" : [ { "accesses" : [ { "is_allowed" : true, "type" : "select" } ], "conditions" : [ ], "delegate_admin" : true, "groups" : [ "groupA" ], "roles" : [ ], "users" : [ ] }, { "accesses" : [ { "is_allowed" : true, "type" : "select" } ], "conditions" : [ ], "delegate_admin" : true, "groups" : [ "groupB" ], "roles" : [ ], "users" : [ ] } ], "policy_labels" : [ ], "policy_priority" : 0, "policy_type" : 0, "resources" : { "database" : { "is_excludes" : false, "is_recursive" : false, "values" : [ "database_a" ] }, "column" : { "is_excludes" : false, "is_recursive" : false, "values" : [ "**" ] }, "table" : { "is_excludes" : false, "is_recursive" : false, "values" : [ "test" ] } }, "row_filter_policy_items" : [ ], "service" : "Hive", "service_type" : "hive", "validity_schedules" : [ ] } ] } 状态码: 400 Bad Request { "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" } 状态码: 401 Unauthorized { "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' } 状态码: 403 Forbidden { "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" } 状态码: 404 Not Found { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 408 Request Timeout { "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" } 状态码: 500 Internal Server Error { "error_code" : "common.00000500", "error_msg" : "internal error" }
  • URI GET /v1/{project_id}/instances/{instance_id}/policies/policy 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目编号。获取方法,请参见获取项目ID。 instance_id 是 String LakeFormation实例ID。创建实例时自动生成。例如:2180518f-42b8-4947-b20b-adfc53981a25。 表2 Query参数 参数 是否必选 参数类型 描述 last_known_version 否 Long 最新已知版本。 supports_policy_deltas 否 Boolean 是否支持增量同步策略。默认为false。 is_return_policy_data 否 Boolean 是否返回权限策略数据。默认为true。 catalog_name 否 String catalog名称。只能包含字母、数字和下划线,且长度为1~256个字符。
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 表2 HTTP方法 方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。 当资源不存在的时候,PATCH可能会去创建一个新的资源。 在获取用户Token的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens
共100000条