Cloud
Pokročilý
KEDA — Event-driven Autoscaling
Kubernetes Event-driven Autoscaler. Škálování na základě front, metrik a externích zdrojů — až na nulu.
Co je KEDA
KEDA rozšiřuje Kubernetes o event-driven autoscaling. Na rozdíl od HPA umí škálovat na 0 replik a reagovat na desítky zdrojů.
- Scale to zero — žádné zbytečné náklady
- 60+ scalerů (Kafka, RabbitMQ, AWS SQS, Prometheus, Cron...)
- Funguje společně s HPA
ScaledObject — RabbitMQ
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
name: order-processor
spec:
scaleTargetRef:
name: order-processor
pollingInterval: 15
cooldownPeriod: 60
minReplicaCount: 0
maxReplicaCount: 50
triggers:
- type: rabbitmq
metadata:
host: amqp://user:[email protected]:5672
queueName: orders
queueLength: "10"
Prometheus Trigger
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
name: api-scaler
spec:
scaleTargetRef:
name: api-server
triggers:
- type: prometheus
metadata:
serverAddress: http://prometheus.monitoring:9090
metricName: http_requests_per_second
query: sum(rate(http_requests_total{service="api"}[2m]))
threshold: "100"
Cron Trigger
triggers:
- type: cron
metadata:
timezone: Europe/Prague
start: 0 8 * * 1-5
end: 0 20 * * 1-5
desiredReplicas: "10"
Shrnutí
KEDA je must-have pro event-driven workloady v Kubernetes. Scale to zero šetří náklady, 60+ scalerů pokrývá prakticky libovolný zdroj událostí.
Potřebujete pomoct s implementací?
Náš tým má zkušenosti s návrhem a implementací moderních architektur. Rádi vám pomůžeme.
Nezávazná konzultace