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