查询堆栈
功能介绍
用于查询某个堆栈。
URI
GET /v2/stacks/{stack_id}
参数 |
是否必选 |
描述 |
---|---|---|
stack_id |
是 |
堆栈id,长度[1, 64]。 |
请求消息
N/A。
响应消息
- 响应参数
- 查询成功时返回堆栈结构。
- 查询失败时返回错误消息结构。
其中,返回堆栈结构如表2所示, 返回错误消息结构如表5所示。
表2 响应参数 参数
参数类型
描述
cluster_id
String
堆栈所在集群ID
cluster_name
String
堆栈所在集群名字
create_at
String
堆栈创建时间
description
String
堆栈描述
domain_id
String
堆栈所属租户
dsl_version
String
堆栈使用的模板语法版本
force
Boolean
堆栈强制裁剪标志
guid
String
堆栈ID
health
Object
堆栈的健康检查情况,创建堆栈时不返回,详情请参见表3。
inputs_json
String
堆栈使用的模板输入参数。 该参数内每个key-value结构对应inputs下名为key的字段,标明输入值为value。 如果该处未指明某个key,则使用key指定的默认值,如果没有默认值则报错。
labels
Map<String,String>
堆栈标签
name
String
堆栈名称
namespace
String
堆栈所属命名空间
object
Object
堆栈运行相关数据,创建堆栈时不返回,详情请参见表4。
project_id
String
堆栈所属项目的ID
status
String
堆栈状态
template_id
String
模板ID
template_version
String
堆栈使用的模板版本
update_at
String
堆栈更新时间
表4 object字段数据结构说明 参数
参数类型
描述
apiVersion
String
值为paas/v1alpha1,表示api版本。
kind
String
值为Stack,表示是Stack类型。
metadata
Object
堆栈的元信息,详情请参见表5。
spec
Object
堆栈的规格描述,详情请参见表6。
status
Object
堆栈的执行状态,详情请参见表9。
表5 object.metadata字段数据结构说明 参数
参数类型
描述
annotations
Object
堆栈的特殊属性,当前AOS共填写3个字段。
- paas-iam.alpha.kubernetes.io/domain-id: 与顶层的domain_id字段一致
- namespace: 与顶层的namespace字段一致
- cluster-id: 与顶层的cluster_id字段一致。
labels
Map<String,String>
Stack的标签
name
String
Stack的名字,在执行生命周期时作为action_id传入
namespace
String
堆栈的项目ID,与顶层project_id字段一致
resourceVersion
String
资源版本
selfLink
String
访问该资源的api地址
uid
String
堆栈资源的ID,与顶层的guid字段一致
表6 object.spec字段数据结构说明 参数
参数类型
描述
selector
Object
包含一个名为matchLabels,类型为JSONObject的字段,其中包含一个key-value结构, key为stackname,value为顶层的name字段,详情请参见表7。
template
Object
AOS的模板属性,详情请参见表8。
表9 object.status字段数据结构说明 参数
参数类型
描述
elementStatuses
Map<String,Object>
堆栈各元素的执行状态及相关属性,详情请参见表11。
healthyStatus
object
堆栈最后一次健康检查状态的缓存,详情请参见表12。
lastExecutionStatus
object
最近一次的执行状态,详情请参见表16。
phase
String
堆栈的执行状态,有执行成功、执行中、执行挂起、执行取消、执行取消中、执行强制取消中、执行挂起中、执行重试中、执行运行中等,详情请参见表10。
表10 phase参数说明 phase参数取值
描述
Running
运行中
Pending
初始化
Terminating
删除中
CreateFailed
创建失败
DeleteSucceeded
删除成功
DarklaunchSucceeded
灰度发布成功
UpgradeFailed
变更失败
DarklaunchFailed
灰度发布失败
RollbackFailed
恢复堆栈失败
DeleteFailed
删除失败
UpdateFailed
更新失败
ForceCancelled
已强制取消
CreateSucceeded
创建成功
RollbackSucceeded
恢复堆栈成功
UpgradeSucceeded
变更成功
UpdateSucceeded
更新成功
ReconfigFailed
编辑失败
ReconfigSucceeded
编辑成功
Creating
创建中
Deleting
删除中
Upgrading
变更中
Darklaunching
灰度发布中
Rollbacking
恢复堆栈中
Updating
更新中
Reconfiging
编辑中
CreatePaused
创建已中止
DeletePaused
删除已中止
UpgradePaused
变更已中止
DarkLaunchPaused
灰度发布已中止
RollbackPaused
恢复堆栈已中止
UpdatePaused
更新已中止
ReconfigPaused
编辑已中止
CreateCancelling
创建取消中
DeleteCancelling
删除取消中
UpgradeCancelling
变更取消中
DarklaunchCancelling
灰度发布取消中
RollbackCancelling
恢复堆栈取消中
UpdateCancelling
更新取消中
ReconfigCancelling
编辑取消中
CreateCancelled
创建已取消
DeleteCancelled
删除已取消
UpgradeCancelled
变更已取消
RollbackCancelled
恢复堆栈已取消
ReconfigCancelled
编辑已取消
CancelFailed
取消失败
表12 object.status.healthyStatus字段数据结构说明 参数
参数类型
描述
elements
Map<String,Object>
健康检查各个元素的结果信息,详情请参见表13。
elementsReference
Object
元素引用信息,详情请参见表15。
healthyCheckTimestamp
String
以RFC3339格式表示的健康检查时间戳
status
String
健康检查后元素的状态,如Running
表13 object.status.healthyStatus.elements字段数据结构说明 参数
参数类型
描述
message
String
元素健康检查的结果信息
runtimes
Object
每个key-value表示健康检查结果的某个特性,详情请参见表14。
status
String
健康检查后元素的状态
表14 object.status.healthyStatus.elements.runtimes字段数据结构说明 参数
参数类型
描述
fatigue
Integer
元素状态
instanceCount
Integer
实例个数
timestamp
String
时间戳
表15 object.status.healthyStatus.elementsReference字段数据结构说明 参数
参数类型
描述
APIVersion
String
元素的API版本
FieldPath
String
元素的字段路径
Kind
String
元素的类型
Name
String
元素的名称
Namespace
String
元素的命名空间
ResourceVersion
String
元素的资源版本
UID
String
元素的UID
表16 object.status.lastExecutionStatus字段数据结构说明 参数
参数类型
描述
actionName
String
操作的名称
objectStatus
Object
表示操作的总体执行进度,详情请参见表17。
progress
Integer
执行进度
subObjectStatuses
Map<String,Object>
每个key-value结构表示key对应的节点的执行进度,详情请参见表18。
- 响应示例
{ "force": true, "guid": "e167e354-c4d7-11ea-972c-0255ac1003cf", "namespace": "default", "project_id": "d383836f2d134980beb6a8cc5fced7ed", "cluster_name": "", "cluster_id": "", "domain_id": "4e9f3643e4cc44aeb8b7473e06ab309b", "name": "aoss4iit-b9152f94", "description": "", "status": "Running", "template_id": "779531a0-8949-b015-53a5-62764f56134b", "template_name": "no-delete-vpc-period", "inputs_json": "{\"Cloud.DomainId\":\"4e9f3643e4cc44aeb8b7473e06ab309b\",\"Cloud.NoValue\":\"\",\"Cloud.PeriodNum\":1,\"Cloud.PeriodType\":\"month\",\"Cloud.ProjectId\":\"d383836f2d134980beb6a8cc5fced7ed\",\"Cloud.Region\":\"ae-ad-1\",\"Cloud.StackName\":\"aoss4iit-b9152f94\",\"Cloud.UserId\":\"f24e2f88f137420a9cfe8464e5f0a1ff\"}", "create_at": "2020-07-08T08:18:57Z", "update_at": "2020-07-13T07:10:06Z", "labels": "{\"creator\":\"vpc1\"}", "dsl_version": "cloud_tosca_version_1_0", "object": { "kind": "Stack", "apiVersion": "paas/v1alpha1", "metadata": { "name": "aoss4iit-b9152f94", "namespace": "d383836f2d134980beb6a8cc5fced7ed", "selfLink": "/apis/paas/v1alpha1/namespaces/d3838sadweea4980beb6a8cc5fced7ed/stacks/aoss4iit-b9152f94", "uid": "e167e354-c4d7-11ea-972c-0255ac1003cf", "resourceVersion": "274630605", "labels": { "stackname": "aoss4iit-b9152f94" }, "annotations": { "cluster-id": "", "namespace": "default", "paas-iam.alpha.kubernetes.io/domain-id": "4e9f3643e4cc44asswb7473e06ab309b", } }, "spec": { "selector": { "matchLabels": { "stackname": "aoss4iit-b9152f94" } }, "template": { "type": "Aos", "reference": { "namespace": "d383836f2d134980beb6a8cc5fced7ed", "name": "aoss4iit-b9152f94-713114f1-1430-89fe-5112-992a1830d457", "uid": "aoss4iit-b9152f94-713114f1-1430-89fe-5112-992a1830d457" } } }, "status": { "phase": "CreateSucceeded", "elementStatuses": { "vpcvp4ud": { "runtimeProperties": { "refID": "42531670-5561-4722-bdca-1007aa25710f", "refName": "vpcvp4ud-72b2dee4" } } }, "lastExecutionStatus": { "actionName": "create", "progress": 100, "objectStatus": { "phase": "Succeeded", "updateAt": "2020-07-13T07:10:11.789231Z" }, "subObjectStatuses": { "vpcvp4ud": { "subActionName": "create", "phase": "Succeeded", "updateAt": "2020-07-13T07:10:10.820633Z", "createAt": "2020-07-13T07:10:06.787787Z" } } }, "healthyStatus": { "healthyCheckTimestamp": "2020-07-14T09:40:42+08:00", "status": "Running", "elements": { "vpcvp4ud": { "status": "healthy", "runtimes": { "fatigue": "1", "instanceCount": "1", "timestamp": "2020-07-14T09:40:42+08:00" } } }, "elementsReference": { "Kind": "", "Namespace": "d383836f2d134980beb6a8cc5fced7ed", "Name": "aoss4iit-b9152f94-health-e545b9a7-565d-0284-c498-7e2d801ae968", "UID": "01427996-c4d8-11ea-972c-0255ac1003cf", "APIVersion": "", "ResourceVersion": "", "FieldPath": "" } } } }, "health": { "message": "", "healthy": true } }
状态码
- 正常
表19 状态码 状态码
描述
200
查询堆栈成功
- 异常
表20 状态码 状态码
描述
404
请求资源不存在
500
服务器遇到了一个未曾预料的状况,导致无法完成对请求的处理。