Mise à l’échelle automatique d’un cluster pour répondre aux demandes d’applications sur Azure Kubernetes Service : rapide test avec Jenkins-X …

Karim
5 min readMar 12, 2019

--

Je pars ici d’une fonctionnalité actuellement en prévisualisation qui permet d’activer et gérer l’autochargeur de cluster dans un cluster AKS :

L’autochargeur de cluster surveille les pods qui ne peuvent pas être planifiés sur les nœuds en raison de contraintes de ressources. Le cluster augmente alors automatiquement le nombre de nœuds.

L’autochargeur horizontal de pods utilise le serveur Metrics Server dans un cluster Kubernetes pour surveiller la demande en ressources des pods. Si un service a besoin de plus de ressources, le nombre de noeuds est automatiquement augmenté pour répondre à la demande.

J’utilise pour cela Azure CLI qu’il faut donc installer :

et j’installe la fonctionnalité via l’extension en prévisualisation :

Les versions de Kubernetes sont disponibles en fonction des différentes régions Azure :

Je lance la création d’un nouveau cluster Kubernetes via AKS et en utilisant des noeuds avec VMSS :

permettant une mise à l’échelle automatique de ces noeuds (en machines virtuelles) à des fins de haute disponibilité :

et je peux mettre à jour ce cluster managé toujours via Azure CLI :

Le cluster AKS est disponible :

Je peux procéder à l’initialisation de Jenkins-X dans ce cluster. Jenkins X est une plate-forme d’intégration et déploiement continus, native dans Kubernetes pour le développement d’applications dites Cloud Native et qui a été introduite en tant que Jenkins Enhancement Proposal …

Je récupère les binaire de Jenkins-X sur github :

ou via cette commande dans Linux :

curl -L https://github.com/jenkins-x/jx/releases/download/v1.3.971/jx-linux-amd64.tar.gz | tar xzv 
sudo mv jx /usr/local/bin

Installation et initialisation de Jenkins-X dans le cluster AKS :

qui devient disponible avec une série de pods et de services :

dont le tableau de bord avec Blue Ocean avec deux démos :

ou Nexus :

et je peux reprendre la maintenant célèbre démo avec Spring Boot dans Jenkins-X en lancant cette commande :

qui permet d’initier ce pipeline dans Jenkins :

Comme d’habitude le monitoring du cluster est assuré ici via Weave Cloud :

La destruction du cluster AKS est assurée par cette simple commande :

Cet article a donc montré comment mettre à l’échelle automatiquement un nombre de nœuds dans AKS. On peut également utiliser l’autochargeur de pods horizontal pour ajuster automatiquement le nombre de pods qui exécute son ou ses applications ...

Une fonctionnalité à suivre !

--

--

Karim
Karim

Written by Karim

Above the clouds, the sky is always blue ...

Responses (2)