华为云用户手册

  • 代码结构说明 代码结构说明中的“{biz}”,为在AstroPro的业务设计中定义的对象,如BO、Abstract BO等。 com.astropro |-- api # API层代码,定义向外部服务暴露的接口(必填项) {biz}Api.java {biz}Controller.java |-- service # 承接API直接调用,基本的业务判断逻辑和分发。service层目录,包含接口层和实现层 (必须) |-- impl # service实现代码(必填项) |-- {biz}Service.java I{biz}Service.java # service接口层代码。 |-- domain # 领域层,包含基本的业务和业务聚合(必填项) {biz}Domain.java |-- repository # 数据操作聚合层。包含基类和继承类 (必填项) |-- base # 数据操作聚合层基类代码(必填项) {biz}BaseRepository.java {biz}Repository.java # 数据操作聚合层继承类代码。用户可在此类中覆写基类中的方法或者增加自定义的方法 |-- mapper # 数据原子操作层。mapper层目录,包含基本接口和继承接口(必填项) |-- base # mapper层基本接口代码(必填项) {biz}BaseMapper.java {biz}Mapper.java # mapper层继承接口代码。用户可在此类中覆写基本接口中的方法或者增加自定义的方法 |-- model |-- entity # 实体类(必填项) |-- enums # 枚举类(可选项) |-- qo # 查询对象(可选项) |-- criteria # mybatis查询条件对象(可选项) |-- dto # 数据传输对象,do组合对象(可选项) |-- nested # 根据业务对象的关系自动关联生成,嵌套复杂对象(可选项) |-- cartesian # 根据业务对象的关系自动关联生成,正交的笛卡尔积对象(可选项) |-- {customDto}.java # 用户预先定义好的数据传输对象(可选项) |-- config # 配置类(必填项) |-- utils # 工具类(必填项) |-- exception # 异常类(必填项) |-- integration # 集成第三方服务,隔离外部系统的影响,起防腐作用(可选项) |-- event # 事件层(可选项) |-- publish # 发布事件的Package,存放事件发布的工具类 与 发布的事件对象,屏蔽技术组件对应用业务的侵入 |-- subscribe # 订阅事件的Package,存放listener与消费的事件对象,listener只做数据的监听与数据格式的转换
  • 3、了解AstroPro中的项目、服务组与服务之间的关系 项目是使用AstroPro核心业务的入口。服务组用于对项目中的服务进行分组,一般一个分组对应一个研发团队。服务组创建后,即可为项目添加服务。服务是业务概念,即提供某种服务的某个进程。每一个服务都具有自主运行的业务功能,对外开放不受语言限制的API,多个服务组成应用程序。 在AstroPro中,项目、服务组和服务之间的关系,如图1所示。 图1 项目、服务组与服务的关系
  • 4、熟悉如何进行业务设计 在AstroPro中,用户通过业务设计,可生成高可用、高可靠、以及安全稳定的企业级IT应用框架。 对象:对象可以理解为数据库中创建的一个表。每个对象对应一张数据库表,用于保存业务系统需要的配置数据和业务数据。对象可以存储组织或业务特有的数据,您可以围绕对象这一核心,定义相关的字段、字段校验规则、界面样式、字段变更时的触发事件等。如果把待开发的业务系统比作一部电影,对象就是电影中的各个角色,需要勾勒角色的外貌、性格特点、人物关系和所经历的剧情。 AstroPro提供了BO、Abstract BO和Value Object三种类型的对象,请根据业务需求进行选择。 BO:业务对象,业务对象映射到服务中的一个实体,对应数据库中的一张表。 Abstract BO:抽象对象,不能实例化,没有对应的数据库表,需要和业务对象有个继承的操作。例如,业务对象A继承一个抽象对象B,则B中的字段都会被A继承过来。 Value Object:值对象,不能单独存在,需要和业务对象建立聚合的关系。 对象间关系:关系描述了不同元素之间的关联和联系,在AstroPro中您可以定义一对多、多对多、聚合和继承等关系。
  • 游戏全服 游戏业务场景丰富,对Redis丰富的数据类型和性能有强诉求,例如:好友关系、IM聊天、抢红包、全局排行榜等。 针对游戏业务,GeminiDB提供全服解决方案: 高弹性:为适应游戏运营生命周期,GeminiDB资源可随时灵活扩容、缩容,扩容仅需1秒,且业务无感知。值得一提的是,GeminiDB的CPU算力资源与数据容量资源解耦,提供高性价比。 零改造:GeminiDB 100%兼容社区Redis命令,无需修改代码即可平迁上云。 简化架构:GeminiDB兼顾低时延、高并发、数据可靠存储能力,因此很多新游采用GeminiDB做主数据库选型,可替换传统的Cache+DB,简化业务架构。 PITR原地回档:支持在游戏发版失误时,将玩家数据回档到任意指定时间点,仅需数分钟即可完成回档,且支持原实例回档。
  • 配置SFS Turbo数据自动导出到OBS桶 配置自动导出后,训练过程中周期性写入SFS Turbo文件系统的Checkpoint模型文件会自动以异步方式导出到关联的OBS桶中进行长期保存,无需手工导出,异步导出方式不会占用上层训练任务时间。 SFS Turbo的自动导出功能当前处于受限使用状态,请提交工单联系技术支持人员进行配置。 文件导出速度受OBS服务的写入带宽上限影响,默认是16Gbit/s,如果大模型训练生成的Checkpoint文件过大、导出速度过慢,可提交工单申请调大OBS服务的写入带宽。 父主题: 基本配置
  • SFS Turbo容量及性能扩容 当SFS Turbo存储空间不足时,您可以对SFS Turbo存储空间进行容量扩容。 SFS Turbo HPC型是按每TB单位容量来提供一定的带宽吞吐,因此当SFS Turbo HPC性能不足时,需要通过容量扩容来提高性能吞吐。 登录SFS管理控制台,在左侧导航窗格中选择“SFS Turbo”。 在文件系统列表中,单击要扩容的文件系统所在行的“容量调整”或“扩容”,弹出对话框。 图1 SFS Turbo HPC型容量调整 根据业务需要,在“新容量”文本框中重新设置文件文系统的容量。 在弹出对话框中确认容量调整信息后,单击“是”。 在文件系统列表中查看文件系统调整后的容量信息。
  • SFS Turbo容量监控及告警 如果SFS Turbo HPC型文件系统存储空间被写满,会影响业务运行,您可以在CES云监控服务上监控SFS Turbo文件系统的容量使用情况,并创建告警规则,当容量使用率超过一定阈值,可以发送邮件、短信等告警到运维人员。当收到容量监控告警时,您需要及时清理SFS Turbo存储空间、或缩短冷数据淘汰时间加速冷数据淘汰、或对SFS Turbo进行空间扩容。详情可参见SFS Turbo监控指标说明和创建告警规则。
  • 常见问题 可以只使用SFS Turbo HPC型文件系统支撑AI训练吗? 当数据规模较小,不存在冷热数据分级降本诉求,又希望能方便快捷的构建AI训练系统时,可以选择只使用SFS Turbo高性能文件存储支撑AI训练。 可以基于OBS对象存储支撑AI自动驾驶、大模型训练吗? OBS为容量型存储,在时延、带宽等存储性能上无法满足高性能AI训练,建议使用SFS Turbo HPC型高性能文件系统加速AI训练任务,训练速度加快可以节省AI算力费用。 文件系统使用空间不足,可以扩容吗? SFS Turbo文件系统支持在线扩容,扩容过程中挂载文件系统可能失败,建议业务低峰期扩容。 父主题: 面向AI场景使用OBS+SFS Turbo的存储加速实践
  • 配置SFS Turbo数据淘汰策略 SFS Turbo HPC型文件系统绑定OBS后端之后,建议配置缓存数据淘汰功能。SFS Turbo会自动释放设定时间内没有访问过的文件数据内容,仅保留文件元数据,数据内容释放后不占用SFS Turbo文件系统上的存储空间,再次访问该文件时,将重新从OBS中加载文件数据内容。 登录SFS管理控制台。 在文件系统列表中,单击创建的HPC型文件系统名称,进入文件系统详情页面。 在“基本信息”页签,设置冷数据淘汰时间。 图1 设置冷数据淘汰时间 只有已经导出到OBS且满足淘汰时间的数据才会被淘汰。 父主题: 基本配置
  • 资源和成本规划 本节介绍最佳实践中资源规划情况,包含以下内容: 表1 资源和成本规划内容说明 维度 说明 资源规划 OBS:存放训练数据集、预训练模型等数据资源的桶,桶存储类别为“标准存储”,桶策略为“私有”。 SFS Turbo:文件系统类型为“HPC型”,存储类型请根据存储容量和性能需求选择,AI场景建议选择250MB/s/TiB及以上的存储类型。 ModelArts:AI开发平台,采用多机多卡分布式训练。 VPC:虚拟私有云和子网。 算法及数据:准备AI训练需要的算法及数据集,如Swin-Transformer算法,及ImageNet21K数据集。 说明: 为了提供最佳加速性能,建议SFS Turbo HPC文件系统和ModelArts资源池就近选择在同一个Region的同一个可用区(AZ)。 成本规划 OBS费用:详见OBS计费说明。 SFS Turbo费用:详见SFS计费说明。 ModelArts费用:详见ModelArts计费说明。 须知: 本文提供的成本预估费用仅供参考,资源的实际费用以华为云管理控制台或价格计算器显示为准。 如果您想了解更多本方案相关信息,或在方案使用过程中存在疑问,可通过方案咨询渠道,寻求专业人员支持。 父主题: 面向AI场景使用OBS+SFS Turbo的存储加速实践
  • 创建JOB同步备库 在主节点创建job。 在DAS管理页面,操作栏单击“SQL查询”,在msdb库下,执行创建job命令。 如果在主机通过其他方式已经有job创建不执行此步骤。 USE [msdb] GO DECLARE @jobId BINARY(16) EXEC msdb.dbo.sp_add_job @job_name=N'hwtest', @enabled=1, @notify_level_eventlog=0, @notify_level_email=2, @notify_level_page=2, @delete_level=0, @category_name=N'[Uncategorized (Local)]', @owner_login_name=N'rdsuser', @job_id = @jobId OUTPUT select @jobId GO EXEC msdb.dbo.sp_add_jobserver @job_name=N'hwtest', @server_name = N'*******' GO USE [msdb] GO EXEC msdb.dbo.sp_add_jobstep @job_name=N'hwtest', @step_name=N'select orders', @step_id=1, @cmdexec_success_code=0, @on_success_action=1, @on_fail_action=2, @retry_attempts=0, @retry_interval=0, @os_run_priority=0, @subsystem=N'TSQL', @command=N'select * from orders;', @database_name=N'test', @flags=0 GO USE [msdb] GO EXEC msdb.dbo.sp_update_job @job_name=N'hwtest', @enabled=1, @start_step_id=1, @notify_level_eventlog=0, @notify_level_email=2, @notify_level_page=2, @delete_level=0, @description=N'', @category_name=N'[Uncategorized (Local)]', @owner_login_name=N'zf1', @notify_email_operator_name=N'', @notify_page_operator_name=N'' GO 使用如下SQL查询job是否被创建。 use [msdb] select * from msdb.dbo.sysjobs where name ='hwtest'; 切换到备库。 目前云数据库 RDS for SQL Server实例暂不支持主备库job同步,因此需要在备库同步执行job创建,同步job。在在主节点创建job中,我们处于主库,单击主库旁的“切换SQL执行点”,即可切换到备库。 使用在主节点创建job的语句在备库上创建job。 通过SQL Server Management Studio(简称:SSMS)工具导出之前创建的job到编辑窗,并复制到DAS的SQL查询窗口,执行sql即可。 若创建失败,建议先进行delete job操作后,再重新执行创建job。 图1 导出job 图2 在DAS管理界面备库界面执行创建job 使用如下SQL删除job命令。 USE [msdb] GO EXEC msdb.dbo.sp_delete_job @job_name=N'hwtest', @delete_unused_schedule=1 GO
  • 创建DBLink同步备库 通过DAS服务可以创建链接服务器,实现实例间的数据同步。 请参考RDS for SQL Server添加链接服务器章节检查分布式事务MSDTC是否配置。 参考如下代码在主库创建DBlink。 USE [master] GO EXEC master.dbo.sp_addlinkedserver @server = N'TEST', @srvproduct=N'mytest', @provider=N'SQLOLEDB', @datasrc=N'abcd' EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'TEST', @locallogin = NULL , @useself = N'False', @rmtuser = N'rdsuser', @rmtpassword = N'********' GO 创建成功后,可以链接到对应的实例或者其他数据库查看数据验证,如执行数据库查询: SELECT name FROM [TEST].master.sys.databases ; GO 图3 数据库查询 在备库创建DBLink。 在DAS管理界面,主库旁单击“切换SQL执行点”,同样执行创建DBLink的SQL。 如果当前实例与对接的数据库不是同一VPC,或者使用公网EIP开启分布式事务,则备库上暂时无法执行查询语句,仅此步骤用于同步DBLink配置,若实例进行主备倒换后,则可以正常使用DBLink。
  • PoWA-collector 配置 PoWA-collector启动时,将按以下顺序搜索配置文件作为其配置: /etc/powa-collector.conf ~/.config/powa-collector.conf ~/.powa-collector.conf ./powa-collector.conf 配置文件中需要包含以下选项: repository.dsn : URL,用于通知 powa-collector 如何连接专用存储数据库(powa-repository)。 debug : Boolean类型,用于指定是否在调试模式下启动 powa-collector。 本次演示中将配置写入文件./powa-collector.conf { "repository": { "dsn": "postgresql://postgres@localhost:5432/powa" }, "debug": true }
  • PoWA-web 配置 PoWA-collector启动时,将按以下顺序搜索配置文件作为其配置: /etc/powa-web.conf ~/.config/powa-web.conf ~/.powa-web.conf ./powa-web.conf 本次实例中需要将配置内容写入文件./powa-web.conf中。 # cd /home/postgres/.local/bin # vim ./powa-web.conf # 写入配置内容,并保存 servers={ 'main': { 'host': 'localhost', 'port': '5432', 'database': 'powa', 'username': 'postgres', 'query': {'client_encoding': 'utf8'} } } cookie_secret="SECRET_STRING" 本次演示,powa-repository数据库pg_hab.conf中配置为trust,免密连接,因此未配置password。 启动 powa-web cd /home/postgres/.local/bin ./powa-web &
  • 性能指标采集目标实例配置 使用root用户登录目标实例的powa数据库。(若不存在,请先自行创建powa数据库) 在powa数据库中创建插件powa。 select control_extension('create', 'pg_stat_statements'); select control_extension('create', 'btree_gist'); select control_extension('create', 'powa');
  • 预备环境 请按照以下顺序执行,否则安装Python3.9.9可能会有部分失败(SSL组件依赖失败),导致后续无法安装PoWA-collector、PoWA-web。 yum install readline* -y yum install zlib* -y yum install gcc-c++ -y yum install sqlite* -y yum install openssl-* -y yum install libffi* -y
  • 安装python 3.9.9 使用root用户执行下列命令。 mkdir env cd env wget https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tgz tar -xzvf Python-3.9.9.tgz cd Python-3.9.9 ./configure --prefix=/usr/local/python3.9.9 make && make install 创建软链接。 ln -s /usr/local/python3.9.9/bin/python3.9 /usr/bin/python ln -s /usr/local/python3.9.9/bin/pip3.9 /usr/bin/pip
  • 验证安装是否成功 验证安装,重点验证SSL功能。 [root@ecs-ad4d Python-3.9.9]# python Python 3.9.9 (main, Nov 25 2021, 12:36:32) [GCC 8.4.1 20200928 (Red Hat 8.4.1-1)] on linux Type "help", "copyright", "credits" or "license" for more information. import ssl import urllib.request context = ssl._create_unverified_context() urllib.request.urlopen('https://www.example.com/',context=context).read() 如果有返回,说明安装成功。执行命令退出。 quit()
  • 云联版本对应校验码 云联版本查看方法 右键点击已下载客户端安装包,点击属性 进入应用属性,点击详细信息 查看软件版本 云联版本校验码表 云联版本 校验码 7.0.5.195 ADD1FD75AB7117ACE60F9CD21DDAF7948D36AB18D6E5EDD1FE35DDFD9B6E29E3 7.0.4.61 C83C20217357DB03E8A2158E9019AB5307E7182AB64C92621307FDA1DFE4E609 父主题: 标准客户端hash值校验
  • 请求示例 { "instance_key" : 6946, "cloud_service_type" : "hws.service.type.cbh", "region_id" : "cn-north-4", "charging_mode" : 0, "period_type" : 2, "period_num" : 1, "product_infos" : [ { "product_id" : "OFFI740586375358963717", "cloud_service_type" : "hws.service.type.cbh", "resource_type" : "hws.resource.type.cbh.ins", "resource_spec_code" : "cbh.basic.50" } ], "subscription_num" : 1 }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 instance_key 是 Integer 云堡垒机实例key。 cloud_service_type 是 String 云服务类型,默认填写“hws.service.type.cbh”。 region_id 是 String 云堡垒机实例局点ID。 可参考地区和终端节点获取 charging_mode 是 Integer 计费模式。 0 包周期计费。 period_type 是 Integer 订购周期类型。 2:月 3:年 period_num 是 Integer 订购周期数。 period_type=2(周期类型为月),取值范围[1,9] periodType=3(周期类型为年),取值范围[1,10] product_infos 是 Array of ProductInfos objects 产品信息 is_auto_renew 否 Integer 是否自动续订。 1,自动续订 0,不自动续订(默认) subscription_num 是 Integer 订购数量。当前仅支持订购1个,填写默认值1。 表3 ProductInfos 参数 是否必选 参数类型 描述 product_id 是 String 产品标识,通过订购询价接口获得。 cloud_service_type 是 String 云服务类型,填写“hws.service.type.cbh”。 resource_type 是 String 云堡垒机资源类型,填写“hws.resource.type.cbh.ins”。 resource_spec_code 是 String 待创建云堡垒机规格ID,例如: cbh.basic.50 cbh.enhance.50 已上线的规格请参见《云堡垒机产品介绍》的服务版本差异章节。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 order_id String 订单ID。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 请求参数错误。 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 校验TOKEN失败。 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 租户无权限操作。 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 没有找到CBH资源。
  • 状态码 状态码 编码 状态说明 200 OK 请求成功。 400 Bad Request 请求失败。 建议直接修改该请求,不要重试该请求。 401 Unauthorized 请求认证失败。 表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 404 NotFound 所请求的资源不存在。 建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 父主题: 附录
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "xxxxxxxx", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" } }
  • AK/SK认证 AK/SK签名认证方式仅支持消息体大小12MB以内,12MB以上的请求请使用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就代表拥有某种权限。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": { "name": "xxxxxxxx" } } } } 获取Token后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。 Content-Type: application/json X-Auth-Token: ABCDEFJ....
  • 请求示例 { "server" : { "flavor_ref" : "cbh.basic.50", "instance_name" : "CBH-155f", "vpc_id" : "279e8217-4a8a-4d83-8fd9-b8f14d47170b", "nics" : [ { "subnet_id" : "a86217e6-a96d-4803-ae5c-b57da6811249" } ], "public_ip" : { "id" : "cfcab481-0831-4e23-a739-d6cdd0ef3630", "public_eip" : "123.249.41.4" }, "security_groups" : [ { "id" : "1e10bc4f-9a36-4452-a867-8ddb4348c15e" } ], "availability_zone" : "cn-north-4a", "slave_availability_zone" : "cn-north-4b", "comment" : "success", "region" : "cn-north-4", "hx_password" : "12345678", "bastion_type" : "OEM" } }
  • 响应参数 状态码: 200 表7 响应Body参数 参数 参数类型 描述 instance_key Integer 云堡垒机实例key。 slave_instance_key Integer 云堡垒机备机实例key。(当前字段未启用,返回默认值null) request_info Integer 返回创建云堡垒机实例信息。 job_id Integer job任务ID。(当前字段未启用,返回默认值null) 状态码: 400 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 请求参数错误。 状态码: 401 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 校验TOKEN失败。 状态码: 403 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 租户无权限操作。 状态码: 404 表11 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 没有找到CBH资源。
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 server 是 CBHInstances object 创建堡垒机实例请求参数。 表3 CBHInstances 参数 是否必选 参数类型 描述 flavor_ref 是 String 待创建云堡垒机规格ID,例如: cbh.basic.50 cbh.enhance.50 已上线的规格请参见《云堡垒机产品介绍》的服务版本差异章节。 instance_name 是 String 云堡垒机实例名称,取值范围: 只能由中文字符、英文字母、数字及“_”、“-”组成,且长度为[1-64]个字符。 例如:CBH-6b8e vpc_id 是 String 待创建云服务器所属虚拟私有云(简称VPC),需要指定已创建VPC的ID,UUID格式。 VPC的ID可以从控制台或者参考《虚拟私有云接口参考》的“查询VPC”章节获取。 例如:03211ecf-697e-4306-a7a0-6e939bf948de nics 是 Array of Nics objects 云堡垒机实例网卡信息。 public_ip 是 PublicIp object 云堡垒机实例弹性公网IP信息。可填写null值 security_groups 是 Array of SecurityGroup objects 安全组信息。 availability_zone 是 String 创建云堡垒机所在的可用区,需要指定可用区名称。 可参考地区和终端节点获取 slave_availability_zone 否 String 创建云堡垒机所在的备机可用区,需要指定备机可用区名称。(当前字段未启用,填写默认值null) 可参考地区和终端节点获取 comment 否 String 云堡垒机实例描述信息。 region 是 String 云服务所在局点ID。 hx_password 是 String 堡垒机实例前端登录密码。密码规则:8-32位,不能包含amdin或nidma及其大写形式,必须包含大小写数字特殊字符四种类型中的三种。 bastion_type 是 String 堡垒机实例类型,填写“OEM”即可。 ipv6_enable 否 Boolean 是否支持IPV6,不填默认为false。 enterprise_project_id 否 String 企业项目ID,不填默认为0。 表4 Nics 参数 是否必选 参数类型 描述 subnet_id 是 String 子网ID,字母数字下划线连接符组成。 ip_address 否 String IPV4地址。 表5 PublicIp 参数 是否必选 参数类型 描述 id 否 String 已分配的弹性IP和EIP只能有一个。 public_eip 否 String 已分配的弹性IP的地址Address。 表6 SecurityGroup 参数 是否必选 参数类型 描述 id 是 String 云堡垒机实例安全组ID,字母数字下划线连接符组成。
  • 响应参数 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 请求参数错误。 状态码: 401 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 校验TOKEN失败。 状态码: 403 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 租户无权限操作。 状态码: 404 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_description String 没有找到CBH资源。
共100000条