En aquest tema, aprendrem sobre el servidor de mètriques en Kubernetes, una eina essencial per a la monitorització i l'escalabilitat automàtica dels recursos dins d'un clúster. El servidor de mètriques proporciona mètriques d'ús de recursos (com CPU i memòria) per als pods i nodes del clúster.

Objectius d'Aprenentatge

Al final d'aquest tema, hauràs après:

  • Què és el servidor de mètriques.
  • Com instal·lar i configurar el servidor de mètriques.
  • Com utilitzar les mètriques proporcionades pel servidor de mètriques per a l'escalabilitat automàtica.

Què és el Servidor de Mètriques?

El servidor de mètriques és un component de Kubernetes que recopila mètriques d'ús de recursos dels nodes i pods del clúster. Aquestes mètriques són utilitzades per altres components de Kubernetes, com l'Autoscalador Horitzontal de Pods (HPA), per prendre decisions informades sobre l'escalabilitat dels recursos.

Característiques Clau:

  • Recopilació de Mètriques: Recopila mètriques d'ús de CPU i memòria.
  • Integració amb HPA: Proporciona dades necessàries per a l'escalabilitat automàtica.
  • Lleuger i Eficient: Dissenyat per ser lleuger i tenir un impacte mínim en el rendiment del clúster.

Instal·lació del Servidor de Mètriques

Pas 1: Descarregar el Manifests del Servidor de Mètriques

Descarrega els manifests YAML del servidor de mètriques des del repositori oficial de Kubernetes:

kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml

Pas 2: Verificar la Instal·lació

Un cop aplicats els manifests, verifica que el servidor de mètriques s'està executant correctament:

kubectl get deployment metrics-server -n kube-system

Hauries de veure una sortida similar a aquesta:

NAME             READY   UP-TO-DATE   AVAILABLE   AGE
metrics-server   1/1     1            1           1m

Pas 3: Comprovar les Mètriques

Després d'instal·lar el servidor de mètriques, pots comprovar les mètriques d'ús de recursos dels nodes i pods:

kubectl top nodes
kubectl top pods

Utilització del Servidor de Mètriques per a l'Autoscalabilitat

El servidor de mètriques és essencial per a l'Autoscalador Horitzontal de Pods (HPA). A continuació, es mostra com configurar un HPA utilitzant les mètriques proporcionades pel servidor de mètriques.

Exemple de Configuració d'un HPA

Suposem que tenim un deployment anomenat nginx-deployment. Crearem un HPA per escalar automàticament els pods basant-se en l'ús de CPU.

apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: nginx-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: nginx-deployment
  minReplicas: 1
  maxReplicas: 10
  targetCPUUtilizationPercentage: 50

Aplica aquest manifest:

kubectl apply -f nginx-hpa.yaml

Verificar l'HPA

Pots verificar l'estat de l'HPA amb la següent comanda:

kubectl get hpa

Hauries de veure una sortida similar a aquesta:

NAME         REFERENCE                TARGETS   MINPODS   MAXPODS   REPLICAS   AGE
nginx-hpa    Deployment/nginx-deployment   10%/50%    1         10        1          1m

Errors Comuns i Consells

Error: "No metrics available for pod"

Aquest error pot aparèixer si el servidor de mètriques no està configurat correctament o si hi ha problemes de connectivitat. Assegura't que el servidor de mètriques s'està executant i que els pods tenen permisos per accedir a les mètriques.

Consell: Monitorització Regular

És important monitoritzar regularment l'estat del servidor de mètriques i les mètriques proporcionades per assegurar-se que el clúster està funcionant de manera òptima.

Resum

En aquest tema, hem après què és el servidor de mètriques, com instal·lar-lo i com utilitzar-lo per a l'escalabilitat automàtica dels recursos en un clúster de Kubernetes. El servidor de mètriques és una eina essencial per a la monitorització i l'optimització del rendiment del clúster.

En el següent tema, explorarem la seguretat en Kubernetes, començant amb el Control d'Accés Basat en Rols (RBAC).

Curs de Kubernetes

Mòdul 1: Introducció a Kubernetes

Mòdul 2: Components Bàsics de Kubernetes

Mòdul 3: Gestió de Configuració i Secrets

Mòdul 4: Xarxes en Kubernetes

Mòdul 5: Emmagatzematge en Kubernetes

Mòdul 6: Conceptes Avançats de Kubernetes

Mòdul 7: Monitorització i Registre

Mòdul 8: Seguretat en Kubernetes

Mòdul 9: Escalabilitat i Rendiment

Mòdul 10: Ecosistema i Eines de Kubernetes

Mòdul 11: Estudis de Cas i Aplicacions del Món Real

Mòdul 12: Preparació per a la Certificació de Kubernetes

© Copyright 2024. Tots els drets reservats