Tutorials  /  Container & Cloud

Optimierung der Kubernetes-Ressourcennutzung: Horizontal Pod Autoscaler und Metrics Server im Fokus

Ccentron Redaktion · März 2024 ·4 Min. Lesezeit ·Container & Cloud, Tutorial

Eine der zentralen Herausforderungen beim Betrieb von Anwendungen in Kubernetes-Clustern besteht darin, die Ressourcennutzung effizient zu verwalten und die Skalierbarkeit zu gewährleisten. Hier kommen der Horizontal Pod Autoscaler (HPA) und der Metrics Server ins Spiel. In diesem Beitrag zeigen wir Ihnen, wie Sie diese beiden Komponenten nutzen, um Ihre Anwendungen automatisch und dynamisch zu skalieren, basierend auf der aktuellen Auslastung.

Schritt 1: Einrichtung des Metrics Servers mit Helm

Der Metrics Server ist eine wesentliche Komponente für das Monitoring von Ressourcen in Kubernetes-Clustern. Wir beginnen damit, den Metrics Server mithilfe von Helm einzurichten. Dazu fügen wir das entsprechende Helm-Repository hinzu, aktualisieren die verfügbaren Pakete und installieren den Metrics Server in unserem Cluster. Dies ermöglicht es uns, Ressourcen wie CPU und Speicher effektiv zu überwachen und zu analysieren.

# Helm-Repository für Metrics Server hinzufügen

helm repo add metrics-server https://kubernetes-sigs.github.io/metrics-server

# Aktualisieren der verfügbaren Pakete

helm repo update metrics-server

# Metrics Server installieren

helm install metrics-server metrics-server/metrics-server --namespace metrics-server

K8

Passende Infrastruktur bei centron

Vom Container zum Cluster: Managed Kubernetes mit cStack gibt es ab 29,99 € im Monat – Control Plane, AutoScaler und Traffic inklusive. Managed Kubernetes ansehen →

Schritt 2: Konfiguration des Horizontal Pod Autoscalers (HPA)

Der HPA ist ein Kubernetes-Feature, das es ermöglicht, die Anzahl der Pods einer Anwendung basierend auf verschiedenen Metriken automatisch anzupassen. Wir zeigen Ihnen, wie Sie einen HPA konfigurieren, um Ihre Anwendungen basierend auf CPU- oder Speicherauslastung zu skalieren. Dabei gehen wir sowohl auf die direkte Anwendung eines YAML-Manifests als auch auf die Verwendung des kubectl-Befehls ein.

# Beispiel YAML-Manifest für einen Horizontal Pod Autoscaler (HPA)

apiVersion: autoscaling/v2beta2

kind: HorizontalPodAutoscaler

metadata:

name: myapp-hpa

spec:

scaleTargetRef:

apiVersion: apps/v1

kind: Deployment

name: myapp-deployment

minReplicas: 1

maxReplicas: 10

metrics:

- type: Resource

resource:

name: cpu

target:

type: Utilization

averageUtilization: 50

Schritt 3: Automatische Skalierung von Anwendungen mit dem Metrics Server

In diesem Schritt demonstrieren wir die praktische Anwendung des HPAs und des Metrics Servers anhand von zwei Szenarien: konstante und variable Last. Im ersten Szenario verwenden wir eine CPU-intensive Anwendung, während im zweiten Szenario externe Last durch schnelle HTTP-Anfragen simuliert wird. Sie erfahren, wie Sie die HPA für beide Szenarien konfigurieren und beobachten, wie sie automatisch auf die Last reagiert und die Anzahl der Pods entsprechend anpasst.

# Beispiel YAML-Manifest für eine Anwendung mit konstanter Last und HPA

apiVersion: apps/v1

kind: Deployment

metadata:

name: constant-load-app

spec:

replicas: 1

selector:

matchLabels:

app: constant-load

template:

metadata:

labels:

app: constant-load

spec:

containers:

- name: constant-load

image: busybox

resources:

limits:

cpu: 200m

command: ["sh", "-c"]

args: ["while true; do echo 'Constant Load'; sleep 1; done"]

Fazit

Die effiziente Skalierung von Kubernetes-Anwendungen ist ein wesentlicher Bestandteil des Betriebs von Container-basierten Workloads. Durch die Kombination des Horizontal Pod Autoscalers mit dem Metrics Server können Sie die Leistung Ihrer Anwendungen optimieren, Ressourcen effizient nutzen und gleichzeitig die Kosten für Ihre Kubernetes-Infrastruktur senken. Mit diesen Tools sind Sie bestens gerüstet, um Ihren Kubernetes-Cluster skalierbar und stabil zu betreiben. Optimierung der Kubernetes-Ressourcennutzung: Horizontal Pod Autoscaler und Metrics Server im Fokus

Jetzt 200 € Guthaben sichern

Testen Sie Ihr Setup auf ccloud³

Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.

centron Redaktion Technische Redaktion

Das Redaktionsteam von centron schreibt Anleitungen aus dem Betriebsalltag: getestet auf unserer eigenen Plattform, betrieben im Rechenzentrum in Hallstadt bei Bamberg.

Kategorie Container & Cloud
Teilen
Noch offene Fragen?

Unser Team hilft Ihnen bei Ihrem konkreten Setup weiter – von Menschen, die die Plattform selbst betreiben.

War dieses Tutorial hilfreich?

Ihre Antwort wird anonym gespeichert und hilft uns, die Tutorials zu verbessern.

Kommentare

Noch keine Kommentare – stellen Sie die erste Frage zu diesem Tutorial.

Zum Kommentieren anmelden

Kommentare stehen centron-Kunden offen. Melden Sie sich in Ihrem Konto an, um eine Frage zu diesem Tutorial zu stellen.

Weiterlesen

Das könnte Sie auch interessieren

Jetzt kostenlos anfangen

Melden Sie sich an und erhalten Sie in den ersten 60 Tagen ein Guthaben von 200 € bei centron.

Dieses Werbeangebot gilt nur für neue Konten. Angebot ausschließlich für Gewerbetreibende.

Jetzt loslegen Sales kontaktieren