{"id":186,"date":"2011-09-26T14:52:00","date_gmt":"2011-09-26T14:52:00","guid":{"rendered":"http:\/\/hoper.dnsalias.net\/atdc\/index.php\/2011\/09\/26\/20110926lvm-trucs-et-astuces\/"},"modified":"2020-02-12T14:51:39","modified_gmt":"2020-02-12T13:51:39","slug":"20110926lvm-trucs-et-astuces","status":"publish","type":"post","link":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/2011\/09\/26\/20110926lvm-trucs-et-astuces\/","title":{"rendered":"LVM : Trucs et astuces"},"content":{"rendered":"<div class=\"post-content\">\n<p>Apr\u00e8s avoir utilis\u00e9 LVM de fa\u00e7on assez intensive, je vous assure qu&rsquo;il est rare d\u2019\u00eatre ennuy\u00e9 avec cet outil. Voici n\u00e9anmoins quelques astuces pour \u00e9viter les rares pi\u00e8ges dans lesquels vous pourriez tomber.<\/p>\n<h3>Absence des devices dans \/dev<\/h3>\n<p>Au niveau de LVM, tout semble OK. (la commande vgs vous affiche bien vos groupe de volume par exemple). Mais les fichiers habituellement pr\u00e9sent dans \/dev ne sont plus la. Impossible donc de monter le syst\u00e8me de fichier, puisque la commande mount ne trouve pas \u00ab\u00a0\/dev\/nom_vg\/nom_lv\u00a0\u00bb.<\/p>\n<p>Deux causes possibles. Soit les groupes de volumes sont bien actifs, mais quelqu&rsquo;un \u00e0 malencontreusement effac\u00e9 les devices. La commande suivante va les recr\u00e9er automatiquement\u00a0: <strong>vgmknodes<\/strong><\/p>\n<p>Si cette commande ne fonctionne pas, vous \u00eates probablement dans le deuxi\u00e8me cas de figure, et que c&rsquo;est le groupe de volume lui m\u00eame qui n&rsquo;est pas activ\u00e9. Cela se produit par exemple quand le groupe de volume n&rsquo;a pas pu \u00eatre lanc\u00e9 au d\u00e9marrage de la machine, et que le PV \u00e0 \u00e9t\u00e9 \u00ab\u00a0ajout\u00e9\u00a0\u00bb ensuite (r\u00e9-assemblage d&rsquo;un raid apr\u00e8s le d\u00e9marrage de l&rsquo;OS par exemple). La encore, la solution est tr\u00e8s facile, il suffit d&rsquo;activer le groupe de volume avec\u00a0: <strong>vgchange -a y nom_du_vg<\/strong>. Le y permet d&rsquo;activer, un n permet au contraire de rendre le groupe inactif. Les entr\u00e9s dans \/dev sont cr\u00e9es et supprim\u00e9s automatiquement.Notez qu&rsquo;il est aussi possible d&rsquo;activer ou de d\u00e9sactiver chaque volumes logique ind\u00e9pendamment les uns des autres (lvchange -a y nom_du_lv).<\/p>\n<h3>Mieux s\u00e9curiser les m\u00e9ta data sur les disques<\/h3>\n<p>Si vous n&rsquo;avez pas beaucoup de \u00ab\u00a0disques\u00a0\u00bb (PV) dans vos groupes de volumes, il est pr\u00e9f\u00e9rable que les m\u00e9ta donn\u00e9es LVM soient pr\u00e9sentes en plusieurs exemplaires sur les disques. C&rsquo;est \u00e9videment encore plus vrai si il n&rsquo;y a qu&rsquo;un seul disque dans le groupe, ce qui est g\u00e9n\u00e9ralement le cas lorsqu&rsquo;on utilise un stockage en raid. Attention, il n&rsquo;y a qu&rsquo;au moment de la cr\u00e9ation du disque physique avec la commande pvcreate que l&rsquo;on peut indiquer le nombre de copie souhait\u00e9 (0, 1 ou 2) pour les m\u00e9ta donn\u00e9es. L&rsquo;option \u00e0 utiliser est \u00ab\u00a0<strong>&#8211;pvmetadatacopies<\/strong>\u00ab\u00a0, 1 \u00e9tant la valeur par d\u00e9faut. EDIT\u00a0: Attention, une deuxi\u00e8me copie des meta-donn\u00e9es peut toutefois poser probl\u00e8me dans certains cas, voir <a href=\"https:\/\/hoper.dnsalias.net\/tdc\/index.php?post\/2011\/11\/04\/Mini-frayeur-avec-LVM\">ici<\/a>.<\/p>\n<h3>Surveiller et analyser l&rsquo;utilisation des disques<\/h3>\n<p>Si vous aussi vous aimez bien savoir ou sont vos donn\u00e9es, l&rsquo;option -m de pvdisplauy (et lvdisplay) est faite pour vous. Ces informations sont aussi disponibles dans les fichiers \/etc\/lvm\/backup\/*, mais l&rsquo;affichage de <strong>pvdiplay -m pv<\/strong> est plus lisible.<\/p>\n<p>Si vous avez des probl\u00e8mes de performances sur les disques, vous allez probablement vouloir utiliser des outils comme iostat. Malheureusement, lorsque on utilise LVM, on utilise le device mapper. C&rsquo;est aussi le cas lorsque l&rsquo;on fait du chiffrement etc. Au final, la commande iostat ne vous affichera donc plus seulement des disques (\/dev\/sdX) mais des devices de la forme \u00ab\u00a0\/dev\/dm-X\u00a0\u00bb. Chaque device correspondant \u00e0 des volumes logiques diff\u00e9rents, mais il n&rsquo;est pas toujours facile de faire le lien, et donc de trouver quel volume logique est le plus sollicit\u00e9 par exemple.<\/p>\n<p>Pour cela, j&rsquo;ai \u00e9crit ce tout petit <a href=\"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/2012\/03\/28\/lvmiostat\/\">script<\/a>. Il vous permettra d&rsquo;obtenir les informations d&rsquo;un iostat, mais en rempla\u00e7ant les devices \u00ab\u00a0dm-X\u00a0\u00bb par le nom des volumes logiques. Il peut s&rsquo;utiliser de deux fa\u00e7on diff\u00e9rentes. Sans arguments, son affichage correspondra alors \u00e0 la sortie d&rsquo;un iostat -k 1 2. Il est aussi possible de lui donner le nom d&rsquo;un \u00ab\u00a0dm-X\u00a0\u00bb, et il vous donnera l&rsquo;\u00e9quivalent LVM. Exemple\u00a0:<\/p>\n<pre># .\/lvmiostat dm-1\r\n\r\nLe volume correspondant est : ovg-cam\r\n<\/pre>\n<p>Ici, le device \u00ab\u00a0dm-1\u00a0\u00bb correspond donc au volume logique cam, du groupe de volume ovg.<\/p>\n<\/div>\n<h3>Supprimer un groupe de volume sans disques<\/h3>\n<p>Je parle de ce probl\u00e8me <a href=\"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/2019\/07\/08\/lvm-supprimer-un-groupe-de-volume-fantome\/\">ici<\/a> (je n&rsquo;ai rencontr\u00e9 ce cas de figure qu&rsquo;une seule fois)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Apr\u00e8s avoir utilis\u00e9 LVM de fa\u00e7on assez intensive, je vous assure qu&rsquo;il est rare d\u2019\u00eatre ennuy\u00e9 avec cet outil. Voici n\u00e9anmoins quelques astuces pour \u00e9viter les rares pi\u00e8ges dans lesquels vous pourriez tomber. Absence des devices dans \/dev Au niveau de LVM, tout semble OK. (la commande vgs vous affiche bien vos groupe de volume [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-186","post","type-post","status-publish","format-standard","hentry","category-geekitude"],"_links":{"self":[{"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/posts\/186","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/comments?post=186"}],"version-history":[{"count":3,"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/posts\/186\/revisions"}],"predecessor-version":[{"id":1638,"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/posts\/186\/revisions\/1638"}],"wp:attachment":[{"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/media?parent=186"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/categories?post=186"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hoper.dnsalias.net\/atdc\/index.php\/wp-json\/wp\/v2\/tags?post=186"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}