File tree Expand file tree Collapse file tree 4 files changed +11
-4
lines changed Expand file tree Collapse file tree 4 files changed +11
-4
lines changed Original file line number Diff line number Diff line change 69
69
| `rollout.flagger` | `false` | Use Flagger to control rollouts (`rollout.controller` must be `Deployment` or `StatefulSet`) |
70
70
| `rollout.analysis` | req. for Canary or Flagger | Flagger or Argo Rollouts analysis for automatic `Canary` or `BlueGreen` promotion |
71
71
| `rollout.revisionHistoryLimit` | `null` | Number of old ReplicaSets to retain (`rollout.controller` must be `Deployment` or `ArgoRollout`) |
72
- | `replicas` | `1` | The number of instances of the service to run (set at least `2` for Pod Disruption Budget) |
72
+ | `replicas` | `1` | The number of instances of the service to run |
73
73
| `autoscaling.enabled` | `false` | Enables automatic starting of additional instances |
74
74
| `autoscaling.maxReplicas` | `3` | The maximum number of instances to run (must be larger than `replicas`) |
75
75
| `autoscaling.metric.type` | `Resource` | The type of metric to use for scaling (`Resource`, `Pods`, `Object` or `External`) |
86
86
| `scheduling.podAffinity` | `{}` | Labels to select other pods this service should share nodes with if possible |
87
87
| `scheduling.podAntiAffinity` | `{}` | Labels to select other pods this service must not share nodes with |
88
88
| `scheduling.replicaSpread` | `BestEffort` | How to spread replicas across nodes (`BestEffort`, `Strict`, `None`) |
89
+ | `scheduling.minAvailable` | `1` | Minimum number of instances to keep running during cluster maintenance (only if smaller than `replicas`) |
89
90
| `persistence.enabled` | `false` | Enables persistent storage for the service |
90
91
| `persistence.storageClass` | | The type of disk to use for storage instead of the cluster default |
91
92
| `persistence.accessModes` | `[ReadWriteOnce]` | The support access modes the volume can be mounted with |
Original file line number Diff line number Diff line change 1
- {{- if and .Values.ingress.enabled (gt .Values.replicas 1.0 ) }}
1
+ {{- if and (gt .Values.scheduling.minAvailable 1.0) (lt .Values.scheduling.minAvailable .Values.replicas ) }}
2
2
3
3
apiVersion : policy/v1
4
4
kind : PodDisruptionBudget
@@ -7,7 +7,7 @@ metadata:
7
7
labels : {{- include "generic-service.top-level-labels" . | nindent 4 }}
8
8
9
9
spec :
10
- minAvailable : 1
10
+ minAvailable : {{ .Values.scheduling.minAvailable }}
11
11
12
12
selector :
13
13
matchLabels : {{- include "generic-service.selector-labels" . | nindent 6 }}
Original file line number Diff line number Diff line change 443
443
"replicas" : {
444
444
"type" : " integer" ,
445
445
"default" : 1 ,
446
- "description" : " The number of instances of the service to run (set at least 2 for Pod Disruption Budget) "
446
+ "description" : " The number of instances of the service to run"
447
447
},
448
448
"autoscaling" : {
449
449
"type" : " object" ,
585
585
],
586
586
"default" : " BestEffort" ,
587
587
"description" : " How to spread replicas across nodes"
588
+ },
589
+ "minAvailable" : {
590
+ "type" : " integer" ,
591
+ "default" : 1 ,
592
+ "description" : " Minimum number of instances to keep running during cluster maintenance (only applied if this value is smaller than replicas)"
588
593
}
589
594
},
590
595
"additionalProperties" : false
Original file line number Diff line number Diff line change @@ -90,6 +90,7 @@ scheduling:
90
90
podAffinity : {}
91
91
podAntiAffinity : {}
92
92
replicaSpread : BestEffort
93
+ minAvailable : 1
93
94
94
95
persistence :
95
96
enabled : false
You can’t perform that action at this time.
0 commit comments