- PriorityLevelConfiguration v1beta2
- PriorityLevelConfiguration
- PriorityLevelConfigurationSpec
- PriorityLevelConfigurationStatus
- PriorityLevelConfigurationList
- 操作
get
读取指定的 PriorityLevelConfigurationget
读取指定的 PriorityLevelConfiguration 的状态list
列出或监视 PriorityLevelConfiguration 类别的对象create
创建 PriorityLevelConfigurationupdate
替换指定的 PriorityLevelConfigurationupdate
替换指定的 PriorityLevelConfiguration 的状态patch
部分更新指定的 PriorityLevelConfigurationpatch
部分更新指定的 PriorityLevelConfiguration 的状态delete
删除 PriorityLevelConfigurationdeletecollection
删除 PriorityLevelConfiguration 的集合
PriorityLevelConfiguration v1beta2
PriorityLevelConfiguration 表示一个优先级的配置。
apiVersion: flowcontrol.apiserver.k8s.io/v1beta2
import "k8s.io/api/flowcontrol/v1beta2"
PriorityLevelConfiguration
PriorityLevelConfiguration 表示一个优先级的配置。
apiVersion: flowcontrol.apiserver.k8s.io/v1beta2
kind: PriorityLevelConfiguration
metadata (ObjectMeta)
metadata
是标准的对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadataspec (PriorityLevelConfigurationSpec)
spec
是 “request-priority” 预期行为的规约。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-statusstatus (PriorityLevelConfigurationStatus)
status
是 “请求优先级” 的当前状况。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
PriorityLevelConfigurationSpec
PriorityLevelConfigurationSpec 指定一个优先级的配置。
type (string),必需
type
指示此优先级是否遵从有关请求执行的限制。 取值为"Exempt"
意味着此优先级的请求不遵从某个限制(且因此从不排队)且不会减损其他优先级可用的容量。 取值为"Limited"
意味着 (a) 此优先级的请求遵从这些限制且 (b) 服务器某些受限的容量仅可用于此优先级。必需。limited (LimitedPriorityLevelConfiguration)
limited
指定如何为某个受限的优先级处理请求。 当且仅当type
是"Limited"
时,此字段必须为非空。LimitedPriorityLevelConfiguration 指定如何处理需要被限制的请求。它解决两个问题:
- 如何限制此优先级的请求?
应如何处理超出此限制的请求?
limited.assuredConcurrencyShares (int32)
assuredConcurrencyShares
(ACS) 配置执行限制,这是在给定时间可以执行的、此优先级的请求数量的限制。 ACS 必须是一个正数。服务器的并发限制(SCL)数量按其保证的并发份额划分到并发能力受限的各个优先级中。 这一计算会为所有这种优先级分别生成其确定的并发值(ACV),即一次可以执行的请求数量:ACV(l) = ceil( SCL * ACS(l) / ( sum[priority levels k] ACS(k) ) )
较大的 ACS 值意味着(以影响所有其他优先级为代价)保留更多的并发请求。此字段的默认值为 30。
limited.limitResponse (LimitResponse)
limitResponse
指示如何处理当前无法立即执行的请求。LimitResponse 定义如何处理当前无法立即执行的请求。
limited.limitResponse.type (string),必需
type
是 “Queue” 或 “Reject”。此字段必须设置。 “Queue” 意味着在到达时无法被执行的请求可以被放到队列中,直到它们被执行或者队列长度超出限制为止。 “Reject” 意味着到达时无法执行的请求将被拒绝。limited.limitResponse.queuing (QueuingConfiguration)
queuing
包含排队所用的配置参数。只有type
是"Queue"
时,此字段才可以为非空。QueuingConfiguration 保存排队所用的配置参数。
limited.limitResponse.queuing.handSize (int32)
handSize
是一个小的正数,用于配置如何将请求随机分片到队列中。 当以该优先级将请求排队时,将对请求的流标识符(字符串对)进行哈希计算, 该哈希值用于打乱队列队列的列表,并处理此处指定的一批请求。 请求被放入这一批次中最短的队列中。handSize
不得大于queues
,并且应该明显更小(以便几个大的流量不会使大多数队列饱和)。 有关设置此字段的更多详细指导,请参阅面向用户的文档。此字段的默认值为 8。limited.limitResponse.queuing.queueLengthLimit (int32)
queueLengthLimit
是任意时刻允许在此优先级的给定队列中等待的请求数上限; 额外的请求将被拒绝。 此值必须是正数。如果未指定,则默认为 50。limited.limitResponse.queuing.queues (int32)
queues
是这个优先级的队列数。此队列在每个 API 服务器上独立存在。此值必须是正数。 将其设置为 1 相当于禁止了混洗分片操作,进而使得对相关流模式的区分方法不再有意义。 此字段的默认值为 64。
PriorityLevelConfigurationStatus
PriorityLevelConfigurationStatus 表示 “请求优先级” 的当前状况。
conditions ([]PriorityLevelConfigurationCondition)
Map:合并期间保留根据键 type 保留其唯一值
conditions
是 “请求优先级” 的当前状况。PriorityLevelConfigurationCondition 定义优先级的状况。
conditions.lastTransitionTime (Time)
lastTransitionTime
是状况上次从一个状态转换为另一个状态的时间。Time 是对 time.Time 的封装。Time 支持对 YAML 和 JSON 进行正确封包。 为 time 包的许多函数方法提供了封装器。
conditions.message (string)
message
是人类可读的消息,指示有关上次转换的详细信息。conditions.reason (string)
reason
是状况上次转换原因的、驼峰格式命名的、唯一的一个词。conditions.status (string)
status
表示状况的状态,取值为 True、False 或 Unknown 之一。必需。conditions.type (string)
type
表示状况的类型,必需。
PriorityLevelConfigurationList
PriorityLevelConfigurationList 是 PriorityLevelConfiguration 对象的列表。
apiVersion: flowcontrol.apiserver.k8s.io/v1beta2
kind: PriorityLevelConfigurationList
metadata (ListMeta)
metadata
是标准的对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadataitems ([]PriorityLevelConfiguration),必需
items
是请求优先级设置的列表。
操作
get
读取指定的 PriorityLevelConfiguration
HTTP 请求
GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}
参数
name (路径参数): string,必需
PriorityLevelConfiguration 的名称
pretty (查询参数): string
响应
200 (PriorityLevelConfiguration): OK
401: Unauthorized
get
读取指定的 PriorityLevelConfiguration 的状态
HTTP 请求
GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}/status
参数
name (路径参数): string,必需
PriorityLevelConfiguration 的名称
pretty (查询参数): string
响应
200 (PriorityLevelConfiguration): OK
401: Unauthorized
list
列出或监视 PriorityLevelConfiguration 类别的对象
HTTP 请求
GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
参数
allowWatchBookmarks (查询参数): boolean
continue (查询参数): string
fieldSelector (查询参数): string
labelSelector (查询参数): string
limit (查询参数): integer
pretty (查询参数): string
resourceVersion (查询参数): string
resourceVersionMatch (查询参数): string
timeoutSeconds (查询参数): integer
watch (查询参数): boolean
响应
200 (PriorityLevelConfigurationList): OK
401: Unauthorized
create
创建 PriorityLevelConfiguration
HTTP 请求
POST /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
参数
body: PriorityLevelConfiguration,必需
dryRun (查询参数): string
fieldManager (查询参数): string
fieldValidation (查询参数): string
pretty (查询参数): string
响应
200 (PriorityLevelConfiguration): OK
201 (PriorityLevelConfiguration): Created
202 (PriorityLevelConfiguration): Accepted
401: Unauthorized
update
替换指定的 PriorityLevelConfiguration
HTTP 请求
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}
参数
name (路径参数): string,必需
PriorityLevelConfiguration 的名称
body: PriorityLevelConfiguration,必需
dryRun (查询参数): string
fieldManager (查询参数): string
fieldValidation (查询参数): string
pretty (查询参数): string
响应
200 (PriorityLevelConfiguration): OK
201 (PriorityLevelConfiguration): Created
401: Unauthorized
update
替换指定的 PriorityLevelConfiguration 的状态
HTTP 请求
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}/status
参数
name (路径参数): string,必需
PriorityLevelConfiguration 的名称
body: PriorityLevelConfiguration,必需
dryRun (查询参数): string
fieldManager (查询参数): string
fieldValidation (查询参数): string
pretty (查询参数): string
响应
200 (PriorityLevelConfiguration): OK
201 (PriorityLevelConfiguration): Created
401: Unauthorized
patch
部分更新指定的 PriorityLevelConfiguration
HTTP 请求
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}
参数
name (路径参数): string,必需
PriorityLevelConfiguration 的名称
body: Patch,必需
dryRun (查询参数): string
fieldManager (查询参数): string
fieldValidation (查询参数): string
force (查询参数): boolean
pretty (查询参数): string
响应
200 (PriorityLevelConfiguration): OK
201 (PriorityLevelConfiguration): Created
401: Unauthorized
patch
部分更新指定的 PriorityLevelConfiguration 的状态
HTTP 请求
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}/status
参数
name (路径参数): string,必需
PriorityLevelConfiguration 的名称
body: Patch,必需
dryRun (查询参数): string
fieldManager (查询参数): string
fieldValidation (查询参数): string
force (查询参数): boolean
pretty (查询参数): string
响应
200 (PriorityLevelConfiguration): OK
201 (PriorityLevelConfiguration): Created
401: Unauthorized
delete
删除 PriorityLevelConfiguration
HTTP 请求
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}
参数
name (路径参数): string,必需
PriorityLevelConfiguration 的名称
body: DeleteOptions
dryRun (查询参数): string
gracePeriodSeconds (查询参数): integer
pretty (查询参数): string
propagationPolicy (查询参数): string
响应
200 (Status): OK
202 (Status): Accepted
401: Unauthorized
deletecollection
删除 PriorityLevelConfiguration 的集合
HTTP 请求
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
参数
body: DeleteOptions
continue (查询参数): string
dryRun (查询参数): string
fieldSelector (查询参数): string
gracePeriodSeconds (查询参数): integer
labelSelector (查询参数): string
limit (查询参数): integer
pretty (查询参数): string
propagationPolicy (查询参数): string
resourceVersion (查询参数): string
resourceVersionMatch (查询参数): string
timeoutSeconds (查询参数): integer
响应
200 (Status): OK
401: Unauthorized