华为云用户手册

  • 请求消息体(可选) 该部分可选。请求消息体通常以结构化格式(如JSON或XML)发出,与请求消息头中Content-Type对应,传递除请求消息头之外的内容。若请求消息体中的参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于获取用户Token接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,其中username为用户名,domainname为用户所属的帐号名称,********为用户登录密码,xxxxxxxxxxxxxxxxxx为project的名称,如“cn-north-1”,您可以从地区和终端节点获取。 scope参数定义了Token的作用域,下面示例中获取的Token仅能访问project下的资源。您还可以设置Token的作用域为某个帐号下所有资源或帐号的某个project下的资源,详细定义请参见获取用户Token。 1 2 3 4 5 6 7 8 91011121314151617181920212223242526 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokensContent-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。
  • 请求消息头 附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。 详细的公共请求消息头字段请参见表3。 表3 公共请求消息头 名称 描述 是否必选 示例 Host 请求的服务器信息,从服务API的URL中获取。值为hostname[:port]。端口缺省时使用默认的端口,https的默认端口为443。 否 使用AK/SK认证时该字段必选。 code.test.com or code.test.com:443 Content-Type 消息体的类型(格式)。推荐用户使用默认值application/json,有其他取值时会在具体接口中专门说明。 是 application/json Content-Length 请求body长度,单位为Byte。 否 3495 X-Project-Id project id,项目编号。请参考获取项目ID章节获取项目编号。 否 如果是专属云场景采用AK/SK认证方式的接口请求,或者多project场景采用AK/SK认证的接口请求,则该字段必选。 e9993fc787d94b6c886cbaa340f9c0f4 X-Auth-Token 用户Token。 用户Token也就是调用获取用户Token接口的响应值,该接口是唯一不需要认证的接口。 请求响应成功后在响应消息头(Headers)中包含的“X-Subject-Token”的值即为Token值。 否 使用Token认证时该字段必选。 注:以下仅为Token示例片段。 MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ API同时支持使用AK/SK认证,AK/SK认证使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。 AK/SK认证的详细说明请参见认证鉴权的“AK/SK认证”。 对于获取用户Token接口,由于不需要认证,所以只添加“Content-Type”即可,添加消息头后的请求如下所示。 12 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokensContent-Type: application/json
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务您正在请求什么类型的操作。 表2 HTTP方法 方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。 当资源不存在的时候,PATCH可能会去创建一个新的资源。 在获取用户Token的URI部分,您可以看到其请求方法为“POST”,则其请求为: 1 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens
  • 请求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-4.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-4.myhuaweicloud.com),并在获取用户Token的URI部分找到resource-path(/v3/auth/tokens),拼接起来如下所示。 1 https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens 图1 URI示意图 为方便查看,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • 创建Execution 假设已获取前提条件中的信息为如下值(实际操作中您需要根据实际情况替换): 集群下文件存储卷名称:"gcs-sfs-358712" 项目ID:10556c2112784111b8bf10512591189e 调用5.3.1-创建execution接口,创建execution。 curl -k -X POST -H "X-Auth-Token: $Token" ${GCS_Endpoint}/v1/executions -d '{"name":"gcs-demo-execution", "workflow_id": ${WORKFLOW_ID}, "cluster_id": ${CLUSTER_ID}, "sfs_pvc_name": "gcs-sfs-358712", "data_bucket_name": "gene-container-bucket", "target": "cce"}' 命令中参数说明如下 name:自定义execution名称,例如gcs-demo-execution workflow_id:创建流程过程中创建的流程ID sfs_pvc_name:文件存储卷名称 cluster_id:创建环境过程中创建的集群ID data_bucket_name:前提条件中的OBS桶 target:执行execution的环境类型,cce表示使用的是cce环境 { "id": "10185add-acde-cc18-b8dd-b3a87a1f484c"} 将execution id设置为环境变量。 export EXECUTION_ID=10185add-acde-cc18-b8dd-b3a87a1f484c 调用查询execution接口,查询execution。 curl -k -X GET -H "X-Auth-Token: $Token" ${GCS_Endpoint}/v1/executions/${EXECUTION_ID} GCS界面可以查看运行成功的execution
  • 创建Environment 假设区域选择为华北北京四区,则前提条件中的信息为如下值(实际操作中您需要根据实际情况替换): IAM的Endpoint为:iam.cn-north-4.myhuaweicloud.com GCS的Endpoint为:gcs.cn-north-4.myhuaweicloud.com 区域名称:"cn-north-4" 秘钥对名称:"KeyPair-3587" 项目ID:10556c21********8bf10512591189e OBS桶:gene-container-bucket 集群ID:d9d8912d-a6cb-11e8-bc20-0255ac105709 调用其他接口前,需要参见3.1-构造请求中的调用方式获取token,并设置成环境变量。 获取token。 其中加粗的蓝色字体部分,需要替换为真实的数据。 iam_endpoint:IAM的Endpoint,以cn-north-4的Endpoint为例则应该为iam.cn-north-4.myhuaweicloud.com。 username:华为云的用户账号,必填项。 password:华为云的用户密码,必填项。 domainname:若是子账号,请填写对应的主账号名称。若不是子账号,请与username保持一致,必填项。 cn-north-4:此处以中国华北区4为例,必填项。 curl -H "Content-Type:application/json" https://{iam_endpoint}/v3/auth/tokens -X POST -d '{"auth": {"identity":{"methods":["password"],"password":{"user":{"name":"username","password":"password","domain":{"name":"domainname"}}}},"scope":{"project":{"name":"cn-north-4"}}}}' -v -k 响应Header中“X-Subject-Token”的值即为Token: X-Subject-Token:MIIDkgYJKoZIhvcNAQcCoIIDgzCCA38CAQExDTALBglghkgBZQMEAgEwgXXXXX... 使用如下命令将token设置为环境变量,方便后续使用。 export Token={X-Subject-Token} X-Subject-Token即为上一步骤获取到的token,如下所示。 export Token=MIIDkgYJKoZIhvcNAQcCoIIDgzCCA38CAQExDTALBglghkgBZQMEAgEwgXXXXX... 将API的入口地址设置为环境变量,方便后续事使用,入口地址为“https://GCS_ENDPOINT”。 export GCS_Endpoint="https://gcs.cn-north-4.myhuaweicloud.com" 创建环境。 调用5.1.1-部署Environment接口,利用前提条件中已创建的集群创建GCS环境。 curl -i -k -X POST -H "X-Auth-Token: $Token" ${GCS_ENDPOINT}/v1/environments -d '{"source":"cce","project_id":"10556c21********8bf10512591189e","cluster_id":"d9d8912d-a6cb-11e8-bc20-0255ac105709","bucket_name":"gene-container-bucket","env_name":"gcs-env-cce-new"}' 命令中主要参数说明如下: project_id: 前提条件中获取到的项目ID source: 创建环境的来源 cce表示,创建cce环境 bucket_name: 前提条件中已创建的OBS桶名称 cluster_id:前提条件中已创建的集群ID env_name:要创建的环境的名称 创建成功的时候会返回环境的ID,为了后续操作,需要记录下环境的ID。 { "id": "6e03f731-9c31-569a-4121-6a10b6996458"} 将环境ID设置为环境变量。 export ENVIRONMENT_ID=6e03f731-9c31-569a-4121-6a10b6996458 查看环境。 调用5.1.4-查询Environment接口,查询GCS环境。 curl -i -k -X GET -H "X-Auth-Token: $Token" ${GCS_ENDPOINT}/v1/environments/${ENVIRONMENT_ID} 查询成功的时候会返回环境的详情。 {"guid": "bcdd92fd-0380-e114-5dbe-38dac77857e9","project_id": "10556c21********8bf10512591189e","domain_id": "b0148a2cb********477bab429e48e7","name": "gcs-env-cce-new","description": "Gene container environment form cce","status": "Running","create_at": "2018-08-13T03:50:30Z","update_at": "2018-08-13T07:27:02Z","cluster_id": "d9d8912d-a6cb-11e8-bc20-0255ac105709","cluster_name": "gcs-cluster","cpu": 8,"memory": 16,"source": "cce","stack_id": "10185add-acde-cc18-b8dd-b3a87a1f484c""is_gene_cluster": false,"bucket_name": "gene-container-bucket","default_env": false,"order_id": ""} 将集群的ID设置为环境变量。 export CLUSTER_ID=d9d8912d-a6cb-11e8-bc20-0255ac105709
  • 清理资源 假设已获取前提条件中的信息为如下值(实际操作中您需要根据实际情况替换): 项目ID:10556c2112784111b8bf10512591189e OBS、SFS等资源如果不再需要,请至对应该服务的控制台手动删除。 调用删除execution接口,删除创建的execution。 curl -k -X DELETE -H "X-Auth-Token: $Token" ${GCS_Endpoint}/v1/executions/${EXECUTION_ID} 如果使用的集群是创建环境时一并创建的,可以设置delete_cluster参数,将集群一并删除。 curl -k -X DELETE -H "X-Auth-Token: $Token" ${GCS_Endpoint}/v1/executions/${EXECUTION_ID}?delete_cluster=true 如果后续不再需要执行计算任务,调用删除environment接口,删除创建的environment。 curl -k -X DELETE -H "X-Auth-Token: $Token" ${GCS_Endpoint}/v1/environments/${ENVIRONMENT_ID} 如果后续不再需要此计算流程,调用删除workflow接口,删除创建的workflow。 curl -k -X DELETE -H "X-Auth-Token: $Token" ${GCS_Endpoint}/v1/workflow/${WORKFLOW_ID}
  • 前提条件 根据选择区域,获取对应的区域名称。当前GCS仅支持如表1所示区域。 表1 区域名称 区域 区域名称 华北-北京一 cn-north-1 华北-北京四 cn-north-4 华东-上海二 cn-east-2 根据选择的区域,获取对应的IAM(请参见地区和终端节点)、GCS的Endpoint(请参见终端节点)。 若您第一次使用GCS,请先访问GCS控制台,授权GCS服务使用其它相关服务。 已获取项目ID,具体请参见获取项目ID。 已创建至少一个可用密钥对,具体请参见创建密钥对。 已创建OBS桶,桶的创建方法参见添加OBS桶。 已创建的可用文件存储卷名称,CCE的文件存储卷的创建和导入参见文件存储卷。 已创建的集群,集群创建方法参见CCE的集群管理部分,创建好集群后,请设置弹性伸缩策略,可以参见CCE插件管理的autoscaler。
  • 支持的授权项 策略包含系统策略和自定义策略,如果系统策略不满足授权要求,管理员可以创建自定义策略,并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作与API相对应,授权项列表说明如下: 权限:允许或拒绝某项操作。 对应API接口:自定义策略实际调用的API接口。 授权项:自定义策略中支持的Action,在自定义策略中的Action中写入授权项,可以实现授权项对应的权限功能。 依赖的授权项:部分Action存在对其他Action的依赖,需要将依赖的Action同时写入授权项,才能实现对应的权限功能。 IAM项目(Project)/企业项目(Enterprise Project):自定义策略的授权范围,包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目,表示此授权项对应的自定义策略,可以在IAM和企业管理两个服务中给用户组授权并生效。如果仅支持IAM项目,不支持企业项目,表示仅能在IAM中给用户组授权并生效,如果在企业管理中授权,则该自定义策略不生效。关于IAM项目与企业项目的区别,详情请参见:IAM与企业管理的区别。 “√”表示支持,“x”表示暂不支持。 基因容器(GCS)支持的自定义策略授权项如下所示: 表1 自定义策略授权项 权限 对应API接口 授权项(Action) 依赖的授权项 IAM项目(Project) 企业项目 (Enterprise Project) 创建environment POST /v1/environments gcs:environments:create obs:bucket:CreateBucket obs:bucket:PutBucketQuota cce:cluster:create cci:namespace:create √ √ 查询environment GET /v1/environments/{environment_id} gcs:environments:get cce:node:get cce:cluster:get cci:namespace:get √ √ 查询environment列表 GET /v1/environments gcs:environments:list vpc:vpcs:list cci:namespace:get cce:node:get √ √ 删除environment DELETE /v1/environments/{environment_id} gcs:environments:delete cce:cluster:get cce:cluster:delete cci:namespace:delete cci:namespace:get √ √ 创建execution POST /v1/executions gcs:executions:create cce:storage:create cce:kubernetes:* obs:bucket:HeadBucket cci:namespaceSubResource:Create cci:namespaceSubResource:Get cci:namespaceSubResource:List √ √ 查询execution GET /v1/executions/{execution_id} GET /v1/executions/{execution_id}/inputs GET /v1/executions/{execution_id}/outputs GET /v1/executions/{execution_id}/events gcs:executions:get - √ √ 查询execution列表 GET /v1/executions gcs:executions:list - √ √ 删除execution DELETE /v1/executions/{execution_id} gcs:executions:delete - √ √ 操作execution PUT /v1/executions/{execution_id} gcs:executions:operate - √ √ 创建workflow 校验workflow POST /v1/workflows POST /v1/workflows/validate gcs:workflows:create obs:bucket:HeadBucket obs:bucket:CreateBucket obs:object:PutObject obs:object:DeleteObject obs:object:GetObject √ √ 查询workflows GET /v1/workflows/{workflow_id} GET /v1/workflows/{workflow_id}/inputs GET /v1/workflows/{workflow_id}/tools gcs:workflows:get obs:object:GetObject √ √ 查询workflow列表 GET /v1/workflows gcs:workflows:list - √ √ 删除workflow DELETE /v1/workflows/{workflow_id} gcs:workflows:delete obs:object:DeleteObject obs:object:GetObject √ √ 更新workflow PUT /v1/workflows/{workflow_id} gcs:workflows:update obs:bucket:HeadBucket obs:bucket:CreateBucket obs:object:PutObject obs:object:DeleteObject √ √ 下载workflow GET /v1/workflows/{workflow_id}/archive gcs:workflows:download obs:object:GetObject √ √ 创建tool POST /v1/tools gcs:tools:create - √ √ 查询tool GET /v1/tools/{tool_id} gcs:tools:get - √ √ 查询tool列表 GET /v1/tools gcs:tools:list - √ √ 删除tool DELETE /v1/tools/{tool_id} gcs:tools:delete - √ √ 更新tool PUT /v1/tools/{tool_id} gcs:tools:update - √ √
  • 响应消息 响应参数 响应中结构如表2所示 表2 execution输入结构 参数 参数类型 描述 inputs JSONObject,请参见inputs 执行结果输入信息。 响应示例 { "inputs": { "data_pvc_name": { "description": "pvc name for data bucket", "label": "internal", "type": "string", "value": "gene-pvc-gene-container-test" }, "ref_pvc_name": { "description": "pvc name for reffrence bucket", "label": "internal", "type": "string", "value": "gene-pvc-gcs-ref-southchina" }, "sfs_pvc_name": { "description": "pvc name for sfs volume", "label": "internal", "type": "string", "value": "gene-sfs-1111" }, "cpu": { "default": "4c", "description": "cpu request", "label": "advanced", "type": "string", "value": "4c" }, "memory": { "default": "32G", "description": "memory request", "label": "advanced", "type": "string", "value": "32G" }, }}
  • 请求消息 表1 参数说明 参数 是否必选 参数类型 描述 execution_id 是 String 执行结果ID,即创建execution接口返回值。 请求示例 GET /v1/executions/e19d3faf-9f04-9685-e5c0-fbe8d40b96cd/inputs HTTP/1.1 Host:Host Server Content-Type:application/json
  • 响应消息 响应参数 响应中含有多个环境结构,结构如表2所示。 表2 环境结构 参数 参数类型 描述 guid String 环境ID。 project_id String 环境所属项目ID。 domain_id String 环境所属租户ID。 name String 环境名称。 description String 环境描述。 status String 环境运行状态。 create_at String 环境创建时间。 update_at String 环境更新时间。 cluster_id String 环境所属集群ID。 cluster_name String 环境所属集群名称。 cpu Integer 环境Cpu核数。 memory Integer 环境内存量。 source String 部署环境的方式。 stack_id String 堆栈ID。 is_gene_cluster Boolean 是否为部署环境时新创建的集群。 bucket_name String 关联的OBS桶名。 default_env Boolean 是否为默认环境。 order_id String 若为CCE包周期计费,order_id表示订单号,否则默认为空。 cluster_info String 集群的补充信息。 enterprise_project 表3 object 企业项目信息 表3 enterprise_project 参数 参数类型 描述 id String 企业项目id name String 企业项目的名称 响应示例 {"environments":[{"guid":"9c1e684f-d574-99e0-19fa-3f4ac7156c4f","project_id":"c5156752********8a8a81ede51894ac","domain_id":"b0148a********289b477bab429e48e7","name":"gcs-env-cci-auto-env","description":"Gene container environment from cci","status":"Running","create_at":"2019-03-01T07:39:38Z","update_at":"2019-03-01T07:47:31Z","cluster_id":"4461ec15-3a62-11e9-8c5d-80d4a5ae3e2b","cluster_name":"cci-auto-1551252918989","cpu":0,"memory":0,"source":"cci","stack_id":"","is_gene_cluster":false,"bucket_name":"","default_env":true,"order_id":"", "enterprise_project":{"id":"0", "name":"default"}}],"total":1}
  • URI GET /v1/environments 表1 请求参数 参数 是否必选 参数类型 描述 offset 否 String 偏移量,查询起始偏移,默认为0。 取值范围:必须由数字组成。 limit 否 String 限制量,单次查询总量,和offset必须成对出现。 取值范围:必须由数字组成。 source 否 String 查询环境的类型。默认为空,若为空则返回cce和cci的环境。支持选项: cce:指GCS部署的底层资源使用的是华为云服务云容器引擎(简称CCE)。 cci:指GCS部署的底层资源使用的是华为云服务云容器实例(简称CCI)。
  • 状态码 正常 返回值 说明 200 OK GET和PUT操作正常返回。 201 Created POST操作正常返回。 202 Accepted 请求已被接受。 204 No Content DELETE操作正常返回。 异常 返回值 说明 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。 父主题: 附录
  • 调用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": "project_name", "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" }}
  • 响应消息 响应参数 响应中含有一个环境结构,结构如表2所示。 响应示例 {"guid":"9c1e684f-d574-99e0-19fa-3f4ac7156c4f","project_id":"c51567523b744d098a8a81ede51894ac","domain_id":"b0148a2cb********477bab429e48e7","name":"gcs-env-cci-auto-test","description":"Gene container environment from cci","status":"Running","create_at":"2019-03-01T07:39:38Z","update_at":"2019-03-01T07:47:31Z","cluster_id":"4461ec15-3a62-11e9-8c5d-80d4a5ae3e2b","cluster_name":"cci-auto-1551252918989","cpu":0,"memory":0,"source":"cci","stack_id":"","is_gene_cluster":false,"bucket_name":"","default_env":true,"order_id":"", "enterprise_project":{"id":"0", "name":"default"}}
  • 响应消息 响应参数 响应中含有多个工具结构,结构如表2所示。 响应示例 { "tools": [ { "tool": [ { "guid": "da46b3dd-ffa9-d99b-95fa-824eeeceebea", "name": "obs-util", "description": "", "project_id": "a573035fc*********8eaea580553667", "version": "0.1.1", "scope": "public", "domain": "gcs_container", "domain_id": "024014b87********30fbe790bda3e6", "vendor": "基因容器团队", "image": "obs-util:0.1.1", "create_at": "2019-06-13T06:59:14Z", "update_at": "2019-06-13T06:59:14Z", "category": "environment", "instruction": "", "cpu": "2C", "memory": "8G", "command": "", "logo": "", "type": "container", "enterprise_project":{"id": "ccc130bb-fa32-4af9-9370-7458470169cf", "name": "dts"} } ] } ], "total": 1} 请求失败的响应参数如表11所示。
  • URI GET /v1/tools 表1 请求参数 参数 是否必选 参数类型 描述 scope 否 String 工具使用范围,如果为空默认domain。范围为: domain:租户内可用 public:全局可用(跨租户可用) name 否 String 工具名称,适用于根据工具名称模糊查询工具ID场景。 whole_name 否 String 工具名称,适用于根据工具名称全匹配查询工具ID场景。 offset 否 String 查询起始偏移,默认为0。 limit 否 String 单次查询总量,和offset必须成对出现。 category 否 String 工具分类,适用于根据工具分类查询工具场景。 支持选项: "others”:其他 "qualitycontrol":预处理 "basic":基因组分析基础 "gatk":GATK流程 "callvariant":深度学习突变检测 "environment":软件环境
  • 响应消息 响应参数 响应中含有一个execution结构,结构如表2所示。 表2 execution结构 参数 参数类型 描述 execution 表3 execution基本属性。 object 表4 k8s execution部分。 status 表11 节点状态。如果为空,则不返回。 enterprise_project 表14 object 企业项目信息 表3 Execution基本属性 参数 参数类型 描述 guid String execution guid。 name String execution名称。 namespace String execution所属命名空间。 cluster_name String execution所属集群名称。 cluster_id String execution所属集群ID。 project_id String execution所属项目ID。 domain_id String execution所属租户ID description String execution描述。 status String execution状态。 workflow_id String 创建execution的流程ID。 workflow_name String 创建execution的流程名称。 workflow_scope String 创建execution的流程使用范围。 inputs_json String execution输入。 outputs_json String execution输出。 image String 流程拓扑图。 time_duration Integer 处理持续时间。 sfs_volume_name String 中间件存储卷名称。 jobs_type Map key为job名称,value可选值为["CCE.Job", "CCI.Job", "GCS.Job"]。 target String execution使用的服务,可选值["cce", "cci"]。 create_at String execution创建时间。 update_at String execution更新时间。 label Map 自定义标签。 resources 表13 资源使用情况。 priority Integer execution的优先级。数值越大优先级越高。 表4 K8s execution结构 参数 参数类型 描述 kind String 值为execution,表示是execution类型。 apiVersion String 值为gene.kubedag/v1alpha1,表示api版本。 metadata 表5 execution的元属性。 spec 表6 execution的创建细节属性。 status 表7 execution的运行状态。 表5 Execution Metadata结构 参数 参数类型 描述 name String execution名字,与顶层name字段一致。 namespace String execution的项目ID,与顶层project_id字段一致。 selfLink String 访问该资源的api地址。 uid String execution资源的ID,与顶层的guid字段一致。 annotations JSONObject execution的特殊属性。 resourceVersion等其余字段 - k8s自带属性。 表6 Execution Spec结构 参数 参数类型 描述 actionName String execution的生命周期名称,值为 create (执行execution)/ delete(删除execution) timeoutInMinutes Integer execution的超时时间 enable Boolean 当enable值为false的时候,意为execution期望为停止状态(Terminated) onFailureStrategy String execution的失败重试逻辑,值为 DoNothing (无动作),Retry (失败重试) location String 指定的execution执行者的容器ip priority Integer 指定该execution的优先级,为一个 [0, 999] 的数,数值越大优先级越高。 表7 Execution Status结构 参数 参数类型 描述 actionName String 操作的名称: create:执行execution delete:删除execution progress Integer 执行进度。 objectStatus 表8 表示操作的总体执行情况。 subObjectStatuses JSONObject,每个key-value结构表示key对应的节点的执行进度,value为表9 表示分步操作的执行情况。 elementStatuses map 各元素的实际状态。 表8 - ExecutionStatus ObjectStatus结构 参数 参数类型 描述 phase String 该操作步骤的执行状态。 message String 详细的出错信息。 reason String 简短的CamelCase格式的错误描述信息。 updateAt String 以RFC3339格式表示的信息更新的UTC时间戳。 createAt String 以RFC3339格式表示的信息创建的UTC时间戳。 表9 ExecutionStatus SubObjectStatus结构 参数 参数类型 描述 phase String 该操作步骤的执行状态。 message String 详细的出错信息。 reason String 简短的CamelCase格式的错误描述信息。 updateAt String 以RFC3339格式表示的信息更新的UTC时间戳。 createAt String 以RFC3339格式表示的信息创建的UTC时间戳。 subElementStatus JSONObject,每个key-value结构表示key对应的节点的执行进度,value为表10 表示步骤内每个任务的执行情况。 表10 ExecutionStatus SubElementStatus结构 参数 参数类型 描述 phase String 该操作步骤的执行状态。 message String 详细的出错信息。 reason String 简短的CamelCase格式的错误描述信息。 updateAt String 以RFC3339格式表示的信息更新的UTC时间戳。 createAt String 以RFC3339格式表示的信息创建的UTC时间戳。 表11 Nodes status参数 参数 参数类型 描述 node_number Integer 节点个数。 finished_node_number Integer 已完成节点个数。 actual_node_status map[String]NodeStatus,NodeStatus详见表12 各节点的状态。 表12 Node status参数 参数 参数类型 描述 name String 节点名称。 status String 节点状态。 sub_job_num Integer 各节点的状态。 finished_sub_job_num Integer 已完成子job的数量。 sub_job_status map 子job的状态。 time_duration Integer 持续时间。 表13 resources 参数 参数类型 描述 cpu Integer cpu使用量,单位:核*秒。 比如一个2核CPU用了10秒,那使用量就是20。 memory Integer 内存使用量,单位:GB*秒。 比如一个8GB内存用了10秒,那使用量就是80。 time_ratio float execution执行时间与总耗时(包括等待时间和调度时间等)的比值。 表14 enterprise_project 参数 参数类型 描述 id String 企业项目id name String 企业项目的名称 响应示例 { "enterprise_project":{"id": "ccc130bb-fa32-4af9-9370-7458470169cf", "name": "dts"}, "execution": { "guid": "8d37c3b8-a1fb-11e8-95a3-0242ac11000c", "name": gcs-exec-3-08-17-170046", "namespace": "default", "cluster_name": "", "cluster_id": "b2d6bb38-a065-11e8-b0e6-0255ac105768", "project_id": "c51567523b********a81ede51894ac", "domain_id": "b0148a2cb4f********7bab429e48e7", "description": "", "status": "Succeeded", "workflow_id": "3323db80-d1f6-9295-e8be-0242cdfc38e9", "workflow_name": "gcs-workflow", "workflow_scope": "domain", "inputs_json": "{\"data_pvc_name\":{\"default\":\"\",\"value\":\"gene-pvc-gene-container-test\",\"description\":\"pvc name for data bucket\",\"type\":\"string\",\"label\":\"internal\"},\"ref_pvc_name\":{\"default\":\"\",\"value\":\"gene-pvc-gcs-ref-southchina\",\"description\":\"pvc name for reffrence bucket\",\"type\":\"string\",\"label\":\"internal\"},\"sfs_pvc_name\":{\"default\":\"\",\"value\":\"gene-sfs-1111\",\"description\":\"pvc name for sfs volume\",\"type\":\"string\",\"label\":\"internal\"}}", "outputs_json": "{}", "image": "", "time_duration": 100, "sfs_volume_name": "gene-sfs-1111", "create_at": "2018-08-17T08:57:21Z", "update_at": "2018-08-17T08:59:01Z" }, "object": { "kind": "Execution", "apiVersion": "gene.kubedag/v1alpha1", "metadata": { "name": "gcs-execution-3-08-17-170046", "namespace": "c51567523b744d098a8a81ede51894ac", "selfLink": "/apis/gene.kubedag/v1alpha1/namespaces/c51567523b744d098a8a81ede51894ac/executions/test-wyq-3-08-17-170046", "uid": "8d37c3b8-a1fb-11e8-95a3-0242ac11000c", "resourceVersion": "18443044", "creationTimestamp": "2018-08-17T08:57:21Z", "annotations": { "aos.security.io/account": "", "aosmeta.signature": "2", "cluster-id": "b2d6bb38-a065-11e8-b0e6-0255ac105768", "cluster-version": "v1.11.7", "namespace": "default", "paas-iam.alpha.kubernetes.io/domain-id": "b0148a2cb4********477bab429e48e7", "paas-iam.alpha.kubernetes.io/project-id": "c51567523b744********ede51894ac" } }, "spec": { "metadata": { "creationTimestamp": null }, "actionName": "create", "timeoutInMinutes": 1440, "objectData": "sss", "location": "172.17.0.14", "enable": true }, "status": { "actionName": "create", "progress": 100, "objectStatus": { "phase": "Succeeded", "updateAt": "2018-08-17T08:58:54.329941Z" }, "subObjectStatuses": { "job-a": { "phase": "Succeeded", "updateAt": "2018-08-17T08:57:52.143367Z", "subActionName": "create", "createAt": "2018-08-17T08:57:21.338190Z", "subElementStatus": { "job-a-0": { "phase": "Succeeded", "updateAt": "2018-08-17T08:57:52.143131Z", "subActionName": "create", "createAt": "2018-08-17T08:57:21.338190Z" } } } }, "elementStatuses": { "job-a-0": { "runtimeProperties": { "CreateJobSuccess": "success", "NameSpace": "default", "clusterId": "b2d6bb38-a065-11e8-b0e6-0255ac105768", "properties": "\"ZXMuaW8vaG9zdG5hbWUifX1dfX19fX0sInN0YXR1cyI6e319LCJpZ25vcmVVblNjaGVkdWxlRXJyIjp0cnVlfQ==\"", "refID": "b395378f-a1fc-11e8-92ae-fa163ee1e089", "refName": "job-a-0-8d37c3b8" } } } } }, "status": { "node_number": 4, "finished_node_number": 4, "actual_node_status": { "job-a": { "name": "job-a", "status": "Succeeded", "sub_job_num": 1, "finished_sub_job_num": 1, "sub_job_status": { "job-a-0": { "name": "job-a-0", "status": "Succeeded", "time_duration": 30 } }, "time_duration": 30 } } }}
  • 响应消息 响应参数 请求成功的响应参数如表2所示。 表2 成功响应参数 参数 参数类型 描述 guid String 工具ID。 name String 工具名称。 description String 工具描述。 project_id String 工具所属项目ID。 version String 工具版本。 scope String 工具可用范围,包括: domain:租户内可用 public:全局可用(跨租户可用) domain String 工具所属租户名称。 domain_id String 工具所属租户ID。 vendor String 工具创建者。 image String 工具包含镜像地址。 create_at String 工具创建时间。 update_at String 工具更新时间。 category String 工具分类。 instruction String 工具使用说明。 cpu String 使用工具,设置的虚机节点cpu限制。 memory String 使用工具,设置的虚机节点内存限制。 command String 使用工具,常用指令。 logo String 工具logo图片地址。 type String 工具类型。 enterprise_project 表3 object 企业项目信息 表3 enterprise_project 参数 参数类型 描述 id String 企业项目id name String 企业项目的名称 响应示例 { "guid": "457fe199-1e81-6cd7-d1b2-6e25c13aeaa2", "name": "nginx", "description": "", "project_id": "30a8c4d********18a9c45a87c3a854a", "version": "latest", "scope": "domain", "domain": "gcs-user", "domain_id": "bf8441478cb6********c4395d0b3e5", "vendor": "gcs-user", "image": "nginx:latest", "create_at": "2018-08-20T08:32:29Z", "update_at": "2018-08-20T08:32:29Z", "category": "", "instruction": "", "cpu": "2C", "memory": "8G", "command": "", "logo": "", "type":"container", "enterprise_project": {"id": "ccc130bb-fa32-4af9-9370-7458470169cf", "name": "dts"}} 请求失败的响应参数如表9所示。
  • GCS权限 默认情况下,管理员创建的IAM用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得对应的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。 GCS部署时通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域(如华北-北京四)对应的项目(cn-north-4)中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问GCS时,需要先切换至授权区域。 如表1所示,包括了GCS的所有系统角色。由于华为云各服务之间存在业务交互关系,存储容灾服务的角色依赖其他服务的角色实现功能。因此给用户授予存储容灾服务的角色时,需要同时授予依赖的角色,存储容灾服务的权限才能生效。 表1 GCS系统策略 策略名称 描述 策略类型 依赖关系 GCS FullAccess 基因容器服务的管理员权限。拥有基因容器服务所有操作权限。 系统策略 依赖如下策略,请同时授予如下权限。 OBS OperateAccess:全局级策略,请在“全局区域 对象存储服务”中勾选。 对于开通企业项目的用户,如下权限由于不支持企业项目,需要在用户组下面配置: AOM FullAccess:项目级策略 EVS FullAccess:项目级权限 GCS CommonOperations 基因容器的普通用户。 系统策略 GCS ReadOnlyAccess 基因容器服务的只读访问权限 系统策略 依赖如下策略,请同时授予如下权限。 OBS ReadOnlyAccess:全局级策略,请在“全局区域 对象存储服务”中勾选。 对于开通企业项目的用户,如下权限由于不支持企业项目,需要在用户组下面配置: AOM ReadOnlyAccess:项目级策略 EVS ReadOnlyAccess:项目级权限 GCS Administrator 基因容器服务的管理员权限。拥有基因容器服务所有操作权限。 系统角色 依赖如下策略,请同时授予如下权限。 CCE FullAccess:项目级策略,在与“GCS Administrator”设置策略的同一项目中勾选。 OBS OperateAccess:全局级策略,请在“全局区域 对象存储服务”中勾选。 CCI FullAccess:项目级策略,在与“GCS Administrator”设置策略的同一项目中勾选。
  • 应用运维管理(AOM) 基因容器使用AOM服务提供的能力,简化环境运维,提高运维效率。华为云应用运维管理(Application Operations Management)是云上应用的一站式立体化运维管理平台,实时监控用户的应用及相关云资源,采集并关联资源的各项指标、日志及事件等数据共同分析应用健康状态,提供灵活的告警及丰富的数据可视化功能,帮助用户及时发现故障,全面掌握应用、资源及业务的实时运行状况。
  • 管理执行结果 任务提交后,除查看执行结果外,您可以在执行结果页面对任务做操作。 重试任务:对于执行失败的流程,您可以单击“重试”将执行过程中失败的任务再次执行。 重试只会执行流程中失败的任务,不会重复执行成功的任务。例如一个流程中有10个任务,其中5个成功5个失败,那重试只会重新执行这5个失败的任务。 更新优先级:更新任务的执行优先级,除执行成功和已过期失效的任务外,都支持更新优先级。 在执行结果列表,鼠标移动至需要更新优先级的任务的“优先级”列,单击“更新优先级”(上图中的1),设置当前任务优先级,范围为[0, 999],数值越大则优先级越高,相同数值的任务并行执行。 查看任务日志:查看执行结果的日志,所有任务均可查看任务日志。 在执行结果列表,单击“操作”列的“日志”(上图中的2),可以查看该执行结果的日志信息。 启动任务:重新启动执行状态“已停止”的任务。 启动一个任务。在执行结果列表中,单击“操作”列的“启动”(上图中的3),重新启动任务。 批量启动任务。在执行结果列表中的“任务名称”勾选需要批量启动的任务,单击“启动”(上图中的4),重新启动任务。 停止任务:停止执行状态为“执行中”的任务。 停止一个任务。在执行结果列表中,单击“操作”列的“停止”(上图中的5),停止任务。 批量停止任务。在执行结果列表中的“任务名称”勾选需要批量停止的任务,单击“停止”(上图中的6),停止任务。 停止任务成功后即停止下发新Job至环境,已下发的Job将持续运行直至自然结束。若想停止Job,请在环境对应的服务内删除Job,或直接删除该任务。 删除任务:删除任务执行结果,所有任务均可删除,删除后不可恢复,请谨慎操作。 删除一个任务。在执行结果列表,单击“操作”列的“删除”(上图中的7),删除任务。 批量删除任务。在执行结果列表中的“任务名称”勾选需要批量删除的任务,单击“删除”(上图中的8),删除任务。 删除任务仅能删除任务在GCS中的记录,并不会删除任务的存储在OBS或是SFS中的原始数据或是中间数据,如需删除,请手动删除。 编辑任务:执行状态为“已停止”的任务,可以更新流程的配置参数。 单击“任务名称”,进入执行结果详情,在该页面单击“变更”,即可跳转至“变更流程”页面。在该页面根据需要修改参数,完成后单击“下一步”,确认无误后单击“完成”,流程更新任务提交成功。
  • 执行状态说明 从执行状态可以确定当前任务所属阶段,已有执行状态如下。 初始化:任务准备执行中。 执行中:任务正在执行中,可更新任务优先级、查看任务日志、删除任务、停止任务。 成功:任务执行成功,可查看任务日志、删除任务。 失败:任务执行失败,可查看任务日志、删除任务、重试执行任务。 已停止:任务已停止,可修改任务优先级、查看任务日志、删除任务、启动任务、更新流程的配置参数。 停止中:任务正在停止中。 删除中:任务正在删除中。 任务数据包括“执行结果”中展示的基本数据及GCS在执行任务过程中,由GCS产生的过程数据。执行状态为成功、失败的任务,GCS会定期清理任务过程数据。 执行状态为成功的任务,1天后将由GCS自动清理过程数据,任务失效。失效后的任务,您仍然可以在“执行结果”列表中查看任务基本数据。 执行状态为失败的任务,3天后,将由GCS自动清理过程数据,任务失效。失效后的失败任务,无法再“重试”,任务基本数据仍然可以在“执行结果”中查看。
  • 查看执行结果 执行结果页面可以查看所有任务,任务按创建时间排序,最新的排在最前面。 筛选查看结果。您可以通过页面右上角的筛选框对任务状态、任务名称、流程名称、批次名称进行过滤筛选查看任务。任务名称搜索支持模糊匹配,流程名称和批次名称搜索需要完全匹配。 筛选执行结果展示列。单击可以编辑执行结果展示列,勾选您想要展示的列即可完成筛选。 查看任务详情。您可以单击“任务名称”进入“执行结果详情”页面,查看任务对应流程名称、创建时间、耗时、任务进度图、监控等任务详情。 基本信息:包括流程名称、创建时间、执行状态、耗时、执行进展、批次名称、优先级、资源消耗。可以单击流程名称,查看详细的流程信息。执行状态的说明请参见执行状态说明。 任务进度图:显示当前任务所属流程所包括的子任务的执行情况。可以从进度视图、时间视图、内存视图、CPU视图、GPU视图、重试视图六个不同角度的视图查看。其中内存、CPU、GPU视图只有在流程中指定了内存、CPU、GPU大小才可以查看。重试视图只有执行状态为失败的任务才有。 流程事件:流程事件按事件时间展示了流程中重要步骤的监控信息(最新的事情展示在最前面)。 任务事件:任务事件按事件的时间展示任务中各子任务的操作进度(最新的事件展示在最前面)。任务事件中的“实例事件”页签显示每个子任务执行过程中的重要步骤。“Job名称”页签显示每个Job执行过程中的事件。您可以单击“查看YAML”查看流程文件。 GCS支持if/else和switch/case条件分支,当某子任务的condition值为false时,该子任务不会执行,在“任务事件”中该子任务状态显示为“忽略”。 日志:GCS的日志免费存储在AOM服务中,日志存储时长不超过7天且占用空间不超过500MB。单击“查看”可以进入AOM服务的日志文件页面查看执行日志。 输入:显示在流程模板中声明的输入参数及其取值。 输出:显示在流程模板中声明的输出参数及其取值。 监控:显示各子任务的CPU、内存、网络和磁盘的监控数据。
  • 查看工具 您可以查看公共工具和私有工具的使用说明和示例等。 登录GCS控制台,选择左侧导航栏的“工具仓库”,选择公共工具或私有工具。 单击工具名称,进入工具详情页面,该页面展示了工具的基本信息(名称、标签、创建时间、发布者、描述、企业项目)、使用说明、使用示例及工具版本,如图3。 图3 工具详情 在“私有工具”的工具详情页面,您还可以做如下操作: 更新工具:单击“更新工具”,可修改“发布者”、“工具描述”、“工具LOGO”、“使用说明”和“常用命令”。更新时只更新最新版本工具信息。 删除工具版本: 方法一:单击“删除”,在弹出的对话框中单击“确定”。 方法二:勾选要删除的工具,单击“删除工具”,在弹出的对话框中单击“确定”。该方法可批量删除工具版本。 若删除后工具不存在版本,则该工具将被删除。数据删除后不能恢复,请谨慎操作。 图4 删除工具版本 新增工具版本:单击“新增版本”,可新增工具版本。在新增版本页面设置工具参数,其中工具名称即为当前工具的名称,不可修改。工具版本名称不可与已有版本名称重复。
  • 基本概念 弹性云服务器 弹性云服务器(Elastic Cloud Server,ECS)是一种可随时自助获取、可弹性伸缩的云服务器,帮助您打造可靠、安全、灵活、高效的应用环境。 集群 集群是容器运行所需云资源的集合,包含了若干台服务器节点、虚拟私有云等云资源。 命名空间 命名空间(namespace)是一种在多个用户之间划分资源的方法。不同的命名空间中的数据彼此隔离。命名空间对应一个虚拟私有云(Virtual Private Cloud,VPC),在创建命名空间时会关联已有VPC或创建一个新的VPC,并在VPC下创建一个子网。后续在该命名空间下创建的容器及其他资源都会在对应的VPC及子网之内。 对象存储服务 对象存储服务(Object Storage Service,OBS)是华为云中基于对象的存储服务,可以为您提供海量、安全、高可靠、低成本的数据存储能力。 桶 桶(Bucket)是OBS中存储对象的单位。对象存储提供了基于桶和对象的扁平化存储方式,桶中的所有对象都处于同一逻辑层级,去除了文件系统中的多层级树形目录结构。对象存储服务设置有三类存储类别,分别为:标准存储、低频访问存储、归档存储,从而满足客户业务对存储性能、成本的不同诉求。创建桶时可以指定桶的存储类别。桶的存储类别可以修改。基因容器中桶可用于存储分析前后产生的数据,包括原始基因数据、流程执行中间数据及执行结果数据。 弹性文件服务 弹性文件服务(Scalable File Service,SFS)提供按需扩展的高性能文件存储,可供云上多个弹性云服务器共享访问。
  • GCS自定义策略样例 示例1:授权创建和删除环境的权限 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "gcs:environments:create", "gcs:environments:delete" ] } ] } 示例2:授权创建,查看流程,执行流程的权限 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "gcs:workflows:create", "gcs:workflows:list","gcs:executions:create" ] } ] }
  • 委托权限 为正常提供服务功能,GCS老的委托方式是要求客户创建名为servicestage_admin_trust的委托,提供op_svc_servicestage账号获取创建资源的能力。 但由于op_svc_servicestage账号被多个服务共享,将导致您无法精细化控制对特定服务的授权行为,即授权servicestage的同时也会授权GCS,反之亦然。 为解决该问题,GCS服务提供了新的委托方式,后续若您不再使用GCS服务,可直接删除委托“gcs_admin_trust”,该操作将只影响GCS,不影响您使用其他服务。 由于GCS在运行中对存储、容器等各类云服务资源都存在依赖关系(如:按照您的流程在指定的环境中下发任务)。因此在您使用GCS服务前,需要在IAM中创建名为“gcs_admin_trust”委托并授予“op_svc_gcs_container”账号Tenant Administrator权限,即允许GCS服务使用账户“op_svc_gcs_container”对您的其他云服务资源进行操作,从而更好地为您提供服务。该委托将仅用于GCS服务对所依赖的其他云服务资源进行调用。 具体操作步骤如下: 使用“管理员账号”登录统一身份认证服务控制台。 在统一身份认证服务的左侧导航窗格中,选择“委托”页签,单击右上方的“创建委托”。 图1 创建委托 在创建委托页面,设置委托名称为“gcs_admin_trust”。 “委托类型”选择“普通帐号”,在“委托的帐号”中输入需要建立委托关系的帐号名“op_svc_gcs_container”。 图2 云服务委托名称 选择“持续时间”,填写“描述”信息。 单击“下一步”,进入给委托授权页面。 勾选“Tenant Administrator”权限,单击“下一步”。 图3 选择策略 选择权限的作用范围为“所有资源”。 图4 授权范围 单击“确定”,委托创建完成,服务即可使用。 如果您不再使用GCS服务,可直接删除委托“gcs_admin_trust”,该操作将只禁止GCS服务操作您的服务,不影响您使用其他服务。 父主题: 权限管理
  • 设计器界面概述 基因容器的设计器界面由六个部分组成,分别是控制栏、资源栏、日志栏、设计台、流程模板栏和属性帮助栏。 设计器各部分详细功能说明如下: 图1 设计器界面 表1 流程设计器页面说明 编号(对应上图) 栏目 解释 1 控制栏 集中显示设计台的快捷控制操作。 2 资源栏 展示所有可被拖动设计的资源,包括“公共工具”、“私有工具”和“已有流程”。“已有流程”中包括“示例流程”和“自定义流程”。 3 日志栏 展示操作或设计模板过程中所触发的错误信息、提示信息等。 例如,将流程模板由JSON格式切换成YAML格式时,日志栏会提示您已将流程模板成功转换为YAML。 4 设计台 设计模板的操作画布。您可以把想要编排的资源拖动到设计台画布,并运用其生成的连接点进行逻辑关系的定义与关联。 5 流程模板栏 设计过程中动态生成相应的流程模板,支持流程模板修改和属性定义。关于流程模板的编写方法请参阅GCS流程语言参考。 6 属性帮助栏 释放一个拖动资源或选中一个拖动资源时,属性栏会展示您所选中资源所包含的属性名、属性类型,便于您在流程模板栏进行属性编写或定义时做参照。
共100000条