Aller au contenu principal

Lab 12.1 - Configuration de Resource Management

Objectifs du Lab

À la fin de ce lab, vous serez capable de:

  • Comprendre Requests et Limits.
  • Configurer les ressources CPU et mémoire.
  • Comprendre les classes QoS (Quality of Service).
  • Configurer Resource Quotas et Limit Ranges.

Durée Estimée

45-60 minutes

Prérequis

  • kubectl installé et configuré.
  • Cluster Kubernetes local fonctionnel.

Partie 1: Configuration de Requests et Limits

Étape 1.1: Créer un Pod avec Resources

Créez pod-with-resources.yaml:

apiVersion: v1
kind: Pod
metadata:
name: resource-pod
spec:
containers:
- name: app
image: nginx:1.20
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 256Mi

Appliquez:

kubectl apply -f pod-with-resources.yaml

Vérifiez:

kubectl describe pod resource-pod

Partie 2: Classes QoS

Étape 2.1: Comprendre les Classes

Les Pods sont classés en:

  • Guaranteed: Requests = Limits pour CPU et mémoire.
  • Burstable: Au moins une ressource avec Request < Limit.
  • BestEffort: Aucune Request ni Limit.

Testez différents scénarios.


Partie 3: Resource Quotas

Étape 3.1: Créer un Resource Quota

Créez resource-quota.yaml:

apiVersion: v1
kind: ResourceQuota
metadata:
name: compute-quota
namespace: default
spec:
hard:
requests.cpu: "2"
requests.memory: 4Gi
limits.cpu: "4"
limits.memory: 8Gi
pods: "10"

Appliquez:

kubectl apply -f resource-quota.yaml

Partie 4: Limit Ranges

Étape 4.1: Créer un Limit Range

Créez limit-range.yaml:

apiVersion: v1
kind: LimitRange
metadata:
name: mem-limit-range
namespace: default
spec:
limits:
- default:
memory: 512Mi
cpu: 500m
defaultRequest:
memory: 256Mi
cpu: 100m
type: Container

Résumé du Lab

Dans ce lab, vous avez configuré la gestion des ressources avec Requests, Limits, Resource Quotas et Limit Ranges.


Prochaines Étapes

Le prochain lab vous montrera comment configurer l'autoscaling horizontal et vertical.

Lab 12.2: Autoscaling Horizontal et Vertical


Lab créé le: Décembre 2024