获取集群证书
功能介绍
该API用于获取指定集群的证书信息。
接口约束
该接口适用于1.13及以上集群版本。
URI
POST /api/v3/projects/{project_id}/clusters/{cluster_id}/clustercert
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
project_id |
是 |
String |
项目ID,获取方式请参见如何获取接口URI中参数。 |
|
cluster_id |
是 |
String |
集群ID,获取方式请参见如何获取接口URI中参数。 |
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
Content-Type |
是 |
String |
消息体的类型(格式) |
|
X-Auth-Token |
是 |
String |
调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值,获取方式请参见获取token。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
duration |
是 |
Integer |
集群证书有效时间,最小值为1天,最大值为5年,因此取值范围为1-1827(以天为单位,实际上限取决于5年内闰年的数量,例如5年内存在一个闰年则上限为1826天);若填-1则为最大值5年。 |
响应参数
状态码: 200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
Port-ID |
String |
集群控制节点端口ID |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
kind |
String |
API类型,固定值“Config”,该值不可修改。 |
|
apiVersion |
String |
API版本,固定值“v1”。 |
|
preferences |
Object |
当前未使用该字段,当前默认为空。 |
|
clusters |
Array of Clusters objects |
集群列表。 |
|
users |
Array of Users objects |
存放了指定用户的一些证书信息和ClientKey信息。 |
|
contexts |
Array of Contexts objects |
上下文列表。 |
|
current-context |
String |
当前上下文,若存在publicIp(虚拟机弹性IP)时为 external; 若不存在publicIp为 internal。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
name |
String |
集群名字。
|
|
cluster |
ClusterCert object |
集群信息。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
server |
String |
服务器地址。 |
|
certificate-authority-data |
String |
证书授权数据。 |
|
insecure-skip-tls-verify |
Boolean |
不校验服务端证书,在 cluster 类型为 externalCluster 时,该值为 true。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
client-certificate-data |
String |
客户端证书。 |
|
client-key-data |
String |
包含来自TLS客户端密钥文件的PEM编码数据。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
name |
String |
上下文的名称。
|
|
context |
Context object |
上下文信息。 |
请求示例
申请30天有效的集群访问证书
{
"duration" : 30
}
响应示例
状态码: 200
表示成功获取指定集群的证书。证书文件格式参见kubernetes v1.Config结构
{
"kind" : "Config",
"apiVersion" : "v1",
"preferences" : { },
"clusters" : [ {
"name" : "internalCluster",
"cluster" : {
"server" : "https://192.168.1.7:5443",
"certificate-authority-data" : "Q2VydGlmaWNhdGU6******FTkQgQ0VSVElGSUNBVEUtLS0tLQo="
}
} ],
"users" : [ {
"name" : "user",
"user" : {
"client-certificate-data" : "LS0tLS1CRUdJTiBDR******QVRFLS0tLS0K",
"client-key-data" : "LS0tLS1CRUdJTi******BLRVktLS0tLQo="
}
} ],
"contexts" : [ {
"name" : "internal",
"context" : {
"cluster" : "internalCluster",
"user" : "user"
}
} ],
"current-context" : "internal"
}
状态码
|
状态码 |
描述 |
|---|---|
|
200 |
表示成功获取指定集群的证书。证书文件格式参见kubernetes v1.Config结构 |
错误码
请参见错误码。