Budgeting Disruptions¶
High availability is an important aspect in running production systems. To this end, you can add Pod Disruption Budget Specifications to the Pod Template Specifications you create. Depending on how you want your application to handle disruptions, you can define your disruption budget accordingly.
An example Seldon Deployment with disruption budgets defined can be seen below:
apiVersion: machinelearning.seldon.io/v1
kind: SeldonDeployment
metadata:
name: seldon-model
spec:
name: test-deployment
replicas: 2
predictors:
- componentSpecs:
- pdbSpec:
minAvailable: 90%
spec:
containers:
- image: seldonio/mock_classifier_rest:1.3
imagePullPolicy: IfNotPresent
name: classifier
resources:
requests:
cpu: '0.5'
terminationGracePeriodSeconds: 1
graph:
children: []
endpoint:
type: REST
name: classifier
type: MODEL
name: example
This example ensures that our serving capacity does not decrease by more than 10%.