On créé des régions LVM à partir de l'espace libre dans un conteneur LVM. Si il y a au moins une zone d'espace libre dans le conteneur, on peut créer une nouvelle région.
On dispose des options suivantes pour créer des régions LVM :
Le nom de la nouvelle région
Le nombre de zones à allouer à la nouvelle région. Une nouvelle région doit avoir au moins une zone et pas plus que le nombre total de zones libres disponibles dans le conteneur, dans la limite maximum de 65534. Avec l'option extents
, la valeur appropriée pour l'option size est automatiquement calculée. Par défaut, une nouvelle région utilise toutes les zones disponibles dans le conteneur.
La taille de la nouvelle région. Cette taille doit être un multiple de la taille de l'extension physique du conteneur. Avec l'option size
, la valeur appropriée pour l'option extents est automatiquement calculée. Par défaut, une nouvelle région utilise tout l'espace libre disponible dans le conteneur.
Si le conteneur utilise deux objets ou plus, et que chaque objet a une zone non allouée, la nouvelle région peut être répartie sur plusieurs objets. C'est comme pour la répartition RAID-0 et cela permet une augmentation du débit E/S sur un ensemble d'objets. Cette option spécifie sur combien d'objets la nouvelle région peut être répartie. Par défaut, les nouvelles régions ne sont pas réparties sur plusieurs objets, et cette valeur est fixée à 1.
La granularité de la répartition. La valeur par défaut est 16Ko, Utilisez cette option seulement si l'option stripes est plus grande que 1.
Cette option spécifie que la nouvelle région doit être allouée à un seul, et que les zones de cette région doivent être physiquement contigues. La valeur par défaut est "faux" [false], ce qui permet aux régions de s'étendre sur plusieurs objets. Cette option ne peut être utilisée si l'option stripes
est plus grande que 1.
Une liste des noms des objets sur lesquels la nouvelle région doit se placer. Par défaut, cette liste est vide, ce qui signifie que tous les objets disponibles seront utilisés pour allouer de l'espace à la nouvelle région.
On peut agrandir des régions LVM existantes si il y a des zones inutilisées dans le conteneur. Si la région est répartie, on peut l'agrandir seulement en utilisant l'espace libre dans les objets sur lesquels elle est répartie. Si la région a été créée avec l'option contiguous, on peut l'agrandir seulement s'il y a de l'espace physiquement contigu après l'espace déjà alloué.
On dispose des options suivantes pour l'agrandissement des régions LVM :
Le nombre de zone à ajouter à la région. Si on utilise cette option, la valeur appropriée pour l'option add_size est automatiquement calculée. Par défaut, la région s'agrandira en utilisant toutes les zones libres dans le conteneur.
La quantité d'espace à ajouter à la région. Si on utilise cette option, la valeur appropriée pour l'option add_extents est automatiquement calculée. Par défaut la région s'agrandira en utilisant tout l'espace libre dans le conteneur.
Liste des noms des objets à partir desquels allouer l'espace supplémentaire. Par défaut, cette liste est vide, ce qui signifie que tous les objets disponibles seront utilisés pour allouer de l'espace supplémentaire à la région.
On peut réduire une région LVM existante en supprimant deszones se trouvant à la fin de cette région. Les régions doivent avoir au minimum une zone, une région ne peut donc pas être réduite à zéro.
Les options suivantes sont disponibles pour réduire une région LVM. Etant donné qu'on réduit toujours une région en enlevant de l'espace se trouvant en fin de la région, une liste d'objets ne peut être spécifiée dans cette commande.
Nombre de zones à supprimer de la région. Si vous spécifiez cette option, la valeur correspondante pour remove_size
est automatiquement calculée. Par défaut, une seule zone sera supprimée de la région.
Quantité d'espace à enlever de la région. Si vous spécifiez cette option, la valeur correspondante pour remove_extents
est automatiquement calculée.
On peut supprimer une région LVM existante tant qu'elle ne se trouve pas être un volume de compatibilité, un volume EVMS, ou qu'elle n'est pas utilisée par un autre plug-in EVMS. Aucune option n'est disponible pour supprimer les régions LVM.
Le plug-in LVM permet de modifier la liaison logique-physique d'une région LVM et de déplacer, du même coup, les données nécessaires. Cette possibilité est extrêmement utile s'il est nécessaire de retirer un volume physique (PV) d'un conteneur. On trouve actuellement deux fonctions du plug-in LVM pour le déplacement des régions: move_pv et move_extent.
Lorsqu'il est nécessaire d'enlever un volume physique d'un conteneur, toutes les zones physiques de ce volume allouées à des régions doivent être amenées sur d'autres PV. La commande move_pv permet de déplacer des zones physiques sur d'autres PV. move_pv cible le conteneur LVM et le PV qui nous intéresse est utilisé comme objet sélectionné. Les options suivantes sont disponibles :
Par défaut, toutes les zones disponibles des volumes physiques qui sont restés dans le conteneur sont utilisées pour déplacer les PV. On peut spécifier un sous-ensemble de ces PV avec cette option.
Quand le PV cible contient des régions réparties, on a le choix entre trois possibilités pour manipuler le déplacement des zones qui appartiennent à ces régions:
Ce n'est pas la peine de maintenir une vraie répartition. Avec cette option, les zones seront déplacées sur des PV que la région utilise déjà pour d'autres données segmentées. Cela signifie que la performance ne sera pas aussi optimale qu'avec une vraie répartition, mais cela donne une souplesse maximale dans la réalisation des opérations de déplacement. C'est l'option par défaut pour maintain_stripes.
Permet d'éviter que les zones déplacées ne se retrouvent pas sur un PV que la région répartie utilise déjà. Cependant, cela ne garantit pas que toutes les zones déplacées se retrouveront sur le même PV. Par exemple, une région avec trois répartitions peut finir par être rattachée à quatre PV ou plus.
Permet de diriger toutes les zones déplacées sur le même PV, ce qui aboutira à une vraie répartition avec le même nombre de PV utilisés à l'origine par la région répartie. Il s'agit du choix le plus restrictif, et peut empêcher l'opération move_pv de se faire (cela dépend de la configuration particulière du conteneur).
Si le PV ciblé ne possède pas de régions réparties, l'option maintain_stripes est ignorée.
Le plug-in LVM offre la possibilité de déplacer non seulement l'ensemble des zones d'un volume physique, mais aussi de les déplacer isolément. Cela permet un réglage très fin de l'allocation des zones. Cette commande cible la région possèdant la zone à déplacer. Il y a trois options à renseigner pour la commande move_extent :
Numéro de la zone logique à déplacer. Pour LE, les numéros commencent à 0.
Objet cible vers lequel sera déplacée la zone.
Zone physique cible sur l'objet cible. Pour PE, les numéros commencent également à 0.
Pour déterminer le LE source et le PE cible, il est souvent utile de consulter le détail des informations sur la région et le conteneur en question. Ce qui suit correspond aux lignes de commande qui peuvent être utilisées pour réunir ces informations:
Pour visualiser la carte des LE dans la région, entrez cette commande :
query:ei,<region_name>,Extents
Pour visualiser la liste des PV du conteneur, entrez cette commande :
query:ei,<container_name>,Current_PVs
Pour visualiser la carte actuelle des PE pour le PV cible qui vous intéresse, entrez cette commande :
query:ei,<container_name>,PEMapPV#
# représente le numéro du PV cible dans le conteneur.
Ces informations sont également faciles à trouver dans l'interface graphique ou l'interface texte en utilisant la rubrique "Display Details" dans les menus contextuels de la région ou du conteneur.
On peut renommer une région LVM existante. Dans l'interface graphique d'EVMS et l'interface texte, cela se fait en utilisant la commande modify properties, qui est disponible dans le menu "Actions" ou dans les menus contextuels. Dans le CLI d'EVMS, cela se fait en utilisant la commande set.
Si on modifie le nom d'une région LVM qui possède un volume de compatibilité, le nom de ce volume de compatibilité changera également. Afin que cela fonctionne correctement, ce volume doit être démonté pour que son nom soit modifié. De plus, n'oubliez pas de mettre à jour votre fichier /etc/fstab
si le volume y est inscrit, sinon le volume ne sera pas monté correctement au prochain démarrage du système.
Si on modifie le nom d'une région LVM qui possède un volume EVMS ou un autre objet de stockage, le changement de nom de la région sera visible pour les couches supérieures. Dans ce cas, le changement de nom peut se faire même si le volume est monté.