文档首页 > > API参考> API说明> 应用管理> 创建应用服务实例

创建应用服务实例

分享
更新时间: 2019/11/27 GMT+08:00

功能介绍

这个API用来创建应用服务的实例。

URI

POST /v1/{project_id}/apps/service_instances/{instance_id}?accepts_incomplete=true

参数说明请参见表1

表1 参数说明

参数

类型

必选

说明

project_id

String

租户的project ID。

instance_id

String (UUID)

应用服务实例的唯一识别码, 随机生成的UUID。

accepts_incomplete

Boolean

是否异步运行,只支持“true”。

请求消息

请求参数

表2 请求参数说明

参数

类型

必选

说明

service_id

String

ServiceStage的服务ID,这个值在 ServiceStage 中是一个固定值:SRV238CASUFGHI09314A

plan_id

String

ServiceStage的Plan ID,这个值在 ServiceStage 中是一个固定值:cas-pay2go

organization_guid

String

ServiceStage 的 Organization GUID,这个值在 ServiceStage 中是一个固定值。

目前此值未被用,缺省值为organization_guid=abc_guid。

space_guid

String

ServiceStage 的Space GUID,这个值在 ServiceStage 中是一个固定值。

目前此值未被用,缺省值space_guid=abc_guid。

context

表3

应用 Context 的具体参数。

parameters

表4

应用实例的具体参数。

表3 context参数说明

参数

类型

必选

说明

order_id

String

Order ID,目前此值未被用,缺省值order_id=ord123。

表4 parameters参数说明

参数

类型

必选

说明

name

String

应用服务实例的名称。

取值包含数字、字母、中划线和下划线,且不能以中划线或者下划线开头或者结尾。

例如:myapp-test01。

version

String

应用服务实例的版本号。

例如:1.0

group_id

String

应用组ID。

display_name

String

显示名称。

例如:ACME online store

type

String

运行环境类型。

目前支持: Tomcat8,Php7,Nodejs8,Java8,Docker。

platform_type

String

平台提供应用运行的环境。应用可以在不同的平台上运行。

可选用的平台的类型有cce、cci、vmapp。

category

String

应用类别,例如:Webapp、Mobile、ServiceComb、SpringCloud。

domain

String

应用服务访问域名。如:myapp.example.com

listener_port

Integer

进程监听的内部端口,比如:8080。

该参数仅对Web应用程序是必需的。

description

String

应用服务实例的描述。

例如:what my app does

size

表5

实例数和资源规格。

source

表6

应用服务实例部署源信息,如软件包,镜像。

extended_param

表10

扩展参数,如环境变量。

platforms

表11

应用服务实例使用的基础设施信息。

enterprise_project_id

String

企业项目ID。缺省值:0。

表5 size参数说明

参数

类型

必选

说明

id

String

应用服务实例的资源规格。

当前支持以下值:

  • MICRO-5G:0.5C:1G
  • SMALL-10G:1.0C:2G
  • STANDARD-30G:2.0C:4G
  • LARGE-50G:4.0C:8G
  • XLARGE-100G:4.0C:16G

replica

Integer

需要创建副本的数量。

表6 source参数说明

参数

类型

必选

说明

kind

String

部署来源类别。取值范围:code,artifact。

spec

对应不同kind,有下面不同类型。

kind是code请参考表7

kind是artifact请参考表 artifact参数说明

部署来源信息。

表7 code spec参数说明

参数

类型

必选

说明

repo_type

String

代码仓库类型。

DevCloud, GitHub, Gitee, Bitbucket, Gitlab。

repo_url

String

代码仓库URL。

repo_namespace

String

代码仓库用户/组织。

proj_branch

String

分支。

secu_token

String

访问代码仓库的授权名字。

artifact_namespace

String

构建后归档的SWR镜像组织名称。

表8 artifact参数说明

参数

类型

必选

说明

artifact_name

请参考表9

软件包或镜像信息。

表9 artifact spec参数说明

参数

类型

必选

说明

storage

String

存储仓库,目前只支持swr。

type

String

类型,image或者package。

url

String

下载地址。

auth

String

认证模式,支持以下两种模式:

  • IAM:IAM token认证。
  • None :公开。

version

string

版本。

artifact_namespace

String

对于package类型,构建后归档的SWR镜像组织名称;

对于image类型,为空。

表10 extended_param参数说明

参数

类型

必选

说明

env

Map[String]String

应用服务实例的环境变量。如:

{

"env": [{

"name": "SERVICE_ADDR",

"value": "fusionweather"

}]

}

表11 platforms参数说明

参数

类型

必选

说明

vpc

表12

虚拟私有云(VPC)参数。

cce

表13

云容器引擎(CCE)参数。

platform_type选cce的时候必选。

elb

表14

弹性负载均衡(ELB)参数。

category为Webapp的时候必选。

ecs

表 ecs参数说明

弹性云服务器(ECS)参数。

platform_type选vmapp的时候,需提供as和ecs其中一个。

as

表 as参数说明

弹性伸缩组(AS)参数。

platform_type选vmapp的时候,需提供as和ecs其中一个。

表12 vpc参数说明

参数

类型

必选

说明

id

String

虚拟私有云(VPC)的实例ID。

parameters

Map[String]Object

vpc子网参数。如:

{

"subnet": {

"id": "0b908d67-aa5a-4a49-bf5e-976bf448d4d5",

"name": "subnet-qxzpy7"

}

}

表13 cce参数说明

参数

类型

必选

说明

id

String

云容器引擎(CCE)的集群实例ID。

parameters

Map[String]Object

CCE参数,提供命名空间。如:{"namespace": "default"}

表14 elb参数说明

参数

类型

必选

说明

id

String

弹性负载均衡(ELB)的实例ID。

parameters

Map[String]Object

监听端口和协议。如:

{

"loadbalancer": {

"listener": {

"protocol": "HTTP",

"port": "80"

}

}

}

表15 ecs参数说明

参数

类型

必选

说明

id

String

ecs群组ID,当前固定值为 Default

parameters

Map[String]array

ecs实例ID列表。如:

{

"id": "Default",

"parameters": {

"hosts": ["535c4c34-06e2-4df0-9fd9-5f67c1b2aedc"]

}

}

表16 as参数说明

参数

类型

必选

说明

id

String

弹性伸缩组ID。

parameters

Map[String]array

ecs实例ID列表。如:

{

"id": "be1d14ad-cba5-4553-8692-407fe1acd675",

"parameters": {

"hosts": ["535c4c34-06e2-4df0-9fd9-5f67c1b2aedc"]

}

}

响应消息

响应参数

参数说明请参见表17

表17 响应参数说明

参数

类型

说明

instance_id

String

应用服务实例的 ID。

job_id

String

创建任务Job ID,用于查询创建进展。

message

String

创建任务信息。

示例

请求示例

{
  "service_id": "SRV238CASUFGHI09314A",
  "plan_id": "cas-pay2go",
  "organization_guid": "abc_guid",
  "space_guid": "abc_guid",
  "context": {
    "order_id": "ord123"
  },
  "parameters": {
    "name": "myapptest01",
    "version": "1.0.0",
    "display_name": "ACME online store",
    "type": "Tomcat8",
    "platform_type": "cce",
    "category": "Webapp",
    "listener_port": 8080,
    "description": "What my app does ...",
    "size": {
      "id": "STANDARD-30G:2.0C:4G",
      "replica": 1
    },
    "extended_param": {
      "enterprise_project_id": 0
    },
    "source": {
        "kind": "artifact",
        "spec": {
            "myapptest01": {
                "storage": "swr",
                "type": "package",
                "url": "https://100.125.5.235:20202/swr/v2/domains/d1/namespaces/nodel02/repositories/repo/packages/jar/versions/3.0/file_paths/WebApp-0.0.1-SNAPSHOT.jar",
                "auth": "iam",
                "version": "1.0",
                "artifact_namespace": "default"
            }
        }
    },
    "platforms": {
      "cce": {
        "id": "7e1f8760-211b-11e9-98e4-0255ac101e1d",
        "parameters": {
          "namespace": "default"
        }
      },
      "elb": {
        "id": "0bf0247d-2321-4c4c-b770-55e34c8b5fb4"
      }
    }
  }
}

响应示例

{
    "instance_id" : "string",
    "job_id" : "string",
    "message" : "string"
}

状态码

状态码如表18所示。

表18 状态码说明

HTTP状态码

描述

200

操作成功。

401

认证不通过

500

内部服务错误。

错误码格式为:SVCSTG.CAS.[Status Code][Error_ID],例如:SVCSTG.CAS.5001000。错误码说明请参考ServiceStage错误码列表

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区