Réservation de ressources pour les démons de Kubelet et de système d'exploitation sur les noeuds Oracle Cloud Infrastructure Kubernetes Engine

Introduction

Lors de l'exécution de charges de travail Kubernetes sur Oracle Cloud Infrastructure Kubernetes Engine (OKE), il est essentiel de s'assurer que les noeuds de processus actif disposent de ressources réservées pour les composants de contrôle Kubernetes et les démons de système d'exploitation. Une réservation appropriée évite les conflits de ressources, réduit la pression de la mémoire et améliore la stabilité du cluster. Cela est particulièrement important dans les environnements colocatifs, les charges de travail à haute densité ou lors du dépannage des problèmes de pression des noeuds. Dans ce tutoriel, vous apprendrez à configurer ces réservations à l'aide d'un script cloud-init personnalisé appliqué lors de la création du pool de noeuds. En tirant parti de cloud-init, vous pouvez standardiser ces configurations sur les noeuds de cluster avec un effort minimal.

Configuration des ressources Kubelet

Kubelet, l'agent de noeud principal dans Kubernetes, prend en charge la gestion des ressources via des indicateurs ou des fichiers de configuration. Vous pouvez définir les éléments suivants :

Objectifs

Prérequis

Etape 1 : écriture du script cloud-init

Le script cloud-init suivant crée un fichier de configuration Kubelet qui réserve la CPU, la mémoire et le stockage éphémère, et définit des seuils d'expulsion.

#!/bin/bash
curl --fail -H "Authorization: Bearer Oracle" -L0 http://169.254.169.254/opc/v2/instance/metadata/oke_init_script | base64 --decode >/var/run/oke-init.sh
bash /var/run/oke-init.sh --kubelet-extra-args "--kube-reserved=cpu=500m,memory=1Gi --system-reserved=cpu=100m,memory=100Mi"

Etape 2 : création d'un pool de noeuds avec le script cloud-init

  1. Accédez à la console OCI et à votre cluster OKE.

  2. Sélectionnez Pools de noeuds, puis cliquez sur Ajouter un pool de noeuds pour en créer un ou cliquez sur Modifier pour modifier un pool de noeuds existant.

  3. Définissez votre pool de noeuds avec vos préférences de nom, de compartiment, de positionnement de noeud, de forme et de mise en réseau.

  4. Sous Afficher les options avancées, cliquez sur Coller le script Cloud-init et collez votre script personnalisé.

  5. Renseignez les autres paramètres du pool de noeuds et cliquez sur Ajouter.

Ajouter un pool de noeuds

Une fois les noeuds provisionnés, le script s'exécute à l'initialisation et applique automatiquement vos contraintes de ressources.

Remarque : si vous automatisez la configuration avec Terraform, vous pouvez transmettre le script dans le bloc node_config_details.cloud_init_script lors de la création de la ressource de pool de noeuds.

Accusés de réception

Ressources de formation supplémentaires

Explorez d'autres ateliers sur le site docs.oracle.com/learn ou accédez à d'autres contenus d'apprentissage gratuits sur le canal Oracle Learning YouTube. En outre, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.

Pour obtenir de la documentation sur le produit, consultez Oracle Help Center.