Installation de microk8s
MicroK8s installera un Kubernetes minimal et léger que vous pouvez exécuter et utiliser sur pratiquement n'importe quelle machine.
sudo snap install microk8s --classic --channel=1.27
Rejoindre un groupe
MicroK8s crée un groupe pour permettre une utilisation transparente des commandes qui nécessitent des privilèges d'administrateur. Pour ajouter votre utilisateur actuel au groupe et accéder au répertoire de mise en cache .kube, exécutez les deux commandes suivantes :
sudo usermod -a -G microk8s $USER
sudo chown -f -R $USER ~/.kube
Vous devrez également ressaisir la session pour que la mise à jour du groupe ait lieu :
su - $USER
Verifier l'état
MicroK8s a une commande intégrée pour afficher son état. Lors de l'installation, vous pouvez utiliser l'indicateur --wait-ready pour attendre que les services Kubernetes s'initialisent :
microk8s status --wait-ready
Acceder à kubernetes
MicroK8s propose sa propre version de kubectl pour accéder à Kubernetes. Utilisez-le pour exécuter des commandes pour surveiller et contrôler votre Kubernetes. Par exemple, pour afficher votre nœud :
microk8s kubectl get nodes
…ou pour voir les services en cours :
microk8s kubectl get services
MicroK8s utilise une commande kubectl avec espace de noms pour éviter les conflits avec les installations existantes de kubectl. Si vous n'avez pas d'installation existante, il est plus simple d'ajouter un alias ( ~/.bash_aliases) comme ceci
alias k='microk8s kubectl'
Installation des plugins
Les plugins installés dans notre serveur kubernetes. Créer le fichier de script microk8s-plugins.sh
#!/bin/sh
HOST_PUBLIC_IP="95.216.45.143"
microk8s disable ha-cluster --force
microk8s enable hostpath-storage
microk8s enable cert-manager
microk8s enable rbac
microk8s enable dashbord
microk8s enable metallb:"${HOST_PUBLIC_IP}-${HOST_PUBLIC_IP}"
Notez que le disable ha-cluster n'est pas obligatoire et qu'il limitera votre cluster à une seule machine. Cependant, cela libère de la mémoire sur l'instance et si vous ne prévoyez d'avoir qu'une seule instance.
Plusgins installés
- stockage hostpath : nous permet de fournir des volumes persistants aux pods écrits sur les disques réels du système lui-même.
- cert manager : prendra en charge l'obtention et la gestion des certificats avec Letsencrypt
- rbac : prend en charge le contrôle d'accès basé sur des roles de la même manière que la plupart des systèmes de production.
- dashbord : Mets en place un interface web d'administration du system kubernetes
- metallb : un équilibreur de charge de base sur l'hôte qui nous permet d'exposer les services du cluster Kubernetes à l'adresse IP publique. Ceci est installé avec une seule adresse IP publique : 95.216.45.143.