-
-
Notifications
You must be signed in to change notification settings - Fork 18
Expand file tree
/
Copy pathScaler.yaml
More file actions
154 lines (146 loc) · 5.41 KB
/
Copy pathScaler.yaml
File metadata and controls
154 lines (146 loc) · 5.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: scalers.autoscaling.stackable.tech
spec:
group: autoscaling.stackable.tech
names:
categories: []
kind: Scaler
plural: scalers
shortNames: []
singular: scaler
scope: Namespaced
versions:
- additionalPrinterColumns: []
name: v1alpha1
schema:
openAPIV3Schema:
description: Auto-generated derived type for ScalerSpec via `CustomResource`
properties:
spec:
properties:
replicas:
description: |-
Desired replica count.
Written by the horizontal pod autoscaling mechanism via the /scale subresource.
NOTE: This and other replica fields)use a [`u16`] instead of a [`i32`] used by
[`k8s_openapi`] types to force a non-negative replica count. All [`u16`]s can be
converted losslessly to [`i32`]s where needed.
Upstream issues:
- <https://github.com/kubernetes/kubernetes/issues/105533>
- <https://github.com/Arnavion/k8s-openapi/issues/136>
format: uint16
maximum: 65535.0
minimum: 0.0
type: integer
required:
- replicas
type: object
status:
description: Status of a StackableScaler.
nullable: true
properties:
lastTransitionTime:
description: Timestamp indicating when the scaler state last transitioned.
format: date-time
type: string
replicas:
description: |-
The current total number of replicas targeted by the managed StatefulSet.
Exposed via the `/scale` subresource for horizontal pod autoscaling consumption.
format: uint16
maximum: 65535.0
minimum: 0.0
type: integer
selector:
description: Label selector string for HPA pod counting. Written at `.status.selector`.
nullable: true
type: string
state:
description: The current state of the scaler state machine.
oneOf:
- required:
- idle
- required:
- preScaling
- required:
- scaling
- required:
- postScaling
- required:
- failed
properties:
failed:
description: |-
A hook returned an error.
The scaler stays here until the user applies the [`Annotation::autoscaling_retry`] annotation
to trigger a reset to [`ScalerState::Idle`].
properties:
failedIn:
description: Which stage produced the error.
enum:
- PreScaling
- Scaling
- PostScaling
type: string
reason:
description: Human-readable error message from the hook.
type: string
required:
- failedIn
- reason
type: object
idle:
description: No scaling operation is in progress.
type: object
postScaling:
description: |-
Running the `post_scale` hook (e.g. cluster rebalance).
This stage additionally tracks the previous replica count to be able derive the direction
of the scaling operation.
properties:
previousReplicas:
format: uint16
maximum: 65535.0
minimum: 0.0
type: integer
required:
- previousReplicas
type: object
preScaling:
description: Running the `pre_scale` hook (e.g. data offload).
type: object
scaling:
description: |-
Waiting for the StatefulSet to converge to the new replica count.
This stage additionally tracks the previous replica count to be able derive the direction
of the scaling operation.
properties:
previousReplicas:
format: uint16
maximum: 65535.0
minimum: 0.0
type: integer
required:
- previousReplicas
type: object
type: object
required:
- lastTransitionTime
- replicas
- state
type: object
required:
- spec
title: Scaler
type: object
served: true
storage: true
subresources:
scale:
labelSelectorPath: .status.selector
specReplicasPath: .spec.replicas
statusReplicasPath: .status.replicas
status: {}