Environnement de travail : VMware Workstation sur poste Windows¶
Cette page décrit l'environnement utilisé pour les labs et mini-projets : un poste Windows, VMware Workstation et 3 machines virtuelles Ubuntu Server exécutant k3s.
1. Topologie¶
| Machine | Rôle | Ressources conseillées |
|---|---|---|
| Poste Windows (hôte) | kubectl, navigateur, curl.exe, Git |
16 Go de RAM recommandés pour l'hôte |
| VM 1 (Ubuntu Server) | Serveur k3s (control plane) | 2 vCPU, 2 Go de RAM |
| VM 2 (Ubuntu Server) | Agent k3s | 2 vCPU, 2 Go de RAM |
| VM 3 (Ubuntu Server) | Agent k3s | 2 vCPU, 2 Go de RAM |
2. Réseau¶
- Placez les 3 VMs sur le même réseau VMware : NAT (VMnet8) pour un accès Internet et un accès depuis Windows, ou bridged pour utiliser le réseau local.
- Attribuez des IP statiques aux VMs (configuration
netplansous Ubuntu). Si les IP changent, les agents ne retrouvent plus le serveur et vos entréeshostsdeviennent fausses. - Si le pare-feu
ufwest actif sur les VMs, désactivez-le pour le TP ou ouvrez les ports nécessaires à k3s.
3. Accéder aux applications depuis Windows¶
- Ouvrez le Bloc-notes en administrateur puis le fichier
C:\Windows\System32\drivers\etc\hosts. - Ajoutez une ligne associant l'IP d'un nœud k3s aux deux noms d'hôte :
<IP_NOEUD> web.k3s.local api.k3s.local - Testez dans PowerShell avec
curl.exe(et noncurl, qui est un alias deInvoke-WebRequest) :curl.exe http://api.k3s.local - Alternative sans modifier
hosts:curl.exe -H "Host: api.k3s.local" http://<IP_NOEUD>.
Boucle de requêtes pour l'étape 5, dans PowerShell :
while ($true) { curl.exe -s http://api.k3s.local; Start-Sleep -Milliseconds 500 }
4. Utiliser kubectl depuis Windows (facultatif)¶
- Installez
kubectlsur Windows. - Copiez le fichier
/etc/rancher/k3s/k3s.yamldu serveur vers votre poste (par exemple avecscp). - Remplacez
127.0.0.1par l'IP de la VM serveur dans ce fichier. - Définissez la variable
KUBECONFIGvers ce fichier. Sinon, travaillez directement en SSH sur la VM serveur.
5. Test de validation avant de commencer¶
kubectl get nodesaffiche 3 nœuds en étatReady.kubectl get pods -Amontre les Pods système (dont Traefik) enRunning.kubectl run test --image=nginx:alpineaboutit (les VMs ont accès à Internet), puis supprimez ce Pod.- Depuis Windows,
curl.exe -I http://<IP_NOEUD>reçoit une réponse de Traefik (même une erreur 404 prouve que le chemin réseau fonctionne).