<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Partage on Zwindler's Reflection</title><link>https://blog.zwindler.fr/tags/partage/</link><description>Recent content in Partage on Zwindler's Reflection</description><generator>Hugo -- gohugo.io</generator><language>fr-fr</language><copyright>Licensed under CC BY-SA 4.0</copyright><lastBuildDate>Tue, 17 Mar 2020 07:55:00 +0000</lastBuildDate><atom:link href="https://blog.zwindler.fr/tags/partage/index.xml" rel="self" type="application/rss+xml"/><item><title>Ta visio Open Source comme un pro avec Jitsi</title><link>https://blog.zwindler.fr/2020/03/17/ta-visio-open-source-comme-un-pro-avec-jitsi/</link><pubDate>Tue, 17 Mar 2020 07:55:00 +0000</pubDate><guid>https://blog.zwindler.fr/2020/03/17/ta-visio-open-source-comme-un-pro-avec-jitsi/</guid><description>&lt;img src="https://blog.zwindler.fr/2020/03/jitsi_front.webp" alt="Featured image of post Ta visio Open Source comme un pro avec Jitsi" /&gt;&lt;h2 id="jitsi-meet-au-secours-de-la-france-qui-télétravaille"&gt;Jitsi Meet au secours de la France qui télétravaille
&lt;/h2&gt;&lt;p&gt;COVID-19 oblige, j’ai un peu modifié l’ordonnancement de mes articles pour reparler d’un sujet que j’avais traité il y a 3-4 ans : la visioconf avec Jitsi Meet. Pourquoi ce sujet ? D’abord parce que pas plus tard qu’il y a 5 jours, NextInpact (mon journal préféré) a relayé les &lt;a class="link" href="https://www.nextinpact.com/brief/le-teletravail-de-plus-en-plus-populaire--framasoft-en-fait-les-frais-11557.htm" target="_blank" rel="noopener"
&gt;mésaventures de Framasoft suite à l’épidémie&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;En effet, &lt;a class="link" href="https://framasoft.org/fr/" target="_blank" rel="noopener"
&gt;Framasoft (que vous connaissez forcément)&lt;/a&gt; propose de longue date des outils/services en ligne gratuit. Le souci, c’est que le but est ici d’éduquer les gens et leur montrer qu’on peut autohéberger de nombreux services habituellement payants chez de gros éditeurs (ou gratuits en échange de vos données personnelles).&lt;/p&gt;
&lt;p&gt;Mais, pris par la panique de devoir passer tout un tas de gens à l’arrache sur un mode massivement télétravail, beaucoup de gens se sont tournées vers des solutions toutes prêtes, surchargeant au moins de manière temporaire les serveurs de Framasoft.&lt;/p&gt;
&lt;p&gt;Mais vous l’avez bien compris, le but, c’est d’apprendre à faire soit-même, comme le fait Framasoft, avec Jitsi Meet :).&lt;/p&gt;
&lt;h2 id="notes-additionnelles"&gt;Notes additionnelles
&lt;/h2&gt;&lt;p&gt;Si jamais vous cherchez des solutions toutes faites, sachez que de nombreuses entreprises de la tech mettent à disposition ce genre de solutions de manière temporairement gratuite pour soulager les équipes IT et &amp;ldquo;faire leur part&amp;rdquo; pour lutter contre la propagation du virus. Les derniers en date sont &lt;a class="link" href="https://www.ovh.com/conferences/" target="_blank" rel="noopener"
&gt;OVH&lt;/a&gt; qui propose un service de téléconférence gratuit jusqu’à 24h et 50 participants, mais j’ai aussi entendu parlé de discord pour de la visio à 50 et d’autres services qui font sauter leurs limites habituelles dans le contexte Coronavirus.&lt;/p&gt;
&lt;p&gt;Parallèlement à cet article sur Jitsi, sachez que NextCloud propose une alternative libre (NextCloud Talk) dans la dernière version. Je ne l’ai pas encore testée, mais la communauté NextCloud FR est très active je suis sûr qu’ils ont du faire des tutos (Genma ?).&lt;/p&gt;
&lt;h2 id="et-jitsi-dans-tout-ça-"&gt;Et Jitsi dans tout ça ?
&lt;/h2&gt;&lt;p&gt;C’est quoi exactement Jitsi ?&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Multi-platform open-source video conferencing&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Share your desktop, presentations, and more&lt;/li&gt;
&lt;li&gt;Invite users to a conference via a simple, custom URL&lt;/li&gt;
&lt;li&gt;Edit documents together using Etherpad&lt;/li&gt;
&lt;li&gt;Pick fun meeting URLs for every meeting&lt;/li&gt;
&lt;li&gt;Trade messages and emojis while you video conference, with &amp;gt; integrated chat.&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;C’est donc une plateforme relativement complète de visio, a priori plutôt scalable (possibilité de faire des confs à plus de 100), qui permet de partager son écran et de chatter.&lt;/p&gt;
&lt;p&gt;Le gros avantage c’est que c’est dans un navigateur et que c’est très simple d’utilisation. On ouvre la page web, on rentre un nom de salle dans une barre de texte, et voilà.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2020/03/jitsi2.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="installation"&gt;Installation
&lt;/h2&gt;&lt;p&gt;Avant de commencer, je me suis posé la question du sizing. Nécessairement ça va dépendre fortement de la charge que vous attendez, mais sachez qu’au minimum il vous faudra une machine avec 1 vCPU et 1Go de RAM. Le double serait le mieux, car Jitsi se compose de plusieurs applications Java (c’est donc un peu gourmand même sans charge).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2020/03/jitsi-network.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a class="link" href="https://jitsi.github.io/handbook/docs/devops-guide/" target="_blank" rel="noopener"
&gt;https://jitsi.github.io/handbook/docs/devops-guide/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;En soit, l’installation de Jitsi est assez triviale, en particulier sur une Debian ou une Ubuntu récente.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2020/03/jitsi.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Instruction d’installation disponibles sur &lt;a class="link" href="https://jitsi.org/downloads/ubuntu-debian-installations-instructions/" target="_blank" rel="noopener"
&gt;https://jitsi.org/downloads/ubuntu-debian-installations-instructions/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Ici, voilà les commandes que j’ai tapé pour installer Jitsi sur une Ubuntu 18.04 vierge :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;sudo apt upgrade
sudo apt install gnupg2
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -
sudo sh -c &amp;#34;echo &amp;#39;deb https://download.jitsi.org stable/&amp;#39; &amp;gt; /etc/apt/sources.list.d/jitsi-stable.list&amp;#34;
sudo apt update
sudo apt install jitsi-meet
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Lors de l’installation, le terminal nous promptera pour le nom d’hôte public sur lequel le service sera disponible et si on souhaite générer un certificat ou en fournir un soit même.&lt;/p&gt;
&lt;p&gt;Cependant, comme souvent avec les sites qui disent &amp;ldquo;regardez c’est trop simple d’installer notre soft, c’est juste &lt;code&gt;apt install monsoftgenial&lt;/code&gt;, en vrai il manque des bouts ;)&lt;/p&gt;
&lt;h2 id="firewall"&gt;Firewall
&lt;/h2&gt;&lt;p&gt;A moins d’avoir une machine chez un cloud provider pas trop regardant et sur laquelle vous installez le soft sans se poser de question, vous allez probablement avoir mis (ou vouloir mettre) du filtrage de port devant vos serveurs.
Comme vous vous en doutez, il va falloir ouvrir des ports pour que ça fonctionne correctement. On trouve l’info des ports utilisés par Jitsi dans &lt;a class="link" href="https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md" target="_blank" rel="noopener"
&gt;la documentation d’installation&lt;/a&gt; (un peu plus complète) disponible sur Github.
Grosso modo, si tous les composants de jitsi sont installés sur la même machine, vous avez les ports suivants à ouvrir sur Internet (ou en LAN si vous ne souhaitez utiliser Jitsi que sur votre réseau Interne) :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;443/TCP pour le serveur web de la page d’accueil&lt;/li&gt;
&lt;li&gt;4443/TCP (jitsi-meet videostream)&lt;/li&gt;
&lt;li&gt;10000 =&amp;gt; 20000 en TCP et en UDP&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La dernière plage de 10000 port est très probablement bien trop grande dans une grande majorité des cas et peut normalement être configurée dans Jitsi (mais je n’ai pas les commandes exactes).&lt;/p&gt;
&lt;h2 id="jitsi-dans-un-réseau-naté"&gt;Jitsi dans un réseau NATé
&lt;/h2&gt;&lt;p&gt;Je n’allais pas commander une nouvelle machine juste pour mes tests Jitsi. J’ai donc installé une VM sur mes hyperviseurs persos, dans lequel le réseau virtuel est NATé.&lt;/p&gt;
&lt;p&gt;Et manque de bol, dans ce cas là, il faut ajouter deux lignes dans un fichier de configuration (deux lignes que j’ai mis du temps à trouver mais &lt;a class="link" href="https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md" target="_blank" rel="noopener"
&gt;qui sont là aussi, dans la doc&lt;/a&gt;&amp;hellip; Passons).&lt;/p&gt;
&lt;p&gt;&lt;del&gt;Dans la machine sur laquelle vous avez installé Jitsi, ouvrez le fichier suivant et ajoutez y les deux lignes qui suivent (en remplaçant bien entendu les parties entre crochets par les vraies IPs).&lt;/del&gt;&lt;/p&gt;
&lt;p&gt;[Edit]La configuration a maintenant changé, vous n’avez plus besoin de renseigner les IPs publiques/privées. Il suffit de supprimer les lignes avec les IPs et de mettre les deux autres à la place (ce qui a l’immense avantage de permettre les IPs dynamiques).&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;vi /etc/jitsi/videobridge/sip-communicator.properties
#org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=[IP_MACHINE_LAN]
#org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=[IP_PUBLIQUE_SERVICE]
org.ice4j.ice.harvest.DISABLE_AWS_HARVESTER=true
org.ice4j.ice.harvest.STUN_MAPPING_HARVESTER_ADDRESSES=meet-jit-si-turnrelay.jitsi.net:443
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="premier-test"&gt;Premier test
&lt;/h2&gt;&lt;p&gt;Maintenant qu’on a configuré le firewall et la configuration spécifique pour le NAT, on essaye de faire sa première conf et &amp;hellip; voilà ce que ça donne :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2020/03/20200316_153634.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Comme vous pouvez le voir sur ce superbe cliché, j’ai connecté 3 devices, dont un smartphone, depuis mon wifi vers mon serveur chez Hetzner.
J’ai testé avec Chrome et Firefox, les deux fonctionnent mais il arrive que Jitsi conseille plutôt d’utiliser Chrome. Historiquement, c’était bien mieux supporté, en tout cas.
Pour le smartphone, il existe une application sur l’Android Store et sur F-Droid qui m’a paru assez complète.&lt;/p&gt;
&lt;h2 id="partage-décran"&gt;Partage d’écran
&lt;/h2&gt;&lt;p&gt;C’était une des déceptions que j’avais eu il y a 3 ans lorsque j’avais essayé l’outil. On teste et on se dit : &amp;ldquo;Cool, la vidéo fonctionne&amp;hellip; Mais qu’en est-il ?&amp;rdquo;
Et là c’est (c’était) le drame. A l’époque, j’avais surtout fais le tuto pour cette partie, car il était nécessaire de compiler soit même une extension pour chaque navigateur (et je n’avais réussi à faire fonctionner que celle de Chrome (&lt;a class="link" href="https://blog.zwindler.fr/2016/11/22/jitsi-meet-installation-videoconference-web-open-source/" &gt;cf mon précédent article&lt;/a&gt;).
Heureusement, aujourd’hui, ça fonctionne &lt;em&gt;out of the box&lt;/em&gt; !
Avec quelques limitations tout de même. Si sur Chrome, j’ai pu partager n’importe quelle de mes fenêtres ouvertes, je n’ai réussi à partager que mon navigateur avec Firefox. Je ne sais pas si c’est un souci de mon côté ou une limitation de l’outil.&lt;/p&gt;
&lt;h2 id="quelques-features-sympa"&gt;Quelques features sympa
&lt;/h2&gt;&lt;p&gt;Dans les fonctionnalités &amp;ldquo;nice to have&amp;rdquo;, il existe comme dans un autre outil propriétaire qui en fait massivement la pub à la télé, la possibilité de flouter le fond pour qu’on ne voit pas le bazar que c’est chez vous par exemple. Ça marche assez bien mais ça consomme énormément de CPU (surtout si vous avez un portable avec un CPU un peu faiblard) et ça rajoute quand même un peu de latence.&lt;/p&gt;
&lt;p&gt;On peut espérer que cette fonctionnalité encore en bêta finira par s’améliorer.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2020/03/20200316_154230.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Ma tête n’est pas floutée, c’est l’essentiel&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Le chat fonctionne bien mais la gestion des emoji se limite à une 15aine de signe. Quand on est habitué à Slack et aux émoji personnalisés, c’est vraiment pauvre&amp;hellip;&lt;/p&gt;
&lt;p&gt;Il existe bien entendu une fonction pour demander la parole (et ainsi éviter que ça soit le bazar quand on est nombreux), ainsi que des fonctions pour se mute ou couper sa caméra.&lt;/p&gt;
&lt;p&gt;On peut également choisir sa qualité vidéo et voir la bande passante sur le poste local.&lt;/p&gt;
&lt;h2 id="mais-quelques-manques"&gt;Mais quelques manques
&lt;/h2&gt;&lt;p&gt;Je n’ai pas eu le temps de jouer extensivement avec l’outil, mais il me semble qu’une partie de mes remarques d’il y a 3 ans sont cependant toujours d’actualité.&lt;/p&gt;
&lt;p&gt;L’outil se veut simple : pas d’inscription nécessaire et réunion simple à créer. Le corollaire est que l’outil est parfois simpliste. Pas d’interface d’administration pour vérifier (voire limiter) les consommations de bande passante au niveau global sur le serveur, qui est connecté et quand, etc.&lt;/p&gt;
&lt;p&gt;De même, n’importe qui, de base peut créer une conférence. Si on est un peu parano on peut s’imaginer plein de choses&amp;hellip; (A noter, on peut protéger l’accès à une conférence par un mot de passe une fois qu’on l’a créée).&lt;/p&gt;
&lt;p&gt;Bref, quelques points encore à améliorer pour avoir une solution 100% équivalente aux acteurs payants. Ces mêmes points qu’il y a 3 ans et qui avaient des solutions de contournement mais non triviales (notamment Openfire). Donc à voir si c’est toujours le cas aujourd’hui.&lt;/p&gt;
&lt;p&gt;Mais en attendant que je me penche là dessus, enjoy :)&lt;/p&gt;
&lt;h2 id="sources-et-bonus"&gt;Sources et bonus
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://jitsi.org/jitsi-videobridge-performance-evaluation/" target="_blank" rel="noopener"
&gt;Test de perf &amp;ldquo;aux limites&amp;rdquo;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://community.jitsi.org/t/jitsi-users-corporate-firewall-settings-to-use-jitsi-client-and-webapp-meet-jit-si/10220/2" target="_blank" rel="noopener"
&gt;Un fil de discussion a propos du Firewalling&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Partage de VMDK entre plusieurs VMs</title><link>https://blog.zwindler.fr/2015/01/07/partage-de-vmdk-entre-plusieurs-vms/</link><pubDate>Wed, 07 Jan 2015 16:05:17 +0000</pubDate><guid>https://blog.zwindler.fr/2015/01/07/partage-de-vmdk-entre-plusieurs-vms/</guid><description>&lt;img src="https://blog.zwindler.fr/2015/07/vmware2.webp" alt="Featured image of post Partage de VMDK entre plusieurs VMs" /&gt;&lt;p&gt;Si vous déjà voulu faire un POC de cluster Linux sur des machines virtuelles VMware, vous vous êtes déjà demandé comment vous alliez faire pour partager entre deux serveurs un espace de stockage commun à ces deux machines.&lt;/p&gt;
&lt;p&gt;Une façon de faire consiste à rajouter une couche d’abstraction du stockage au dessus de l’OS (via GlusterFS ou DRBD par exemple), mais dans le cas d’un POC pour valider un cluster connecté au SAN, ce n’est pas forcément la première solution qui vient à l’esprit. Personnellement, la plupart des clusters que je construis sont encore dans un schéma plus simple à base de LUNs  iSCSI ou FC partagés sur un SAN en actif/actif ou actif/passif.&lt;/p&gt;
&lt;p&gt;Cependant, pour simuler ce fonctionnement sur vos VMs, il va falloir bidouiller un peu.&lt;/p&gt;
&lt;p&gt;En effet, pour éviter toute erreur malencontreuse (et même désastreuse), VMware interdit par défaut le démarrage de toute machine virtuelle qui aurait un disque en cours d’utilisation par une autre machine virtuelle. Aïe&amp;hellip;&lt;/p&gt;
&lt;p&gt;Voici un petit mode opératoire pour s’en sortir ;-)&lt;/p&gt;
&lt;p&gt;Dans ce mode opératoire, les disques qu’on souhaite partager entre les deux serveurs sont des disques LVM en miroir, hébergés sur les baies de disques qui sont accessibles depuis les deux serveurs ESXi.&lt;/p&gt;
&lt;p&gt;Cet exemple permet de valider la fiabilité de la méthode dans le cadre d’un cluster Linux virtuel de type RedHat Cluster Suite. Le principe reste tout de même valide pour une utilisation en dehors de RedHat Cluster Suite, certaines opérations ne seront juste pas nécessaires (qui peut le plus peut le moins).&lt;/p&gt;
&lt;h2 id="prérequis"&gt;Prérequis
&lt;/h2&gt;&lt;p&gt;Pour les besoins de la documentation, deux machines virtuelles &lt;strong&gt;test_partage_vmdk_1&lt;/strong&gt; et &lt;strong&gt;test_partage_vmdk_2&lt;/strong&gt; ont été créés. Elles disposent des caractéristiques techniques suivantes :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;test_partage_vmdk_1&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;hébergée sur ESXi1&lt;/li&gt;
&lt;li&gt;RedHat Entreprise Linux 5.8&lt;/li&gt;
&lt;li&gt;2 vCPU, 1 Go de RAM&lt;/li&gt;
&lt;li&gt;50 Go de disque interne sur un espace partagé&lt;/li&gt;
&lt;li&gt;IP 192.168.111.1/24 sur un réseau virtuel&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;test_partage_vmdk_2&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;hébergée sur ESXi2&lt;/li&gt;
&lt;li&gt;RedHat Entreprise Linux 5.8&lt;/li&gt;
&lt;li&gt;2 vCPU, 1 Go de RAM&lt;/li&gt;
&lt;li&gt;50 Go de disque interne sur un espace partagé&lt;/li&gt;
&lt;li&gt;IP 192.168.111.2/24 sur un réseau virtuel&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="création-des-disques-virtuels"&gt;Création des disques virtuels
&lt;/h2&gt;&lt;p&gt;Les machines &lt;strong&gt;test_partage_vmdk_1&lt;/strong&gt; et &lt;strong&gt;test_partage_vmdk_2&lt;/strong&gt; doivent être éteintes avant de réaliser les modifications.&lt;/p&gt;
&lt;p&gt;Ouvrir les paramètres de la machine virtuelle &lt;strong&gt;test_partage_vmdk_1&lt;/strong&gt;, et ajouter un nouveau périphérique (Disque dur).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/01/vmdk_partage1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Le provisionnement du disque doit impérativement être « statique immédiatement mis à zéro ». De plus, il doit aussi être hébergé sur un datastore commun aux deux machines physiques ESXi.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/01/vmdk_partage31.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Créer le disque et l’affecter à un &lt;em&gt;Nœud périphérique virtuel&lt;/em&gt; qui n’est pas encore utilisé.&lt;/p&gt;
&lt;p&gt;Ici, le disque interne est stocké sur l’adresse SCSI (0:0). &lt;strong&gt;Par défaut&lt;/strong&gt; VMware propose de créer le disque à la suite en SCSI (**0:**1).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Il faut impérativement&lt;/strong&gt; dérouler la liste pour affecter le disque à l’adresse SCSI (**1:**0) qui représente un nouveau contrôleur SCSI.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/01/vmdk_partage4.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;De plus, pour permettre l’usage des snapshots sur la partie disque dur interne, les disques doivent être créés en Mode Indépendant/Persistant. &lt;em&gt;Dans le cas contraire, les snapshots seront impossibles sur la machine virtuelle&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Une fois le disque créé, un nouveau contrôleur SCSI est également créé. Avant de valider la création du disque et du contrôleur SCSI, il faut modifier le paramètre de Partage de bus de SCSI en mode « Physique ».&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/01/vmdk_partage5.avif"
loading="lazy"
&gt;[4]Le second disque dur devra être créé de la même manière, et affecté au même contrôleur SCSI (on prendra l’adresse &lt;strong&gt;1:1&lt;/strong&gt;).&lt;/p&gt;
&lt;p&gt;Remettre &lt;strong&gt;test_partage_vmdk_1&lt;/strong&gt; sous tension.&lt;/p&gt;
&lt;h2 id="ajout-des-disques-virtuels-sur-la-deuxième-machine-virtuelle"&gt;Ajout des disques virtuels sur la deuxième machine virtuelle
&lt;/h2&gt;&lt;p&gt;Ouvrir les paramètres de la machine virtuelle &lt;strong&gt;test_partage_vmdk_2&lt;/strong&gt;, ajouter un nouveau périphérique (Disque dur) puis sélectionner « Utiliser un disque virtuel déjà configuré ».&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/01/vmdk_partage6.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Sélectionner le premier disque créé précédemment.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/01/vmdk_partage7.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;De la même manière que précédemment, on doit créer un disque dur virtuel sur un nouveau contrôleur SCSI et en mode &lt;strong&gt;Indépendant-Persistant&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/01/vmdk_partage8.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Modifier le nouveau contrôleur SCSI comme précédemment :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/01/vmdk_partage9.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Ajouter enfin le second disque de la même manière à l’adresse SCSI (1:1).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/01/vmdk_partage101.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Valider et mettre la machine virtuelle sous tension. Si elle boot correctement c’est que le partage fonctionne.&lt;/p&gt;
&lt;h2 id="créer-le-miroir-lvm-partagé"&gt;Créer le miroir LVM partagé
&lt;/h2&gt;&lt;p&gt;Sur &lt;strong&gt;les deux&lt;/strong&gt; serveurs, exécuter les commandes suivantes :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;chkconfig acpid off #seulement pour RHCS
service acpid stop #seulement pour RHCS
vi /etc/lvm/lvm.conf
     filter = [ &amp;#34;a/.*/&amp;#34; ]
   #filter = [ &amp;#34;a|/dev/cciss/.*|&amp;#34;, &amp;#34;a|/dev/mpath.*|&amp;#34;, &amp;#34;r|.*|&amp;#34; ] #utiliser cette ligne en cas d’utilisation de multipath et de disques locaux présentés en tant que /dev/cciss. A adapter au contexte
[…]
volume_list = [ &amp;#34;vg01&amp;#34; , &amp;#34;@[TAG]&amp;#34; ]
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Dans le cas de RedHat Cluster Suite, remplacer &lt;em&gt;[TAG]&lt;/em&gt; par le nom de la machine tel qu’il est définit dans le fichier /etc/cluster/cluster.conf.&lt;/p&gt;
&lt;p&gt;En dehors du cas d’un traitement automatisé par cluster, n’importe quel tag convient du moment qu’il est unique à la machine. Dans le cas présent, les tags choisis sont respectivement tag_vm1 et tag_vm2.&lt;/p&gt;
&lt;p&gt;Quelques précisions :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;filter&lt;/strong&gt; permet de traiter les cas où on doit ignorer certains disques. C’est typiquement nécessaire lorsque l’on utilise LVM avec multipath ou powerpath, car l’OS voit plusieurs « disques » sda ,sdb, &amp;hellip; pour un même disque mpath (1 sdX pour chaque chemin vers mpathY).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;volume_list&lt;/strong&gt; indique à LVM que seul le vg01 (interne) et les VG explicitement taggués avec le nom de la machine qui peuvent être utilisés. Cela permet de s’assurer qu’il n’y a qu’une seule machine qui peut activer le VG du moment qu’on n’ajoute jamais plus d’un tag au VG.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Même si les modifications du fichier lvm.conf sont prises en compte immédiatement, RedHat Cluster Suite impose une recompilation de l’initrd. Dans le cas d’un cluster RHCS, il faut donc lancer la commande suivante :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;mkinitrd -f /boot/initrd-$(uname -r).img $(uname -r)
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Sur un seul nœud (le premier) :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;pvcreate /dev/sdb
pvcreate /dev/sdc
vgcreate -c n vg_mirror /dev/sdb /dev/sdc
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Tagger le VG pour pouvoir travailler dessus sur ce nœud.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;vgchange --addtag tag_vm1 -ay vg_mirror
lvcreate -n lv_mirror -m1 -l 5116 /dev/vg_mirror
Logical volume &amp;#34;lv_mirror&amp;#34; created
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Le journal des écritures doit lui aussi être en miroir&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;lvconvert --mirrorlog mirrored /dev/vg_mirror/lv_mirror
Logical volume lv_mirror converted.
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Il est enfin possible de formater le disque, et de le monter sur le &lt;strong&gt;test_partage_vmdk_1&lt;/strong&gt;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;mkfs.ext3 /dev/vg_mirror/lv_mirror
mount /dev/vg_mirror/lv_mirror /mnt
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="tester-la-bascule"&gt;Tester la bascule
&lt;/h2&gt;&lt;p&gt;Scanner les VGs pour vérifier que le nouveau VG est bien disponible sur le &lt;strong&gt;test_partage_vmdk_2&lt;/strong&gt;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;vgscan
vgs
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Même s’il le VG est visible, il n’est pas possible de le monter car il n’a pas le bon tag (tel que spécifié dans le lvm.conf). Cela permet de vérifier que l’on ne pourra pas écrire sur les disques sur les deux nœuds en même temps.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Not activating vg_mirror/lv_mirror since it does not pass activation filter.
0 logical volume(s) in volume group “vg_mirror” now active
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;On peut démonter le FS, désactiver le vg et enlever le tag sur le serveur &lt;strong&gt;test_partage_vmdk_1&lt;/strong&gt; et vérifier qu’on peut bien le monter et écrire dessus sur le &lt;strong&gt;test_partage_vmdk_2&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Ce comportement est automatique sous RedHat Cluster Suite, qui gère lui même les tags lors de la bascule d’un VG/LV.&lt;/p&gt;
&lt;p&gt;Sur &lt;strong&gt;test_partage_vmdk_1&lt;/strong&gt;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;umount /mnt
vgchange --deltag tag_vm1 -an vg_mirror
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Sur &lt;strong&gt;test_partage_vmdk_2&lt;/strong&gt;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;vgchange --addtag tag_vm1 -ay vg_mirror
mount /dev/vg_mirror/lv_mirror /mnt
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong&gt;Have fun&lt;/strong&gt;&lt;/p&gt;</description></item></channel></rss>