<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Windows 10 on Zwindler's Reflection</title><link>https://blog.zwindler.fr/tags/windows-10/</link><description>Recent content in Windows 10 on Zwindler's Reflection</description><generator>Hugo -- gohugo.io</generator><language>fr</language><copyright>Licensed under CC BY-SA 4.0</copyright><lastBuildDate>Mon, 01 Jun 2020 06:25:00 +0000</lastBuildDate><atom:link href="https://blog.zwindler.fr/tags/windows-10/index.xml" rel="self" type="application/rss+xml"/><item><title>Installer Microk8s dans WSL 2</title><link>https://blog.zwindler.fr/2020/06/01/installer-microk8s-dans-wsl-2/</link><pubDate>Mon, 01 Jun 2020 06:25:00 +0000</pubDate><guid>https://blog.zwindler.fr/2020/06/01/installer-microk8s-dans-wsl-2/</guid><description>&lt;img src="https://blog.zwindler.fr/2020/05/external-content.duckduckgo.com_.webp" alt="Featured image of post Installer Microk8s dans WSL 2" /&gt;&lt;h2 id="microk8s-sur-windows-10"&gt;Microk8s sur Windows 10
&lt;/h2&gt;&lt;p&gt;Dans un article que je vais bientôt sortir sur OPA et Gatekeeper, j’ai épuisé mon crédit mensuel et mon cluster AKS s’est éteint&amp;hellip; &amp;ldquo;Qu’à cela ne tienne&amp;rdquo; me dis-je, &amp;ldquo;je vais installer Kubernetes dans mon Windows&amp;rdquo; ! Mais plutôt que de partir sur Microk8s (le titre de l’article, vous l’aurez noté), je suis initialement parti sur Minikube&amp;hellip;&lt;/p&gt;
&lt;p&gt;Ce n’est pas la première fois que je &lt;del&gt;fais du&lt;/del&gt; me prend la tête avec Kubernetes dans un Windows 10, notamment avec Minikube.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2018/09/12/installer-minikube-sur-windows-10-et-hyper-v-part-1/" &gt;Installer Minikube sur Windows 10 et Hyper-V - part 1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pour rappel, Minikube utilise une VM (bah oui, Docker partage le kernel et j’ai pas envie de faire des containers avec celui de Windows). Par défaut sous Windows, cette VM c’est via Virtual Box.&lt;/p&gt;
&lt;p&gt;Et si vous utilisez Hyper-V à côté (au hasard, Docker pour windows) et ben vous aurez un conflit car Windows/Hyper-V interdit les autres logiciels de virtualisation quand il est activé. Me demandez pas pourquoi, c’est comme ça.&lt;/p&gt;
&lt;p&gt;Bref, c’est relou.&lt;/p&gt;
&lt;h2 id="en-fait-les-vms-tout-court-cest-un-peu-relou"&gt;En fait, les VMs tout court, c’est un peu relou
&lt;/h2&gt;&lt;p&gt;Des fois, je me demande si je ne me fais pas du mal pour rien&amp;hellip;&lt;/p&gt;
&lt;p&gt;Mon PC pro est sous Ubuntu, mais à la maison, les habitudes ont la vie dure (je joue un peu sous Windows du coup c’est mon OS)&amp;hellip;&lt;/p&gt;
&lt;p&gt;Heureusement pour moi, WSL (Windows Subsystem for Linux) a pas mal évolué. Quand je suis sous Windows, j’utilise beaucoup cette fonctionnalité, car, même si c’est effectivement une VM (moins lourde qu’Hyper-V), Microsoft fait beaucoup d’efforts pour que l’expérience utilisateur se rapproche le plus possible d’une machine classique.&lt;/p&gt;
&lt;p&gt;Du coup, plutôt que me reprendre la tête avec Hyper-V et VritualBox, je me suis demandé s’il n’était pas possible maintenant de faire tourner Kuberbetes dans WSL2.&lt;/p&gt;
&lt;p&gt;Et je ne suis pas le seul à avoir eu l’idée comme on peut le voir &lt;a class="link" href="https://github.com/kubernetes/minikube/issues/5392" target="_blank" rel="noopener"
&gt;dans cette issue Github&lt;/a&gt;!&lt;/p&gt;
&lt;h2 id="les-solutions-disponibles"&gt;Les solutions disponibles
&lt;/h2&gt;&lt;p&gt;Pour l’instant, dans Ubuntu, je connais 4 façons de mettre un pseudo Kubernetes sur un PC/laptop de manière &amp;ldquo;rapide&amp;rdquo; :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;minikube&lt;/li&gt;
&lt;li&gt;microk8s (via les snaps)&lt;/li&gt;
&lt;li&gt;k3s&lt;/li&gt;
&lt;li&gt;kind (que j’ai pas encore testé)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La plus connue (pas forcément le plus simple), c’est minikube. Si vous me suivez sur Twitter, vous aurez vu que pour l’instant j’ai pas encore réussi à le faire marcher, malgré 2 méthodes différentes (driver=none et driver=docker).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2020/05/minikube_twitter.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;(Lien mort, je ne suis plus sur Twitter)&lt;/p&gt;
&lt;p&gt;Pourtant, en théorie, c’est possible, car plusieurs témoignages dans l’issue Github et même des articles sur &lt;a class="link" href="https://ubuntu.com/blog/kubernetes-on-windows-with-microk8s-and-wsl-2" target="_blank" rel="noopener"
&gt;ubuntu.com&lt;/a&gt; et &lt;a class="link" href="https://kubernetes.io/blog/2020/05/21/wsl-docker-kubernetes-on-the-windows-desktop/" target="_blank" rel="noopener"
&gt;kubernetes.io&lt;/a&gt; en parlent.
J’y reviendrais donc quand je serais plus fâché ;).
Mon second plan était donc microk8s, qui est un déploiement de kube proposé par Canonical via les snaps d’Ubuntu.
C’est parti pour du fun !&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2020/05/rebecca.gif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="prérequis"&gt;Prérequis
&lt;/h2&gt;&lt;h3 id="wsl-2"&gt;WSL 2
&lt;/h3&gt;&lt;p&gt;Ici on part du principe que vous venez d’installer un Ubuntu sur votre Windows 10 avec WSL2 et que tout est correctement à jour.&lt;/p&gt;
&lt;p&gt;Bon déjà ça commençait mal pour moi&amp;hellip; Je pensais être sous WSL2 quand j’ai commencé l’article, mais en fait non&amp;hellip;&lt;/p&gt;
&lt;p&gt;Au moment de la rédaction de l’article, et comme l’explique cet &lt;a class="link" href="https://code.visualstudio.com/blogs/2020/03/02/docker-in-wsl2" target="_blank" rel="noopener"
&gt;article Docker in WSL2&lt;/a&gt;, WSL2 est disponible avec Windows 10 2004 (20h1). Avant, il n’est pour l’instant accessible que pour les Windows Insiders qui utilisent les versions previews.&lt;/p&gt;
&lt;p&gt;Heureusement vous avez de la chance, depuis hier elle commence à être déployée sur tous les Windows 10 et vous allez pouvoir sauter l’étape suivante.&lt;/p&gt;
&lt;h3 id="20h1-ou-devenir-insider--oh-la-chance"&gt;20H1 ou devenir Insider ? (oh la chance)
&lt;/h3&gt;&lt;p&gt;Si vous n’êtes toujours pas en 20H1, vous pouvez toujours faire comme moi et devenir Insider (bêta tester c’était moins sexy comme terme).&lt;/p&gt;
&lt;p&gt;Équipez-vous d’un peu de temps libre et armez-vous de patience, vous en aurez besoin&amp;hellip; Il faudra aussi accepter d’envoyer de la télémétrie à Microsoft (n’est pas Insider qui veut&amp;hellip;).&lt;/p&gt;
&lt;p&gt;On suit donc &lt;a class="link" href="https://insider.windows.com/insidersigninboth/" target="_blank" rel="noopener"
&gt;cet article pour devenir &lt;em&gt;Insider&lt;/em&gt;&lt;/a&gt;, puis celui-ci pour &lt;a class="link" href="https://docs.microsoft.com/fr-fr/windows/wsl/install-win10" target="_blank" rel="noopener"
&gt;upgrader de WSL à WSL2&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;La modification est assez pénible, demande de redémarrer plusieurs fois et d’aller télécharger soi-même le dernier kernel WSL2 &lt;a class="link" href="https://docs.microsoft.com/fr-fr/windows/wsl/wsl2-kernel" target="_blank" rel="noopener"
&gt;ici&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="migration-wsl-1--wsl-2"&gt;Migration WSL 1 =&amp;gt; WSL 2
&lt;/h3&gt;&lt;p&gt;La &amp;ldquo;bonne nouvelle&amp;rdquo; quand même, c’est qu’il est possible de migrer des OS WSL existants vers la nouvelle version. Si vous avez déjà une machine WSL configurée aux petits oignons, vous pourrez éviter de tout réinstaller.&lt;/p&gt;
&lt;p&gt;Dans un Powershell (en tant qu’administrateur), exécutez la commande suivante :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;wsl --list --verbose
NAME STATE VERSION
* Ubuntu Running 1
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Si comme moi vous êtes en version 1, mettez à jour (et ouais, ça va prendre quelques minutes. Genre, euphémisme&amp;hellip;).&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;wsl --set-version Ubuntu 2
La conversion est en cours. Cette opération peut prendre quelques minutes...
Pour plus d’informations sur les différences de clés avec WSL 2, visitez https://aka.ms/wsl2
#TREEEEES LONGTEMPS plus tard sur mon laptop
La conversion est terminée.
wsl --list --verbose
NAME STATE VERSION
* Ubuntu Stopped 2
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Ok, on peut reprendre&amp;hellip;&lt;/p&gt;
&lt;h3 id="docker"&gt;Docker
&lt;/h3&gt;&lt;p&gt;Même une fois WSL2 installé, si vous essayez d’installer Docker (CE) comme si on était pas dans WSL2, vous n’allez pas rigoler&amp;hellip;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo systemctl status docker
Failed to connect to bus: No such file or directory
&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;
&lt;p&gt;C’est un échec&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;(&lt;a class="link" href="https://www.dailymotion.com/video/x7vm1" target="_blank" rel="noopener"
&gt;Pour ceux qui ne l’ont pas, c’est ici que ça se passe&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;On va devoir passer par Docker desktop (ancien Docker for Windows) qui a une option pour installer Docker dans WSL2.&lt;/p&gt;
&lt;p&gt;Allez sur &lt;a class="link" href="https://docs.docker.com/docker-for-windows/wsl/" target="_blank" rel="noopener"
&gt;cette doc de Docker&lt;/a&gt;, qui donne les instructions.&lt;/p&gt;
&lt;p&gt;Une fois Docker Desktop installé (n’oubliez pas de cocher la case qui propose d’utiliser WSL2), on vous demandera de vous délogguer de Windows.&lt;/p&gt;
&lt;p&gt;Au démarrage de la session, normalement Docker for Windows devrait vous informer qu’il a démarré. On peut vérifier que tout est bien configuré :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2020/05/docker_desktop_wsl2_engine.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;On utilise WSL2 comme moteur plutôt qu’hyper-V, fini les conflits avec virtualbox&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Vous pouvez retourner dans votre WSL.&lt;/p&gt;
&lt;p&gt;Note : normalement ça ne devrait pas être nécessaire, mais si vous comme moi pour une obscure raison, n’avez pas les droits de faire du Docker, il faut ajouter à votre utilisateur WSL le groupe qui va bien.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;votreuser@awesomelaptop:~$ sudo usermod -aG docker votreuser
exit
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="vérifier-que-maintenant-docker-fonctionne-correctement"&gt;Vérifier que maintenant Docker fonctionne correctement
&lt;/h3&gt;&lt;p&gt;Relancez WSL2, vous pouvez maintenant utiliser docker.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;votreuser@awesomelaptop:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
votreuser@awesomelaptop:~$ docker container run hello-world
Unable to find image &amp;#39;hello-world:latest&amp;#39; locally
latest: Pulling from library/hello-world
0e03bdcc26d7: Pull complete
Digest: sha256:6a65f928fb91fcfbc963f7aa6d57c8eeb426ad9a20c7ee045538ef34847f44f1
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Maintenant qu’on a un Docker qui marche, on va pouvoir essayer de faire marcher Microk8s. Je préviens, il y a pas mal de bidouille, car WSL ne s’appuie pas sur systemd (contrairement à presque toutes les distribs mainstream aujourd’hui).&lt;/p&gt;
&lt;p&gt;La procédure détaillée est disponible ici, ainsi que les scripts, dans le &lt;a class="link" href="https://forum.snapcraft.io/t/running-snaps-on-wsl2-insiders-only-for-now/13033" target="_blank" rel="noopener"
&gt;post suivant&lt;/a&gt;.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo apt install -y daemonize dbus-user-session fontconfig
&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;
&lt;li&gt;/usr/sbin/start-systemd-namespace&lt;/li&gt;
&lt;li&gt;/usr/sbin/enter-systemd-namespace&lt;/li&gt;
&lt;/ul&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo chmod +x /usr/sbin/enter-systemd-namespace
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Ajoutez les lignes suivantes dans les sudoers :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo vi /etc/sudoers
Defaults env_keep += WSLPATH
Defaults env_keep += WSLENV
Defaults env_keep += WSL_INTEROP
Defaults env_keep += WSL_DISTRO_NAME
Defaults env_keep += PRE_NAMESPACE_PATH
%sudo ALL=(ALL) NOPASSWD: /usr/sbin/enter-systemd-namespace
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Et enfin, lancez la commande suivante pour que le script s’exécute au démarrage de la session :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo sed -i 2a&amp;#34;# Start or enter a PID namespace in WSL2\nsource /usr/sbin/start-systemd-namespace\n&amp;#34; /etc/bash.bashrc
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Lancez un nouveau WSL2 en parallèle pour voir si ça fonctionne toujours (moi la première fois, j’ai loupé une étape et flingué mon Ubuntu&amp;hellip;).&lt;/p&gt;
&lt;p&gt;Si ça marche toujours, on passe à l’étape suivante !&lt;/p&gt;
&lt;h2 id="dns-dans-systemd"&gt;DNS dans systemd
&lt;/h2&gt;&lt;p&gt;A priori, quand on bascule WSL2 vers systemd, on se retrouve avec des petits soucis de DNS. Le plus simple est d’ajouter en dur votre propre DNS ou un DNS qui respecte votre vie privée, du type 9.9.9.9 (&lt;a class="link" href="https://www.quad9.net/" target="_blank" rel="noopener"
&gt;quad9&lt;/a&gt;).&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo vi /etc/systemd/resolved.conf
[...]
[Resolve]
DNS=9.9.9.9
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Et redémarrez resolved&lt;code&gt;. Si tout fonctionne correctement vous devriez pouvoir faire le apt update&lt;/code&gt; sans erreur.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo systemctl restart systemd-resolved
sudo apt update
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="its-alive-"&gt;It’s alive !
&lt;/h2&gt;&lt;p&gt;Et enfin, on tente l’installation de microk8s en lui-même, en croisant tous les doigts à notre disposition.&lt;/p&gt;
&lt;p&gt;L’avantage de Microk8s est que la procédure d’installation est très très simple (vous pouvez la retrouver &lt;a class="link" href="https://microk8s.io/#get-started" target="_blank" rel="noopener"
&gt;ici&lt;/a&gt;)&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo snap install microk8s --classic --channel=1.18/stable
sudo microk8s status --wait-ready
microk8s is running
addons:
[...]
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Dernier point, par défaut vous risquez de ne pas avoir les droits pour faire du microk8s avec votre utilisateur. Pour éviter de faire des sudo` à tout bout de champs, on se les rajoute, comme pour Docker :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo usermod -a -G microk8s votreuser
sudo chown -f -R votreuser ~/.kube
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Délogguez vous puis rouvrez WSL pour prise en compte de la modification de droits.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;microk8s.kubectl get nodes
NAME STATUS ROLES AGE VERSION
awesomelaptop Ready &amp;lt;none&amp;gt; 30m v1.18.2
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Bravo ! Vous faites partie des valeureux qui ont maintenant Microk8s &lt;em&gt;dans&lt;/em&gt; WSL2.&lt;/p&gt;
&lt;p&gt;Sur ce, je vais m’occuper des derniers cheveux qu’il me reste en espérant avoir la même procédure pour minikube dans quelques jours ;)&lt;/p&gt;</description></item><item><title>Installer Minikube sur Windows 10 et Hyper-V – part 1</title><link>https://blog.zwindler.fr/2018/09/12/installer-minikube-sur-windows-10-et-hyper-v-part-1/</link><pubDate>Wed, 12 Sep 2018 11:45:26 +0000</pubDate><guid>https://blog.zwindler.fr/2018/09/12/installer-minikube-sur-windows-10-et-hyper-v-part-1/</guid><description>&lt;img src="https://blog.zwindler.fr/2018/09/minikube.webp" alt="Featured image of post Installer Minikube sur Windows 10 et Hyper-V – part 1" /&gt;&lt;h2 id="minikube-sur-hyper-v-cest-facile-"&gt;Minikube sur Hyper-V, c’est facile ?
&lt;/h2&gt;&lt;p&gt;Un bon moyen de commencer à bidouiller avec &lt;a class="link" href="https://blog.zwindler.fr/recherche/?keyword=kubernetes" &gt;&lt;strong&gt;Kubernetes&lt;/strong&gt;&lt;/a&gt;, c’est d’utiliser &lt;strong&gt;Minikube&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Pour ceux qui ne connaissent pas, il s’agit d’un script qui va récupérer une machine virtuelle préconfigurée avec tous les composants nécessaires à Kubernetes, et l’installer sur votre machine. Ce script est disponible sur Windows, Mac et Linux, et vous trouverez de nombreux tutos pour l’installer via le logiciel de virtualisation &lt;strong&gt;Virtual Box&lt;/strong&gt; (à installer préalablement, en prérequis donc).&lt;/p&gt;
&lt;p&gt;Mais admettons que vous ayez commencés à bidouiller avec Docker avec « Docker for Windows ». Quoi de plus normal de passer sur K8s (le petit nom de Kubernetes, plus court) après avoir joué avec Docker.&lt;/p&gt;
&lt;p&gt;Et paf ! vous n’arrivez pas à installer, à cause d’un obscur message qui vous parle de Virtual Box (alors que vous ne l’utilisez pas). On coince dès les prérequis, ça commence mal.&lt;/p&gt;
&lt;p&gt;Et oui&amp;hellip; « Docker for Windows » active Hyper-V&amp;hellip; et si Hyper-V est activé, impossible d’installer Virtual Box !&lt;/p&gt;
&lt;p&gt;Si la plupart des tutoriels mettent en avant Virtual Box justement (car c’est l’option par défaut), vous n’avez peut être pas envie de désinstaller Docker for Windows pour autant !&lt;/p&gt;
&lt;p&gt;Ou peut être que vous n’avez pas envie d’installer Virtual Box alors que votre Windows 10 vous fourni déjà « out of the box » un logiciel de virtualisation parfaitement valide (attention, je dis ça uniquement pour Windows 10, sur un PC &lt;strong&gt;client&lt;/strong&gt;&amp;hellip; Pour un serveur, c’est juste une grosse blague cette plateforme de virtu&amp;hellip;).&lt;/p&gt;
&lt;h2 id="on-va-quand-même-sen-sortir"&gt;On va quand même s’en sortir
&lt;/h2&gt;&lt;p&gt;En gros, on est censé dérouler simplement les prérequis : avoir VT-x/AMD-v d’activés dans le BIOS. Là je ne vais pas vous faire l’explication car ça dépend grandement de votre machine.&lt;/p&gt;
&lt;p&gt;Ensuite, on ajoute la fonctionnalité Hyper-V sur votre Windows 10. Pour se faire, on ouvre le menu des « fonctionnalités Windows ».&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/09/minikube01.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/09/minikube02.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Si ce n’est pas déjà fait cocher « Hyper-V », validez, et on vous demandera très probablement de redémarrer. Attention, à partir de là vous ne pourrez plus utiliser Virtual Box (c’est tout le but de cet article, mais bon) ou VMware player ou autre.&lt;/p&gt;
&lt;p&gt;Et enfin, pour éviter des conflits avec Docker pour Windows, on va créer un réseau virtuel dédié dans notre console Hyper-V. Lancer le gestionnaire Hyper-V :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/09/minikube03.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Sur le menu tout à droite, on créé un Commutateur virtuel dédié. Pour réaliser cette opération, on clique sur &lt;strong&gt;Gestionnaire de commutateur virtuel&lt;/strong&gt;, puis dans la fenêtre qui s’ouvre, en haut à gauche dans la liste des &lt;strong&gt;Commutateurs virtuels&lt;/strong&gt;, on clique sur &lt;strong&gt;Nouveau commutateur réseau virtuel&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/09/minikube04.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Dans les propriétés, on lui donne un petit nom (minikube par exemple) et on oublie pas de cocher « Réseau externe » (pour utiliser une des cartes physiques comme un bridge) et de cocher ensuite « Autoriser le système d’exploitation de gestion à partager cette carte réseau (surtout si c’est votre seule carte réseau !).&lt;/p&gt;
&lt;p&gt;Pour finir, on récupère Minikube &lt;a class="link" href="https://kubernetes.io/docs/tasks/tools/install-minikube/" target="_blank" rel="noopener"
&gt;ici&lt;/a&gt; et on lance la commande suivante depuis un Powershell :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;minikube start --vm-driver hyperv --hyperv-virtual-switch &amp;#34;minikube&amp;#34;
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="option-1--jai-de-la-chance"&gt;Option 1 : « J’ai de la chance »
&lt;/h2&gt;&lt;p&gt;Si tout se passe bien, tant mieux pour vous !&lt;/p&gt;
&lt;p&gt;Vous avez de la chance, tout se passe bien et vous avez Minikube d’installé sur votre poste. C’est la fête, vous allez pouvoir déployer des containers à Gogo !&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;PS D:\&amp;gt; minikube status
minikube: Running
cluster: Running
kubectl: Correctly Configured: pointing to minikube-vm at 172.16.25.173
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="protips--et-maintenant-"&gt;Protips : Et maintenant ?
&lt;/h2&gt;&lt;p&gt;Pour aller plus loin, vous pouvez commencer par jeter un oeil sur &lt;a class="link" href="https://blog.zwindler.fr/recherche/?keyword=kubernetes" &gt;mes autres articles qui parlent de Kubernetes&lt;/a&gt;, notamment le tutoriel pas à pas où j’explique comment &lt;a class="link" href="https://blog.zwindler.fr/2017/10/24/tutoriel-xwiki-ma-premier-appli-stateful-sur-kubernetes/" &gt;déployer une application complète et Statefull sur Kubernetes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Mais voici quelques protips supplémentaires spécialement dédiées aux spécificités de minikube.&lt;/p&gt;
&lt;h3 id="les-ingress-"&gt;Les Ingress !
&lt;/h3&gt;&lt;p&gt;Pour le fun, on va certainement vouloir ajouter le support des Ingress (pas activés par défaut) :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;PS D:\&amp;gt; minikube addons enable ingress
ingress was successfully enabled
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="accéder-au-dashboard"&gt;Accéder au dashboard
&lt;/h3&gt;&lt;p&gt;On peut accéder au Dashboard (l’interface web qui permet de contrôler k8s sans passer par &lt;em&gt;kubectl&lt;/em&gt; ou les API) n’est pas directement accessible avec un &lt;em&gt;kubectl proxy&lt;/em&gt; comme sur un Kubernetes standard.&lt;/p&gt;
&lt;p&gt;Elle est cependant bien disponible sans ajout supplémentaire, à l’aide de la commande suivante :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;minikube dashboard
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="se-loguer-sur-la-machine-virtuelle-k8s"&gt;Se loguer sur la machine virtuelle K8s
&lt;/h3&gt;&lt;p&gt;Si pour une raison ou pour une autre, vous voulez vous connecter en SSH sur la VM qui contient votre environnement Kubernetes, c’est possible ! Récupérez l’IP affectée à la VM (afficher avec un &lt;em&gt;minikube status&lt;/em&gt; ou un &lt;em&gt;kubectl config view&lt;/em&gt;).&lt;/p&gt;
&lt;p&gt;Il existe un user « docker » avec pour mot de passe « tcuser » (mot de passe ultrasecure, s’il en est). A noter, ce compte à un accès &lt;strong&gt;sudo&lt;/strong&gt; à la machine en &lt;em&gt;NOPASSWD&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Ca peut être utile par exemple pour vérifier que les Adminission Controllers sont bien actifs (on en aura besoin dans un prochain article)&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;ps -ef | grep api
kube-apiserver --admission-control=Initializers,NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota --requestheader-allowed-names=front-proxy-client --service-account-key-file=/var/lib/localkube/certs/sa.pub --tls-private-key-file=/var/lib/localkube/certs/apiserver.key --kubelet-client-key=/var/lib/localkube/certs/apiserver-kubelet-client.key --proxy-client-cert-file=/var/lib/localkube/certs/front-proxy-client.crt --requestheader-group-headers=X-Remote-Group --enable-bootstrap-token-auth=true --allow-privileged=true --requestheader-username-headers=X-Remote-User --requestheader-extra-headers-prefix=X-Remote-Extra- --client-ca-file=/var/lib/localkube/certs/ca.crt --proxy-client-key-file=/var/lib/localkube/certs/front-proxy-client.key --insecure-port=0 --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname --advertise-address=172.16.25.173 --service-cluster-ip-range=10.96.0.0/12 --tls-cert-file=/var/lib/localkube/certs/apiserver.crt --kubelet-client-certificate=/var/lib/localkube/certs/apiserver-kubelet-client.crt --requestheader-client-ca-file=/var/lib/localkube/certs/front-proxy-ca.crt --secure-port=8443 --authorization-mode=Node,RBAC --etcd-servers=https://127.0.0.1:2379 --etcd-cafile=/var/lib/localkube/certs/etcd/ca.crt --etcd-certfile=/var/lib/localkube/certs/apiserver-etcd-client.crt --etcd-keyfile=/var/lib/localkube/certs/apiserver-etcd-client.key
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt;kubectl api-versions | findstr &amp;#34;admissionregistration.k8s.io/v1beta1&amp;#34;
admissionregistration.k8s.io/v1beta1
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="option-2"&gt;Option 2
&lt;/h2&gt;&lt;p&gt;Rien ne marche !&lt;/p&gt;
&lt;p&gt;Et pour être parfaitement honnête, c’est ce qui m’est arrivé ! Du coup, je vous prépare un nouvel article avec toutes les astuces de troubleshooting. &lt;a class="link" href="https://blog.zwindler.fr/2018/10/02/minikube-sur-hyper-v-part-2-troubleshooting-de-linstallation/" &gt;La suite - dans le prochain épisode&lt;/a&gt;, donc ;-)&lt;/p&gt;
&lt;h2 id="sources"&gt;Sources
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://kubernetes.io/docs/tasks/tools/install-minikube/" target="_blank" rel="noopener"
&gt;La documentation officielle&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://docs.microsoft.com/fr-fr/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v" target="_blank" rel="noopener"
&gt;La documentation « officielle » et minimaliste pour installer Minikube avec Hyper-V&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;l’article MSDN de Microsoft : &lt;a class="link" href="https://blogs.msdn.microsoft.com/wasimbloch/2017/01/23/setting-up-kubernetes-on-windows10-laptop-with-minikube/" target="_blank" rel="noopener"
&gt;Setting up Kubernetes on Windows10 Laptop with Minikube&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://medium.com/@JockDaRock/minikube-on-windows-10-with-hyper-v-6ef0f4dc158c" target="_blank" rel="noopener"
&gt;un autre tutoriel pour installer Minikube avec Hyper-V mais qui ne donne pas beaucoup plus d’info que le billet de MSDN&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>[Tutoriel] Migrer vers Windows 10 en dehors de votre réseau d’entreprise</title><link>https://blog.zwindler.fr/2016/06/30/tutoriel-migrer-vers-windows-10-de-reseau-dentreprise/</link><pubDate>Thu, 30 Jun 2016 11:00:38 +0000</pubDate><guid>https://blog.zwindler.fr/2016/06/30/tutoriel-migrer-vers-windows-10-de-reseau-dentreprise/</guid><description>&lt;img src="https://blog.zwindler.fr/2016/02/57UKydQS.webp" alt="Featured image of post [Tutoriel] Migrer vers Windows 10 en dehors de votre réseau d’entreprise" /&gt;&lt;h2 id="mise-à-jour-windows-10-pour-les-pro-ok-mais-si-je-suis-hors-de-mon-réseau-dentreprise-"&gt;Mise à jour Windows 10 pour les pro, ok, mais si je suis hors de mon réseau d’entreprise ?
&lt;/h2&gt;&lt;p&gt;Maintenant que vous savez maintenant que vous pouvez profiter de la mise à jour gratuite de Windows Home ou Professionnel même si vous êtes une entreprise, vous allez peut être prendre votre portable et le ramener à la maison pour faire la mise à jour.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a class="link" href="https://blog.zwindler.fr/2016/06/23/mise-a-jour-windows-10-professionnels-gratuit-payant/" &gt;Mise à jour Windows 10 pour les professionnels : gratuit ou payant ?&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;C’est d’ailleurs ce que j’ai fais. Cependant, ça n’a pas marché du premier coup. C’est pourquoi je me propose de vous guider avec ce petit tutoriel pas à pas.&lt;/p&gt;
&lt;h2 id="première-erreur--je-tente-de-mettre-à-jour-depuis-la-popup-obtenirwindows-10"&gt;Première erreur : je tente de mettre à jour depuis la popup « Obtenir Windows 10 »
&lt;/h2&gt;&lt;p&gt;Mais si ! Vous savez ? Cette notification pour vous poussez à mettre à jour vers Windows 10 qui reste en bas de l’icône. Difficile (pas impossible) à bloquer. Bon bah ok, d’accord je met à jour, laisse moi tranquille maintenant&amp;hellip;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_KO1-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;OK, cool&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_KO1-3.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Ça a l’air de marcher&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_KO1-4.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Et hop, on vous renvoie vers Windows Update&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_KO1-5.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Et là c’est le drame &amp;hellip; Code 8024402C m’voyez ?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Mais comme je suis hors de mon réseau d’entreprise, je ne peux pas passer les mises à jour car je ne peux pas contacter mon serveur WSUS&amp;hellip;&lt;/p&gt;
&lt;h2 id="seconde-erreur--je-vais-cliquer-sur-mettre-à-niveau-maintenant-sur-le-site-de-microsoft"&gt;Seconde erreur : je vais cliquer sur « Mettre à niveau maintenant » sur le site de Microsoft
&lt;/h2&gt;&lt;p&gt;Qu’à cela ne tienne&amp;hellip; Je vais sur le site de Microsoft et je télécharge le binaire de mise à jour ! Ahah !&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_KO1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;So far, so good&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_KO2.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Re-drame. Ce PC est joint à un domaine m’voyez ?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Microsoft a bloqué intentionnellement la mise à jour de Windows 10 depuis le poste de travail d’un utilisateur d’un PC intégré à un domaine Windows.&lt;/p&gt;
&lt;p&gt;Dans la pratique, on peut « contourner » cette limitation en sortant la machine du domaine (nécessite que l’utilisateur soit administrateur du PC) et demande ensuite à sont administrateur préféré de réintégrer sa machine une fois la mise à jour passée. Mais il y a plus simple ;-)&lt;/p&gt;
&lt;h2 id="la-bonne-méthode--faire-semblant-de-créer-un-média"&gt;La bonne méthode : faire semblant de créer un média
&lt;/h2&gt;&lt;p&gt;Sur la même page web que celle où vous avez trouvé le binaire de mise à jour, il y a une deuxième section, dans laquelle on vous propose de télécharger l’outil de création de média.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_2.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Et en fait, on peut feinter en utilisant cet outil pour réaliser la migration, sans pour autant réellement créer un média.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_4.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_5choix1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Choisir « Mettre à niveau ce PC maintenant permettra » de sauter l’étape de création de média et mettre à jour votre machine. L’autre option permet de créer un média bootable qui vous permettra éventuellement de passer la mise à jour sur plusieurs machines.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_6choix1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;A partir de là, Windows télécharge l’image&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_7choix1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;hellip; et créé un média bootable&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_8.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_9.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_10.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Dernier petit point de blocage potentiel !&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Certaines applications (comme HP Client Security Manager, qui gère mes mots de passe et surtout mon lecteur d&amp;rsquo;empreintes pour l’authentification) peuvent ne pas être compatibles Windows 10. Il faudra les désinstaller (et potentiellement rebooter et tout recommencer car l’application devra RE-télécharger l’image) pour pouvoir continuer.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/06/windows10_11.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Et c’est partiiiiii !&lt;/p&gt;
&lt;/blockquote&gt;</description></item><item><title>Mise à jour Windows 10 pour les professionnels : gratuit ou payant ?</title><link>https://blog.zwindler.fr/2016/06/23/mise-a-jour-windows-10-professionnels-gratuit-payant/</link><pubDate>Thu, 23 Jun 2016 11:30:06 +0000</pubDate><guid>https://blog.zwindler.fr/2016/06/23/mise-a-jour-windows-10-professionnels-gratuit-payant/</guid><description>&lt;img src="https://blog.zwindler.fr/2016/02/57UKydQS.webp" alt="Featured image of post Mise à jour Windows 10 pour les professionnels : gratuit ou payant ?" /&gt;&lt;p&gt;A l’approche de la fin du compte à rebours (prévue pour le 29 juillet 2016) de la promotion de Microsoft pour Windows 10 qui permet aux propriétaires de licences Windows 7 et Windows 8, la question est relancée :&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Est ce que seuls les particuliers sont concernés par la promotions Windows 10 ou est ce que les professionnels peuvent aussi en profiter ?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="lorigine"&gt;L’origine
&lt;/h2&gt;&lt;p&gt;Revenons un peu en arrière.&lt;/p&gt;
&lt;p&gt;Fin janvier 2015, c’est l’effervescence. Microsoft vient d’annoncer à la surprise générale que les possesseurs de licences Windows à partir de la version 7 auraient droit à une mise à jour gratuite pendant un an de leur système vers Windows 10.&lt;/p&gt;
&lt;p&gt;Rétrospectivement, c’est assez malin de la part de Microsoft, après une mort de Windows XP dans la douleur, entre autre provoquée par un Vista détesté qui a fait camper beaucoup d’utilisateurs (et de professionnels) sur leurs positions. La décision est saluée et tout le monde a hâte (sauf les libristes).&lt;/p&gt;
&lt;p&gt;Mais rapidement, des questions existentielles secouent la bloguosphère, la twittosphère, &amp;hellip; : Dans quel conditions ? Est ce que les licences « pirates » seront concernées ? Et Windows phone ? Et Windows RT ?&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Et les pro ???&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;C’est la panique, tout le monde informatique ne parle plus que de ça ;-).&lt;/p&gt;
&lt;h2 id="la-confusion"&gt;La confusion
&lt;/h2&gt;&lt;p&gt;Rapidement, Microsoft met les points sur les I. Les versions concernées sont Windows 7 Home et Pro et Windows 8.1 Home et Pro. Les détenteurs de Windows 8 devront migrer préalablement vers Windows 8.1. Toutes les autres licences ne sont pas concernées : RT, Mediacenter et donc &amp;hellip; Entreprise.&lt;/p&gt;
&lt;p&gt;Deuxième vent de panique. Le plutôt sérieux Monde Informatique (loin d’être une exception) titre alors &lt;a class="link" href="http://www.lemondeinformatique.fr/actualites/lire-windows-10-ne-sera-pas-gratuit-pour-les-entreprises-60096.html" target="_blank" rel="noopener"
&gt;Windows 10 ne sera pas gratuit pour les entreprises 11111!!!!1!!&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On y lit même&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Pour les entreprises en revanche, &lt;em&gt;&lt;strong&gt;c’est la douche froide&lt;/strong&gt;&lt;/em&gt;. Ou tout du moins un dur retour à la réalité. Car la firme de Redmond a fait savoir &lt;a class="link" href="http://blogs.windows.com/business/2015/01/30/windows-10-for-enterprise-more-secure-and-up-to-date/" target="_blank" rel="noopener"
&gt;dans un blog&lt;/a&gt; daté de vendredi que la gratuité de la mise à jour vers Windows 10 ne sera pas de la partie.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Ça me fait encore rire.&lt;/p&gt;
&lt;p&gt;Pour autant, Le Monde Informatique et tous les autres n’ont pas écrit d’erreurs à proprement parler (ou alors ils l’ont corrigé). Le version Entreprise des OS Windows (tout comme RT) ne seront bien pas gratuitement mises à jour.&lt;/p&gt;
&lt;p&gt;Cependant, il faut savoir que ces versions Entreprise, spéciales, sont bien à distinguer des versions Home et Pro qui sont livrées avec nos PC. Ces versions sont souvent acquises par les très grands groupes, notamment dans le cadre d’une souscription « Software assurance ». Une rente annuelle pour Microsoft que vous payez au volume et qui vous donne bien évidemment le droit d’accéder aux nouvelles versions lorsqu’elles sortent.&lt;/p&gt;
&lt;h2 id="et-donc-"&gt;Et donc ?
&lt;/h2&gt;&lt;p&gt;Ainsi, les personnes ayant acquis des Windows 7 ou 8 &lt;strong&gt;Entreprise&lt;/strong&gt; payent donc probablement de manière annuelle un volume de licence. Si leurs cotisations sont à jour elles peuvent donc &lt;em&gt;gratuitement&lt;/em&gt; mettre à jour leur parc vers les nouvelles versions de Windows et donc vers Windows 10, puisque c’est inclus dans leur contrat. C’est pareil pour l’ensemble des logiciels édités par Microsoft, dont les Windows Server par exemple.&lt;/p&gt;
&lt;p&gt;Pour les autres, que ce soient des particuliers, des PME ou même de plus grosses entreprises, qui ont des licences Windows Home ou Pro, soit acquises séparément du terminal, soit achetée avec, la promotion est bien applicable (tant que vous migrez avant la fin du compte à rebours bien sûr !).&lt;/p&gt;
&lt;p&gt;Amis professionnels, vous pouvez donc vous rassurer et faire la mise à jour vers Windows 10 gratuitement si vous le souhaitez sans vous mettre hors la loi ;-).&lt;/p&gt;
&lt;p&gt;Quelques lectures complémentaires pour vous rassurer :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="http://www.journaldunet.com/solutions/dsi/1154797-windows-10-pour-qui-est-il-gratuit/" target="_blank" rel="noopener"
&gt;www.journaldunet.com/solutions/dsi/1154797-windows-10-pour-qui-est-il-gratuit/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://web.archive.org/web/20170929231736/http://windowsitpro.com/windows-10/microsofts-windows-10-upgrade-policy-business-not-what-you-might-think" target="_blank" rel="noopener"
&gt;windowsitpro.com/windows-10/microsofts-windows-10-upgrade-policy-business-not-what-you-might-think (lien mort, j&amp;rsquo;utilise Internet Archive)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Windows 2012 : reboot forcé des serveurs sans que vous ne puissiez rien n’y faire</title><link>https://blog.zwindler.fr/2016/05/05/windows-2012-reboot-force-des-serveurs-sans-que-vous-ne-puissiez-rien-ny-faire/</link><pubDate>Thu, 05 May 2016 11:30:06 +0000</pubDate><guid>https://blog.zwindler.fr/2016/05/05/windows-2012-reboot-force-des-serveurs-sans-que-vous-ne-puissiez-rien-ny-faire/</guid><description>&lt;img src="https://blog.zwindler.fr/2016/02/57UKydQS.webp" alt="Featured image of post Windows 2012 : reboot forcé des serveurs sans que vous ne puissiez rien n’y faire" /&gt;&lt;p&gt;Windows et les reboots, c’est un peu une histoire d’amour.&lt;/p&gt;
&lt;p&gt;Hop hop hop : je vous entend déjà râler et dire&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Ah ça c’est bien une réflexion de gars qui n’y connait rien !&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Vous aurez raison, je n’y connais rien. Pour autant, dans tous les contextes professionnels que j’ai pu voir jusqu’à présent, il doit y avoir un sacré paquet de gens qui n’y connaissent rien car on m’a souvent dit (je parle bien d’admins windows) « ah ouais ok mais bon un petit reboot ça fait jamais de mal » comme solution à tous les symptômes possibles et imaginables. Et le pire, c’est que ça marche !&lt;/p&gt;
&lt;h2 id="culture-du-reboot"&gt;Culture du reboot
&lt;/h2&gt;&lt;p&gt;Là où je veux en venir c’est que la culture du reboot, &lt;em&gt;à tort ou à raison&lt;/em&gt;, est quand même fortement ancrée dans la culture Windows, même dans l’environnement serveur.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Dans le doute, reboot. Si ça rate, reformate. - Devise des admins Windows dans un open space d’une grande ESN Française&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;De quoi je parle :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Vous avez un bug? Vous rebootez.&lt;/li&gt;
&lt;li&gt;Vous voulez installer un composant Windows supplémentaire ? Vous rebootez.&lt;/li&gt;
&lt;li&gt;Vous installez un progiciel un peu costaud ? Vous rebootez.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Mettre à jour automatiquement les serveurs Windows, comme tous les OS est une bonne pratique. Et il n’est pas rare que l’application de cette mise à jour nécessite un reboot.&lt;/p&gt;
&lt;p&gt;Jusque là (contrairement aux 3 précédents exemples), rien de choquant : sous Unix/Linux c’était le cas aussi (au moins jusqu’à ce que le Kernel Linux 4 ne permette les MAJ du Kernel à chaud).&lt;/p&gt;
&lt;p&gt;Là où ça l’est moins, c’est quand, au bout d’un certain l’OS Windows vous incite fortement à faire le reboot avec de bonne grosse popup sur l’écran.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/05/reboot.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Jusqu’aux dernières versions vous pouviez encore vous en sortir avec des bidouilles car dans certains cas il peut être intéressant de savoir bloquer ce comportement par défaut (temporairement par exemple).&lt;/p&gt;
&lt;h2 id="toujours-plus"&gt;Toujours plus
&lt;/h2&gt;&lt;p&gt;Mais avec Windows 2012, Microsoft est allé un cran plus loin.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/05/reboot2.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;What ? Wait &amp;hellip; Nooooooo !&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Donc depuis Windows 8/2012, lorsque les mises à jours sont téléchargées, le système provoque parfois un reboot forcé du serveur avec un compte à rebours de 15 minutes si un administration ouvre une session.&lt;/p&gt;
&lt;p&gt;Je sais pas vous, mais généralement lorsque j’ouvre une session sur un serveur, c’est parce que j’ai besoin de faire une opération sur le serveur en question&amp;hellip; non ?&lt;/p&gt;
&lt;p&gt;Dans les version précédentes, on pouvait encore annuler le redémarrage avec une commande&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;shutdown -a
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Et bien maintenant, ça ne marche plus. Vous n’aurez pas de message d’erreur, la commande rendra bien la main. Vous penserez peut être que tout va bien.&lt;/p&gt;
&lt;p&gt;Pourtant, 5 minutes plus tard, vous recevrez un message qui vous proposera deux choses : redémarrer tout de suite ou lorsque le compteur atteindra 0.&lt;/p&gt;
&lt;h2 id="quest-ce-qui-se-passe-vraiment-"&gt;Qu’est ce qui se passe vraiment ?
&lt;/h2&gt;&lt;p&gt;Certaines mises à jours critiques se téléchargent et s’installent par défaut (si vous avez des stratégies de groupes et/ou un serveur WSUS, les choses peuvent être un peu différentes bien entendu. Ici c’est le cas standard).&lt;/p&gt;
&lt;p&gt;A partir de là, l’administrateur est « notifié » dans sa session qu’il va devoir penser à faire un reboot pour prise en compte. Bon, si comme moi il ne s’y connecte jamais, il ne sera pas plus au courant que cela, mais passons.&lt;/p&gt;
&lt;p&gt;A bout de 3 jours, l’OS décidera alors de la planification d’un reboot lors de la prochaine plage de maintenance, qui sera fait s_‘il n’y a pas de risques de données_. En gros, si vous avez une session ouverte et/ou une application qui tourne.&lt;/p&gt;
&lt;p&gt;On va faire confiance à Microsoft et dire que ça fonctionne bien. Parce que si ça ne fonctionne pas bien, votre serveur d’application ou votre base de données &amp;hellip; dommage ?&lt;/p&gt;
&lt;p&gt;Admettons donc que l’OS estime que vous êtes en cours d’utilisation de votre serveur. Pour ne pas vous pénaliser et corrompre vos données, le reboot est reporté &amp;hellip; au prochain login d’un administrateur !&lt;/p&gt;
&lt;p&gt;Dès que vous vous connecterez, vous avez 15 minutes pour couper proprement vos applications, sans possibilité de couper l’échéance fatidique.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/05/jack.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Bon. Si vous en êtes là et que vous êtes désespérés parce que Windows est sur le point de se faire hara kiri, que ça couper votre production et que les utilisateurs vont vous attendre à la sortie avec des piques, a priori il n’y a plus d’espoir (sauf si une solution est sortie depuis la rédaction de cet article mais vous allez voir en fin d’article que c’est un choix assumé par Microsoft).&lt;/p&gt;
&lt;p&gt;Pour la prochaine fois donc, voilà deux astuces pour éviter ces comportements via des modifications de clés dans le registre.&lt;/p&gt;
&lt;h2 id="les-mises-à-jours-critiques-qui-sinstallent-provoquent-la-planification-automatique-dun-reboot"&gt;Les mises à jours critiques qui s’installent provoquent la planification automatique d’un reboot
&lt;/h2&gt;&lt;p&gt;Ouvrir regedit en mode administrateur, puis naviguer jusqu’à **HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate**.&lt;/p&gt;
&lt;p&gt;Créer la clé (dossier) avec pour nom &lt;strong&gt;AU&lt;/strong&gt; si nécessaire, puis une clé de type &lt;strong&gt;DWORD&lt;/strong&gt; à l’intérieur de cette clé avec comme nom &lt;strong&gt;AlwaysAutoRebootAtScheduledTime&lt;/strong&gt; et comme valeur **** (ou &lt;strong&gt;1&lt;/strong&gt; pour forcer le redémarrage).&lt;/p&gt;
&lt;h2 id="lorsquun-administrateur-se-connecte-le-compte-à-rebours-se-déclenche"&gt;Lorsqu’un administrateur se connecte, le compte à rebours se déclenche
&lt;/h2&gt;&lt;p&gt;Ouvrez regedit en mode administrateur, puis naviguer jusqu’à là clé suivante :&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Créer la clé (dossier) avec pour nom &lt;strong&gt;AU&lt;/strong&gt; (si nécessaire, i.e. si elle n’existe pas), puis une clé de type DWORD à l’intérieur de cette clé avec comme nom &lt;strong&gt;NoAutoRebootWithLoggedOnUsers&lt;/strong&gt; avec pour valeur &lt;strong&gt;1&lt;/strong&gt; (ou 0 si vous voulez au contraire ce comportement).&lt;/p&gt;
&lt;h2 id="les-mots-de-la-fin"&gt;Les mots de la fin
&lt;/h2&gt;&lt;p&gt;Petite note complémentaire, il faut avoir installé le &lt;strong&gt;KB 2822241&lt;/strong&gt; pour que cela fonctionne.&lt;/p&gt;
&lt;p&gt;Pour plus d’information, le &lt;a class="link" href="https://support.microsoft.com/fr-fr/kb/2835627" target="_blank" rel="noopener"
&gt;KB de Microsoft sur le sujet&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Et aussi un &lt;a class="link" href="https://blogs.msdn.microsoft.com/b8/2011/11/14/minimizing-restarts-after-automatic-updating-in-windows-update/" target="_blank" rel="noopener"
&gt;article sur le blog MSDN&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;J’ai beaucoup ri en lisant cette phrase, censé aider à faire passer la pilule des reboots automatiques forcés (pour mettre à jour le code vulnérable en mémoire et corriger les failles le plus vite possible) :&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;We know this architectural challenge is one that frustrates administrators and end-users alike, but it does represent the state of the art for Windows.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Et ça aussi, a propos du fait que WU ne gère que les mises à jours relatives à Windows et aux pilotes (contrairement à un gestionnaire de paquets sous Unix) :&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Lastly but not the least, I want to address the feedback from users who would like WU to update their 3rd-party applications. [&amp;hellip;] People would like one updater for the entire system.&lt;br&gt;
On the other hand, users have also told us that they trust the quality of updates distributed by WU [&amp;hellip;]&lt;br&gt;
We would not want to do anything that might reduce trust in the system by encouraging people to take on this management task manually and exposing their PCs to potential vulnerabilities for even short times.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Sur ce, have fun ;-)&lt;/p&gt;</description></item></channel></rss>