Académique Documents
Professionnel Documents
Culture Documents
HEBABAZE
Les objectifs de TP :
• Installation et gestion de kubernetes
• Application des configurations à partir des fichier yaml
• Création des pods, réplication et déploiement sous kubernetes
• Implémentation et la gestion d'un registre docker localement
• Implémentation de monitoring system influxdB et chronograf via kubernetes
CLoudHPC | ENSIAS
Print scr 2 : Le cluster en processus de création
d.Téléchargement de kubectl :
chmod +x ./kubectl
b.Installation de Chocominer :
• Télécharger Chocominer
sudo git clone https://git.nemunai.re/chocominer.git
Print scr 9 : Nombre des pépites après l'augmentation le nombre des worker
b.Kubectl Services :
• Pour le moment nous n'avons qu'un service "CLUSTER-IP" qu'est l'adresse IP de service
accessible en interne par les autres node de cluster
• Pour afficher la liste des conteneurs actif on tape la commande suivante :
# kubectl get pods
Print scr 13 : aucun pod dans le name space par défaut
c.Lancer un pod :
• Pour lancer une image en pod en utilise la commande suivante :
sudo kubectl run pingpong --image alpine ping 1.1.1.1
• Vérification de tâche par la commande suivante qui permet d'afficher la liste des pods :
a. Pour afficher un pod en particulier : on ajoute l'option -f et le nom complet de pod pour
suivre les logs en direct
e.Mise à l'échelle :
Pour lancer 8 pings en parallèle on modifier la tâche de déploiement comme ce suit :
Kubectl scale deploy/pingpong –replicas 8
f.Exposer le conteneur :
Pour tester l'exposition on a déployé l'image youp0m avec la commande suivante :
kubectl create deployment youp0m --image=nemunaire/youp0m
Alors un nouveau service de type Cluster IP est lancée, on vérifie la tache par la commande
suivantes :
h. Verification :
REGISTRY=127.0.0.1/:$NODEPORT
Print scr 29 : afficher les Pods créer – l'image est bien déployée
Print scr 30 : afficher les Pods crées - l'image est bien déployé à partir de le fichier yaml
b. Notre Application:
Créer trois services hasher , rng et worker avec les commandes suivantes:
TAG=v0.1
kubectl create deployment hasher –image=nemunaire/hasher:$TAG
kubectl create deployment rng –image=nemunaire/rng:$TAG
Kubectl create deployment worker –image=nemunaire/worker:$TAG
e. Accès Web :
A partir de l'interface web on peut accéder au chronograf interface on tapant l'adresse IP de worker
chargé d'exécuter le pod chronograf dans notre exemple l'adresse ip de kind-worker2 est 172.18.0.3
avec le port 30001.
f. Répliquer Les Pods et augmenter la charger :
kubectl scale deploy/worker --replicas=4
h. Daemonset rng :
On export la configuration existante pour réaliser un Daemonset de pod rng
kubectl get deploy/rng -o yaml --export >rng.yml
i. Kubernetes Dashboard
On peut vérifier aussi la création des Pods, réplicas et daemon ..etc à partir de l'interface
Web
k. Trop de pods :
On aperçoit l'exécution de plusieurs Pods sachant que j'ai créé 4 réplicas de worker
Print scr 43 : les pépites Chronograf après d'augmenter le nombre des réplicas
Conclusion :
C'était un TP très riche au niveau d'informations et de nouveautés c'était ma
première occasion d'affronter le fameux kubernetes et connaitre plusieurs notions
comme pod, control plan ,worker et cluster ..etc.
les questions que je pose actuellement sont :
1. Est-il possible de migrer tout le cluster avec ses pods et services et toutes sa
configuration vers une autre machine .
2. Comment le cluster manager distribué les ressources matérielles au nodes,
est-il possible d'élaboré une politique de quota pour chaque node et pod
3. Comment mettre en place le cluster en utilisant des machines réelles
comme workers.