功能介绍
替换EIPPool。
调用方法
请参见如何调用API。
URI
PUT /apis/crd.yangtse.cni/v1/namespaces/{namespace}/eippools/{name}
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
是 |
String |
name of the EIPPool |
namespace |
是 |
String |
object name and auth scope, such as for teams and projects |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
dryRun |
否 |
String |
When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed |
fieldManager |
否 |
String |
fieldManager is a name associated with the actor or entity that is making these changes. The value must be less than or 128 characters long, and only contain printable characters, as defined by https://golang.org/pkg/unicode/#IsPrint. |
pretty |
否 |
String |
If 'true', then the output is pretty printed. |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户Token。 通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
Content-Type |
是 |
String |
目前支持三种类型的PATCH请求方法的操作,参考《使用JSON合并patch更新Deployment》。
|
Content-Type |
是 |
String |
消息体的类型(格式),默认取值为“application/json” 缺省值:application/json |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
apiVersion |
否 |
String |
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
kind |
否 |
String |
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
metadata |
否 |
Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
|
spec |
否 |
Specification of the EIPPool. |
|
status |
否 |
Status of the EIPPool. |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
apiVersion |
否 |
String |
APIVersion defines the version of this resource that this field set applies to. The format is "group/version" just like the top-level APIVersion field. It is necessary to track the version of a field set because it cannot be automatically converted. |
fieldsType |
否 |
String |
FieldsType is the discriminator for the different fields format and version. There is currently only one possible value: "FieldsV1" |
fieldsV1 |
否 |
Object |
FieldsV1 holds the first JSON version format as described in the "FieldsV1" type. |
manager |
否 |
String |
Manager is an identifier of the workflow managing these fields. |
operation |
否 |
String |
Operation is the type of operation which lead to this ManagedFieldsEntry being created. The only valid values for this field are 'Apply' and 'Update'. |
time |
否 |
String |
Time is timestamp of when these fields were set. It should always be empty if Operation is 'Apply' |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
apiVersion |
是 |
String |
API version of the referent. |
blockOwnerDeletion |
否 |
Boolean |
If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned. |
controller |
否 |
Boolean |
If true, this reference points to the managing controller. |
kind |
是 |
String |
Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
name |
是 |
String |
Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names |
uid |
是 |
String |
UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
amount |
否 |
Integer |
Amount is the amount of eips need to be create. 最小值:0 最大值:500 |
eipAttributes |
否 |
Attributes is the eip attributes which used to create eip. |
|
eips |
否 |
Array of strings |
EIPs used to generate EIP resources. |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
alias |
否 |
String |
Alias of PublicIP |
bandwidth |
是 |
Bandwidth create attributes |
|
ipVersion |
否 |
Integer |
IP Version of PublicIP 枚举值:
|
networkType |
是 |
String |
Network Type of PublicIP |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
chargeMode |
否 |
String |
Bandwidth Charge Mode 枚举值:
|
id |
否 |
String |
Bandwidth id, only useful for WHOLE bandwidth share type |
name |
否 |
String |
Bandwidth name, only useful for PER bandwidth share type 最小长度:1 最大长度:64 |
shareType |
否 |
String |
Bandwidth Share Type 枚举值:
|
size |
否 |
Integer |
Bandwidth size 最小值:0 最大值:200000 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
associates |
否 |
eip associate infos. |
|
eips |
否 |
EIPs is a set of generated EIP resources. |
|
usage |
否 |
String |
Usage is usage of eip in this pool, e.g. 2/10. |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
attachment |
否 |
Attachment is the eip attachment info. |
|
privateIP |
否 |
PrivateIP is private ip information |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
freeTimestamp |
否 |
String |
Timestamp of NeutronPort be to FixedPreBound or FixedUnBound phase |
neutronPortName |
否 |
String |
NeutronPortName is NeutronPort name which associated. |
neutronPortNamespace |
否 |
String |
NeutronPortNamespace is NeutronPort namespace which associated. |
nodeName |
否 |
String |
NodeName is node name where the NeutronPort resides, must with phase Bound, PreBound or FixedBound. |
podName |
否 |
String |
Pod name |
podNamespace |
否 |
String |
Pod Namespace |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
否 |
String |
Port ID or EIP ID |
ipv4 |
否 |
String |
IPv4 is the IPv4 address for traffic from the eni. |
ipv6 |
否 |
String |
IPv6 is the IPv6 address for traffic from the eni. |
mac |
否 |
String |
MAC is the MAC address of the endpoint interface. |
status |
否 |
String |
Status of this IP |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
alias |
否 |
String |
Alias of the PublicIP |
associateInstanceID |
否 |
String |
Associate instance id |
associateInstanceType |
否 |
String |
Associate instance type |
bandWidthChargeMode |
否 |
String |
Bandwidth charge mode of the PublicIP |
bandwidthShareType |
否 |
String |
Bandwidth share type of the PublicIP |
bandwidthSize |
否 |
Integer |
Bandwidth size of the PublicIP |
id |
否 |
String |
The ID of the PublicIP |
ipv4 |
否 |
String |
The ipv4 address of the PublicIP |
ipv6 |
否 |
String |
The ipv6 address of the PublicIP |
networkType |
否 |
String |
Network Type of PublicIP |
status |
否 |
String |
PublicIP status |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
apiVersion |
String |
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
kind |
String |
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
metadata |
Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
|
spec |
Specification of the EIPPool. |
|
status |
Status of the EIPPool. |
参数 |
参数类型 |
描述 |
---|---|---|
apiVersion |
String |
APIVersion defines the version of this resource that this field set applies to. The format is "group/version" just like the top-level APIVersion field. It is necessary to track the version of a field set because it cannot be automatically converted. |
fieldsType |
String |
FieldsType is the discriminator for the different fields format and version. There is currently only one possible value: "FieldsV1" |
fieldsV1 |
Object |
FieldsV1 holds the first JSON version format as described in the "FieldsV1" type. |
manager |
String |
Manager is an identifier of the workflow managing these fields. |
operation |
String |
Operation is the type of operation which lead to this ManagedFieldsEntry being created. The only valid values for this field are 'Apply' and 'Update'. |
time |
String |
Time is timestamp of when these fields were set. It should always be empty if Operation is 'Apply' |
参数 |
参数类型 |
描述 |
---|---|---|
apiVersion |
String |
API version of the referent. |
blockOwnerDeletion |
Boolean |
If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned. |
controller |
Boolean |
If true, this reference points to the managing controller. |
kind |
String |
Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
name |
String |
Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names |
uid |
String |
UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids |
参数 |
参数类型 |
描述 |
---|---|---|
amount |
Integer |
Amount is the amount of eips need to be create. 最小值:0 最大值:500 |
eipAttributes |
Attributes is the eip attributes which used to create eip. |
|
eips |
Array of strings |
EIPs used to generate EIP resources. |
参数 |
参数类型 |
描述 |
---|---|---|
alias |
String |
Alias of PublicIP |
bandwidth |
Bandwidth create attributes |
|
ipVersion |
Integer |
IP Version of PublicIP 枚举值:
|
networkType |
String |
Network Type of PublicIP |
参数 |
参数类型 |
描述 |
---|---|---|
chargeMode |
String |
Bandwidth Charge Mode 枚举值:
|
id |
String |
Bandwidth id, only useful for WHOLE bandwidth share type |
name |
String |
Bandwidth name, only useful for PER bandwidth share type 最小长度:1 最大长度:64 |
shareType |
String |
Bandwidth Share Type 枚举值:
|
size |
Integer |
Bandwidth size 最小值:0 最大值:200000 |
参数 |
参数类型 |
描述 |
---|---|---|
associates |
eip associate infos. |
|
eips |
EIPs is a set of generated EIP resources. |
|
usage |
String |
Usage is usage of eip in this pool, e.g. 2/10. |
参数 |
参数类型 |
描述 |
---|---|---|
attachment |
Attachment is the eip attachment info. |
|
privateIP |
PrivateIP is private ip information |
参数 |
参数类型 |
描述 |
---|---|---|
freeTimestamp |
String |
Timestamp of NeutronPort be to FixedPreBound or FixedUnBound phase |
neutronPortName |
String |
NeutronPortName is NeutronPort name which associated. |
neutronPortNamespace |
String |
NeutronPortNamespace is NeutronPort namespace which associated. |
nodeName |
String |
NodeName is node name where the NeutronPort resides, must with phase Bound, PreBound or FixedBound. |
podName |
String |
Pod name |
podNamespace |
String |
Pod Namespace |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
Port ID or EIP ID |
ipv4 |
String |
IPv4 is the IPv4 address for traffic from the eni. |
ipv6 |
String |
IPv6 is the IPv6 address for traffic from the eni. |
mac |
String |
MAC is the MAC address of the endpoint interface. |
status |
String |
Status of this IP |
参数 |
参数类型 |
描述 |
---|---|---|
alias |
String |
Alias of the PublicIP |
associateInstanceID |
String |
Associate instance id |
associateInstanceType |
String |
Associate instance type |
bandWidthChargeMode |
String |
Bandwidth charge mode of the PublicIP |
bandwidthShareType |
String |
Bandwidth share type of the PublicIP |
bandwidthSize |
Integer |
Bandwidth size of the PublicIP |
id |
String |
The ID of the PublicIP |
ipv4 |
String |
The ipv4 address of the PublicIP |
ipv6 |
String |
The ipv6 address of the PublicIP |
networkType |
String |
Network Type of PublicIP |
status |
String |
PublicIP status |
状态码: 201
参数 |
参数类型 |
描述 |
---|---|---|
apiVersion |
String |
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
kind |
String |
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
metadata |
Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
|
spec |
Specification of the EIPPool. |
|
status |
Status of the EIPPool. |
参数 |
参数类型 |
描述 |
---|---|---|
apiVersion |
String |
APIVersion defines the version of this resource that this field set applies to. The format is "group/version" just like the top-level APIVersion field. It is necessary to track the version of a field set because it cannot be automatically converted. |
fieldsType |
String |
FieldsType is the discriminator for the different fields format and version. There is currently only one possible value: "FieldsV1" |
fieldsV1 |
Object |
FieldsV1 holds the first JSON version format as described in the "FieldsV1" type. |
manager |
String |
Manager is an identifier of the workflow managing these fields. |
operation |
String |
Operation is the type of operation which lead to this ManagedFieldsEntry being created. The only valid values for this field are 'Apply' and 'Update'. |
time |
String |
Time is timestamp of when these fields were set. It should always be empty if Operation is 'Apply' |
参数 |
参数类型 |
描述 |
---|---|---|
apiVersion |
String |
API version of the referent. |
blockOwnerDeletion |
Boolean |
If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned. |
controller |
Boolean |
If true, this reference points to the managing controller. |
kind |
String |
Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
name |
String |
Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names |
uid |
String |
UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids |
参数 |
参数类型 |
描述 |
---|---|---|
amount |
Integer |
Amount is the amount of eips need to be create. 最小值:0 最大值:500 |
eipAttributes |
Attributes is the eip attributes which used to create eip. |
|
eips |
Array of strings |
EIPs used to generate EIP resources. |
参数 |
参数类型 |
描述 |
---|---|---|
alias |
String |
Alias of PublicIP |
bandwidth |
Bandwidth create attributes |
|
ipVersion |
Integer |
IP Version of PublicIP 枚举值:
|
networkType |
String |
Network Type of PublicIP |
参数 |
参数类型 |
描述 |
---|---|---|
chargeMode |
String |
Bandwidth Charge Mode 枚举值:
|
id |
String |
Bandwidth id, only useful for WHOLE bandwidth share type |
name |
String |
Bandwidth name, only useful for PER bandwidth share type 最小长度:1 最大长度:64 |
shareType |
String |
Bandwidth Share Type 枚举值:
|
size |
Integer |
Bandwidth size 最小值:0 最大值:200000 |
参数 |
参数类型 |
描述 |
---|---|---|
associates |
eip associate infos. |
|
eips |
EIPs is a set of generated EIP resources. |
|
usage |
String |
Usage is usage of eip in this pool, e.g. 2/10. |
参数 |
参数类型 |
描述 |
---|---|---|
attachment |
Attachment is the eip attachment info. |
|
privateIP |
PrivateIP is private ip information |
参数 |
参数类型 |
描述 |
---|---|---|
freeTimestamp |
String |
Timestamp of NeutronPort be to FixedPreBound or FixedUnBound phase |
neutronPortName |
String |
NeutronPortName is NeutronPort name which associated. |
neutronPortNamespace |
String |
NeutronPortNamespace is NeutronPort namespace which associated. |
nodeName |
String |
NodeName is node name where the NeutronPort resides, must with phase Bound, PreBound or FixedBound. |
podName |
String |
Pod name |
podNamespace |
String |
Pod Namespace |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
Port ID or EIP ID |
ipv4 |
String |
IPv4 is the IPv4 address for traffic from the eni. |
ipv6 |
String |
IPv6 is the IPv6 address for traffic from the eni. |
mac |
String |
MAC is the MAC address of the endpoint interface. |
status |
String |
Status of this IP |
参数 |
参数类型 |
描述 |
---|---|---|
alias |
String |
Alias of the PublicIP |
associateInstanceID |
String |
Associate instance id |
associateInstanceType |
String |
Associate instance type |
bandWidthChargeMode |
String |
Bandwidth charge mode of the PublicIP |
bandwidthShareType |
String |
Bandwidth share type of the PublicIP |
bandwidthSize |
Integer |
Bandwidth size of the PublicIP |
id |
String |
The ID of the PublicIP |
ipv4 |
String |
The ipv4 address of the PublicIP |
ipv6 |
String |
The ipv6 address of the PublicIP |
networkType |
String |
Network Type of PublicIP |
status |
String |
PublicIP status |
请求示例
将已创建EIPPool中的label值替换为"some-key" : "some-value"。
{
"apiVersion" : "crd.yangtse.cni/v1",
"kind" : "EIPPool",
"metadata" : {
"creationTimestamp" : "2022-09-07T01:22:50Z",
"finalizers" : [ "yangtse.io/eip-pool" ],
"generation" : 1,
"labels" : {
"some-key" : "some-value"
},
"name" : "eippool-test",
"namespace" : "namespace-test",
"resourceVersion" : "42396258",
"selfLink" : "/apis/crd.yangtse.cni/v1/namespaces/namespace-test/eippools/eippool-test",
"uid" : "e4dc5432-1d9b-4fcb-8840-ee445b6511ae"
},
"spec" : {
"amount" : 1,
"eipAttributes" : {
"bandwidth" : {
"chargeMode" : "bandwidth",
"name" : "eip-test",
"shareType" : "PER",
"size" : 5
},
"ipVersion" : 4,
"networkType" : "5_g-vm"
}
},
"status" : {
"eips" : [ {
"alias" : "eip-test",
"bandWidthChargeMode" : "bandwidth",
"bandwidthShareType" : "PER",
"bandwidthSize" : 5,
"id" : "034a0bae-81f7-46f4-b933-3273adc32b54",
"ipv4" : "100.85.221.2",
"networkType" : "5_g-vm",
"status" : "DOWN"
} ],
"usage" : "0/1"
}
}
响应示例
状态码: 200
OK
{
"apiVersion" : "crd.yangtse.cni/v1",
"kind" : "EIPPool",
"metadata" : {
"creationTimestamp" : "2022-09-07T01:22:50Z",
"finalizers" : [ "yangtse.io/eip-pool" ],
"generation" : 1,
"labels" : {
"some-key" : "some-value"
},
"name" : "eippool-test",
"namespace" : "namespace-test",
"resourceVersion" : "42396258",
"selfLink" : "/apis/crd.yangtse.cni/v1/namespaces/namespace-test/eippools/eippool-test",
"uid" : "e4dc5432-1d9b-4fcb-8840-ee445b6511ae"
},
"spec" : {
"amount" : 1,
"eipAttributes" : {
"bandwidth" : {
"chargeMode" : "bandwidth",
"name" : "eip-test",
"shareType" : "PER",
"size" : 5
},
"ipVersion" : 4,
"networkType" : "5_g-vm"
}
},
"status" : {
"eips" : [ {
"alias" : "eip-test",
"bandWidthChargeMode" : "bandwidth",
"bandwidthShareType" : "PER",
"bandwidthSize" : 5,
"id" : "034a0bae-81f7-46f4-b933-3273adc32b54",
"ipv4" : "100.85.221.2",
"networkType" : "5_g-vm",
"status" : "DOWN"
} ],
"usage" : "0/1"
}
}
状态码
状态码 |
描述 |
---|---|
200 |
OK |
201 |
Created |
400 |
BadRequest |
401 |
Unauthorized |
403 |
Forbidden |
404 |
NotFound |
405 |
MethodNotAllowed |
406 |
NotAcceptable |
409 |
Conflict |
415 |
UnsupportedMediaType |
422 |
Invalid |
429 |
TooManyRequests |
500 |
InternalError |
503 |
ServiceUnavailable |
504 |
ServerTimeout |