Du pod aux déploiements
1. Pod Pod Kubernetes:pod
Nous avons vu qu’il est possible de créer un pod utilisant un container tomcat-eni-todo-h2-env:dev. Nous utilisons tout d’abord cette version, nous ajouterons l’externalisation de la base de données plus tard.
Nous lançons donc un pod eni-todo-h2 avec le container utilisant cette image. Il faut s’assurer que le container a bien démarré et fonctionne correctement.
$ kubectl run eni-todo-h2 \
--image=registry.diehard.net:5000/eni-todo-tomcat-h2:dev \
--env="
DB_DTB_JDBC_URL="jdbc:mysql://mariadb.diehard.net:3306/db_todo" \
--env="DB_DTB_USERNAME=springuser" ...
pod/eni-todo-h2 created
Il est également possible de lancer le container avec un fichier YAML et la commande suivante :
$ kubectl apply -f eni-todo-h2.000.pod.yaml
pod/eni-todo-h2 created
Les fichiers YAML utilisés dans ce chapitre sont dans le dossier src/main/kubernetes du dépôt git de l’application eni-todo (https://github.com/halnx-todo/k8s-manifests).
a. Sondes et contrôle de santé
Kubernetes offre un système de sonde permettant de vérifier la santé (healthcheck) d’un pod. Il y a trois types de sondes : Kubernetes:healthcheck Pod:healthcheck
-
livenessprobe Kubernetes:livenessprobe Pod:livenessprobe
-
readinessprobe Kubernetes:readinessprobe Pod:readinessprobe
-
startupprobe Kubernetes:startupprobe Pod:startupprobe
Toutes les trois...