<!-- Chapitre 14. Les opérations de regroupement des secteurs en blocs [clustering] -->
<chapter id="evmsclustope"><title>Les opérations de regroupement des secteurs en blocs [clustering]</title>

<!-- INTRODUCTION -->
<para>

  Ce chapitre explique comment configurer les conteneurs de stockage 
  pour cluster (appelés "conteneurs pour cluster" tout au long de ce 
  chapitre) , fonctionnalité fournie par le gestionnaire de segments 
  pour clusters [Cluster Segment Manager (CSM)] d'EVMS.

</para>

<para>

  Les disques qui sont physiquement accessibles à partir de tous les 
  nœuds du cluster peuvent être regroupés en une seule entité gérable. 
  Les objets de stockage d'EVMS peuvent ensuite être créés en utilisant 
  ces conteneurs comme méthode de stockage.

</para>

<para>

  Chaque conteneur possède un propriétaire indiquant ainsi s'il est 
  privé ou partagé. Un conteneur appartenant à un nœud quelconque 
  s'appelle un conteneur privé. Les objets de stockage d'EVMS et les 
  volumes de stockage créés utilisant de l'espace mémoire à partir d'un 
  conteneur privé sont accessibles uniquement par le nœud 
  propriétaire.

</para>

<para>

  Un conteneur appartenant à tous les nœuds d'un cluster s'appelle un 
  conteneur partagé. Les objets de stockage d'EVMS et les volumes de 
  stockages créés utilisant de l'espace mémoire à partir d'un conteneur 
  partagé sont accessibles simultanément par tous les nœuds du 
  cluster.

</para>
  
<para>

  EVMS fournit les outils permettant de convertir un conteneur privé en 
  un conteneur partagé et vice-versa. Il est également possible de 
  changer le nœud propriétaire d'un conteneur privé.
  
</para>



<!-- 14.1. Règles et restrictions pour la création de conteneurs pour cluster -->
<sect1 id="rulesandrestrictions">

<title>

  Règles et restrictions pour la création de conteneurs pour cluster

</title>

<para>

  Voici les règles et limitations pour la création de conteneurs&nbsp;:
  
</para>

<itemizedlist>
  <listitem><para>Ne pas affecter de disques non-partagés à un conteneur pour cluster.</para></listitem>
  <listitem><para>Les objets de stockages et les volumes créés sur un conteneur pour cluster ne doivent pas recouvrir plusieurs conteneurs pour cluster. L'application de cette règle par le moteur d'EVMS se traduit par un rejet de ce type de configuration.</para></listitem>
  
  <listitem><para>Ne pas affecter RAID-1, RAID-5, BBR, ou la prise d'instantané à des objets de stockage sur des conteneurs pour cluster partagés. Ces plug-ins peuvent être utilisés sur des conteneurs privés.</para></listitem>
</itemizedlist>
</sect1>


<!-- 14.2. Exemple: création d'un conteneur pour cluster privé -->
<sect1 id="createprivatecontainer"><title>Exemple&nbsp;: création d'un conteneur pour cluster privé</title>

<para>Cette partie explique comment créer un conteneur privé type et fournit les indications permettant de réaliser la tâche suivante&nbsp;:</para>

<blockquote>
<example><title>Création d'un conteneur pour cluster privé</title>
<para>Avec un système disposant de trois disques partagés (<filename>sdd</filename>, <filename>sde</filename> et <filename>sdf</filename>), utilisez le gestionnaire de segments pour clusters d'EVMS afin de combiner ces lecteurs de disques dans un conteneur appelé <filename>Priv1</filename> appartenant à <filename>node1</filename>.</para>
</example>
</blockquote>


<!-- 14.2.1. Utilisation de l'interface graphique d'EVMS -->
<sect2 id="createprivcontgui"><title>Utilisation de l'interface graphique d'EVMS</title>

<para>Afin de créer un conteneur avec l'interface d'EVMS, suivez les étapes ci-dessous&nbsp;: <orderedlist>
  <listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
      <guimenuitem>Create</guimenuitem>
      <guimenuitem>Container</guimenuitem></menuchoice> pour afficher la liste des plug-ins qui supportent la création de conteneur. </para></listitem>

  <listitem>
    <para>Sélectionnez le gestionnaire de segments pour clusters. </para>
  </listitem>
    
  <listitem>
    <para>Cliquez sur <guibutton>Next</guibutton>.</para>   
    <para>La boîte de dialogue suivante contient une liste des objets de stockage que le CSM peut utiliser pour créer un conteneur.</para>
  </listitem> 
  
  <listitem>
    <para>Sélectionnez <filename>sdd</filename>, <filename>sde</filename> et <filename>sdf</filename> à partir de la liste.</para>
  </listitem>
  
  <listitem>
    <para>Cliquez sur <guibutton>Next</guibutton>.</para>   
  </listitem> 
  
  <listitem>
    <para>Dans le premier menu déroulant, sélectionnez l'identifiant du nœud ["Node Id"] de cluster auquel appartient ce conteneur (node1). Sélectionnez un type de stockage ["Storage Type"] privé dans le second menu déroulant.</para>   
  </listitem>
  
  <listitem>
    <para>Entrez le nom <filename>Priv1</filename> comme nom du conteneur [Container Name].</para>    
  </listitem>
  
  <listitem>
    <para>Cliquez sur <guibutton>Create</guibutton>.</para>
    <para>Une fenêtre s'ouvre montrant le résultat.</para>
  </listitem>
  
  <listitem>
    <para>Confirmez les changements.</para>
  </listitem>
</orderedlist>
</para>
</sect2>


<!-- 14.2.2. Utilisation de Ncurses -->
<sect2 id="createprivncurses"><title>Utilisation de Ncurses</title>

<para>Afin de créer le conteneur privé avec l'interface Ncurses, suivez les étapes ci-dessous&nbsp;: <orderedlist>
  <listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
        <guimenuitem>Create</guimenuitem>
        <guimenuitem>Container</guimenuitem></menuchoice> pour afficher la liste des plug-ins qui supportent la création de conteneur. </para></listitem>

  <listitem>
    <para>Faites défiler vers le bas avec la flèche descendante et sélectionnez le gestionnaire de segment pour clusters en appuyant sur la barre d'espace. Le plug-in que vous avez sélectionné est marqué par un "x".</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
    <para>Le sous-menu suivant contient la liste des disques que le gestionnaire de segment pour clusters trouve acceptables pour créer un conteneur.</para>
  </listitem>
  
  <listitem>
    <para>Utilisez la barre d'espace pour sélectionner <filename>sdd</filename>, <filename>sde</filename> et <filename>sdf</filename> à partir de la liste. Les disques sélectionnés sont marqués par un "x".</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>Dans le menu <guimenu>Create Container - Configuration Options</guimenu>, utilisez la barre d'espace sur l'identifiant du nœud ce qui fera apparaître une liste des nœuds que vous pouvez sélectionner. </para>
  </listitem>
  
  <listitem>
    <para>Utilisez la <keycap>barre d'espace</keycap> sur le nœud <filename>node1</filename> et faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>Faites défiler vers le bas avec la flèche descendante et utilisez la <keycap>barre d'espace</keycap> sur le Storage Type. Une liste des types de stockages possibles s'ouvre.</para>
  </listitem>
  
  <listitem>
    <para>Faites défiler vers le bas avec la flèche descendante jusqu'au mot privé et appuyez sur la <keycap>barre d'espace</keycap></para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>Faites défiler vers le bas avec la flèche descendante jusqu'à Container Name et appuyez sur la <keycap>barre d'espace</keycap>. Le menu Change Option Value s'ouvre et demande un nom de conteneur [Container Name]. Tapez <filename>Priv1</filename> comme nom de conteneur, et faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap> pour terminer l'opération.</para>
  </listitem>
</orderedlist>

</para>
</sect2>


<!-- 14.2.3. Utilisation du CLI -->
<sect2 id="createprivcli"><title>Utilisation du CLI</title>

<para>L'opération de création d'un conteneur privé avec le CLI prend trois paramètres&nbsp;: le nom du conteneur, le type du conteneur, et l'identifiant du nœud auquel appartient le conteneur.</para>

<para>Sur le CLI, tapez la commande suivante pour créer un conteneur privé <filename>Priv1</filename>&nbsp;:</para>
<para><programlisting>create: container,CSM={name="Priv1",type="private", nodeid="node"},sdd,sde,sdf</programlisting></para>
</sect2>
</sect1>



<!-- 14.3. Exemple: création d'un conteneur pour cluster partagé -->
<sect1 id="createsharedcontainer"><title>Exemple&nbsp;: création d'un conteneur pour cluster partagé</title>

<para>Cette partie explique comment créer un conteneur partagé type et fournit les indications vous aidant à réaliser la tâche suivante&nbsp;:</para>

<blockquote>
  <example><title>Création d'un conteneur pour cluster partagé</title>
    <para>Avec un système disposant de trois disques partagés (<filename>sdd</filename>, <filename>sde</filename> et <filename>sdf</filename>), utilisez le gestionnaire de segments pour clusters afin de combiner ces lecteurs de disques dans un conteneur partagé appelé <filename>Shar1</filename>.</para>
  </example>
</blockquote>


<!-- 14.3.1. Utilisation de l'interface graphique d'EVMS -->
<sect2><title>Utilisation de l'interface graphique d'EVMS</title>
<para>Afin de créer un conteneur de clusters partagé en utilisant l'interface d'EVMS, suivez les étapes ci-dessous&nbsp;: <orderedlist>
  <listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
        <guimenuitem>Create</guimenuitem>
        <guimenuitem>Container</guimenuitem></menuchoice> pour afficher la liste des plug-ins qui supportent la création de conteneur. </para></listitem>
  
  <listitem>
    <para>Sélectionnez le gestionnaire de segments pour clusters.</para>
  </listitem>
  
  <listitem>
    <para>Cliquez sur <guibutton>Next</guibutton>.</para>
    <para>La boîte de dialogue suivante contient une liste des objets de stockage que le CSM peut utiliser pour créer un conteneur.</para>
  </listitem>
  
  <listitem>
    <para>Sélectionnez <filename>sdd</filename>, <filename>sde</filename> et <filename>sdf</filename> à partir de la liste.</para>
  </listitem>
  
  <listitem>
    <para>Cliquez sur <guibutton>Next</guibutton>.</para>
  </listitem>
  
  <listitem>
    <para>Il n'est pas nécessaire de changer le champ "Node Id". Sélectionnez un stockage de type [Storage Type] partagé dans le second menu déroulant.</para>
  </listitem>
  
  <listitem>
    <para>Entrez le nom <filename>Shar1</filename> comme nom du conteneur [Container Name].</para>
  </listitem>
  
  <listitem>
    <para>Cliquez sur <guibutton>Create</guibutton>. Une fenêtre affichant le résultat s'ouvre.</para>
  </listitem>
  
  <listitem>
    <para>Confirmez les changements.</para>
  </listitem>
</orderedlist>  
</para>
</sect2>


<!-- 14.3.2. Utilisation de Ncurses -->
<sect2 id="createsharedcontncurses"><title>Utilisation de Ncurses</title>
  
<para>Afin de créer le conteneur partagé avec l'interface Ncurses, suivez les étapes ci-dessous&nbsp;: <orderedlist>
  <listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
        <guimenuitem>Create</guimenuitem>
        <guimenuitem>Container</guimenuitem></menuchoice> pour afficher la liste des plug-ins qui supportent la création de conteneur. </para></listitem>
  
  <listitem>
    <para>Faites défiler vers le bas avec la flèche descendante et sélectionnez le gestionnaire de segment pour clusters en appuyant sur la <keycap>barre d'espace</keycap>. Le plug-in que vous avez sélectionné est marqué par un "x".</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
    <para>Le sous-menu suivant contient la liste des disques que le gestionnaire de segment pour clusters trouve acceptables pour créer un conteneur.</para>
  </listitem>
  
  <listitem>
    <para>Utilisez la barre d'espace pour sélectionner <filename>sdd</filename>, <filename>sde</filename> et <filename>sdf</filename> à partir de la liste. Les disques sélectionnés sont marqués par un "x".</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>Le menu <guimenu>Create Storage Container - Configuration Options</guimenu> s'ouvre, ignorez le menu "Node Id".</para>
  </listitem>
  
  <listitem>
    <para>Faites défiler vers le bas avec la flèche descendante et utilisez la <keycap>barre d'espace</keycap> sur le type de stockage. Une liste des types de stockage s'ouvre.</para>
  </listitem>
  
  <listitem>
    <para>Faites défiler vers le bas avec la flèche descendante jusqu'au mot partagé et appuyez sur la <keycap>barre d'espace</keycap></para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>Faites défiler vers le bas avec la flèche descendante jusqu'à Container Name et appuyez sur la <keycap>barre d'espace</keycap>. Le menu Change Option Value s'ouvre et demande un nom de conteneur. Tapez <filename>Shar1</filename> comme nom de conteneur, et faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap> pour terminer l'opération.</para>
  </listitem>
  
  <listitem>
    <para>Quittez Ncurses et lancez evms_activate sur chacun des nœuds de cluster. Ce processus sera automatisé dans les prochaines versions d'EVMS.</para>
  </listitem>
</orderedlist>
</para>
</sect2>


<!-- 14.3.3. Utilisation du CLI -->
<sect2 id="createsharedcontcli"><title>Utilisation du CLI</title>
  
<para>L'opération de création d'un conteneur partagé avec le CLI prend deux paramètres&nbsp;: le nom du conteneur et le type du conteneur. Sur le CLI, tapez la commande suivante pour créer un conteneur privé <filename>Shar1</filename>&nbsp;:</para>
<para><programlisting>create: container,CSM={name="Shar1",type="shared"},sdd,sde,sdf</programlisting></para>
  
</sect2>
</sect1>



<!-- 14.4. Exemple: conversion d'un conteneur privé en un conteneur partagé -->
<sect1 id="convertprivtoshared"><title>Exemple&nbsp;: conversion d'un conteneur privé en un conteneur partagé</title>
  
<para>Cette partie explique comment convertir un conteneur privé type en un conteneur partagé et fournit les indications pour réaliser la tâche suivante&nbsp;:</para>

<blockquote>
  <example><title>Conversion d'un conteneur privé en un conteneur partagé</title>
    <para>Avec un système ayant un conteneur de stockage privé <filename>Priv1</filename> appartenant à <filename>evms1</filename>, convertissez <filename>Priv1</filename> en un conteneur de stockage partagé avec le même nom.</para>
  </example>
</blockquote>

<caution>
<title>ATTENTION</title>
<para>Assurez-vous qu'aucune application n'utilise les volumes sur le conteneur sur un des nœuds du cluster.</para>
</caution>


<!-- 14.4.1. Utilisation de l'interface graphique d'EVMS -->
<sect2 id="convertprtoshgui"><title>Utilisation de l'interface graphique d'EVMS</title>

<para>Suivez ces étapes pour convertir un conteneur pour clusters privé en un conteneur pour clusters partagé en utilisant l'interface d'EVMS&nbsp;: <orderedlist>
  <listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
        <guimenuitem>Modify</guimenuitem>
        <guimenuitem>Container</guimenuitem></menuchoice> pour afficher la liste des conteneurs. </para></listitem>

  <listitem>
    <para>Sélectionnez le conteneur <filename>Priv1</filename> et appuyez sur <guibutton>Next</guibutton>.</para>
    <para>Une boîte de dialogue de modification des propriétés [Modify Properties] s'ouvre.</para>
  </listitem>
  
  <listitem>
    <para>Changez "Type" en mettant "partagé" ["shared"] et cliquez sur <guibutton>Modify</guibutton>.</para>
    <para>Une fenêtre affichant le résultat s'ouvre.</para>
  </listitem>
  
  <listitem>
    <para>Confirmez les changements.</para>
  </listitem>
</orderedlist>  
</para>
</sect2>


<!-- 14.2.2. Utilisation de Ncurses -->
<sect2 id="convertprtoshncurses"><title>Utilisation de Ncurses</title>

<para>Suivez les étapes ci-dessous afin de convertir un conteneur pour cluster privé en un conteneur cluster partagé avec l'interface Ncurses &nbsp;: <orderedlist>
  <listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
        <guimenuitem>Modify</guimenuitem>
        <guimenuitem>Container</guimenuitem></menuchoice> pour afficher la liste des conteneurs.</para></listitem>

  <listitem>
    <para>La boîte de dialogue "Modify Container Properties" s'ouvre. Sélectionnez le conteneur <filename>Priv1</filename> en appuyant sur la <keycap>barre d'espace</keycap>. Le conteneur sélectionné est marqué par un "x". Faites <keycap>Entrée</keycap>.</para></listitem>
  
  <listitem>
    <para>Utilisez la <keycap>barre d'espace</keycap> pour sélectionner <filename>sdd</filename>, <filename>sde</filename> et <filename>sdf</filename> à partir de la liste. Les disques sélectionnés sont marqués par un "x".</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>La boîte de dialogue "Modify Container Properties - Configuration Options" s'ouvre. Faites défiler vers le bas avec la flèche descendante et utilisez la <keycap>barre d'espace</keycap> sur "Type".</para>
  </listitem>
  
  <listitem>
    <para>Appuyez sur la <keycap>barre d'espace</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>La boîte de dialogue "Change Option Value" s'ouvre. Tapez "shared" et faites <keycap>Entrée</keycap>.</para>
    <para>La nouvelle valeur est maintenant affichée dans la boîte de dialogue "Modify Container Properties - Configuration Options".</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
    <para>Le résultat de la commande s'affiche en bas de l'écran.</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
  <para>Enregistrez les changements en cliquant sur <guibutton>Save</guibutton> dans le menu déroulant <guimenu>Actions</guimenu>.</para>
  </listitem>
</orderedlist>  
</para>
</sect2>


<!-- 14.4.3. Utilisation du CLI -->
<sect2 id="convertprtoshcli"><title>Utilisation du CLI</title>

  <para>La commande <command>modify</command> modifie les propriétés d'un conteneur. Le premier argument de la commande correspond à l'objet à modifier, suivi des nouvelles propriétés. La commande ci-dessous convertit, dans notre exemple, un conteneur privé en un conteneur partagé &nbsp;:</para>
  
  <para><programlisting>modify: Priv1,type=shared</programlisting></para>
  
</sect2>
</sect1>



<!-- 14.5. Exemple: Conversion d'un conteneur partagé en un conteneur privé -->
<sect1><title>Exemple&nbsp;: création d'un conteneur pour cluster partagé</title>

<para>Cette partie explique comment convertir un conteneur partagé type en un conteneur privé et fournit les indications pour réaliser la tâche suivante&nbsp;:</para>

<blockquote>
  <example><title>Conversion d'un conteneur partagé en un conteneur privé</title>
    <para>Avec un système ayant un conteneur de stockage partagé <filename>Shar1</filename>, convertissez <filename>Shar1</filename> en un conteneur de stockage privé appartenant au nœud <filename>Shar1</filename> (où <filename>Shar1</filename> est l'identifiant d'un des nœuds du cluster).</para>
  </example>
</blockquote>

<caution>
  <title>ATTENTION</title>
  <para>Assurez-vous qu'aucune application n'utilise les volumes sur le conteneur sur un des nœuds du cluster.</para>
</caution>


<!-- 14.5.1. Utilisation de l'interface graphique d'EVMS -->
<sect2 id="convertshtoprgui"><title>Utilisation de l'interface graphique d'EVMS</title>
  
<para>Suivez ces étapes pour convertir un conteneur pour clusters partagé en un conteneur pour clusters privé en utilisant l'interface d'EVMS&nbsp;: <orderedlist>
  <listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
        <guimenuitem>Modify</guimenuitem>
        <guimenuitem>Container</guimenuitem></menuchoice> pour afficher la liste des conteneurs. </para></listitem>

  <listitem>
    <para>Sélectionnez le conteneur <filename>Shar1</filename> et appuyez sur <guibutton>Next</guibutton>.</para>
    <para>Une boîte de dialogue de modification des propriétés [Modify Properties] s'ouvre.</para>
  </listitem>
  
  <listitem>
    <para>Changez "Type" en mettant "privé" et le champ "Node" en mettant <filename>Shar1</filename>. Cliquez sur <guibutton>Modify</guibutton>.</para>
    <para>Une fenêtre affichant le résultat s'ouvre.</para>
  </listitem>
  
  <listitem>
    <para>Confirmez les changements.</para>
  </listitem>
</orderedlist>
</para>
</sect2>


<!-- 14.5.2. Utilisation de Ncurses -->
<sect2 id="convertshtoprncurses"><title>Utilisation de Ncurses</title>

<para>Suivez les étapes ci-dessous afin de convertir un conteneur pour cluster partagé en un conteneur cluster privé avec l'interface Ncurses &nbsp;: <orderedlist>
  <listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
        <guimenuitem>Modify</guimenuitem>
        <guimenuitem>Container</guimenuitem></menuchoice>. </para></listitem>

  <listitem><para>
  
  La boîte de dialogue <quote>Modify Container Properties</quote> 
  s'ouvre. Sélectionnez le conteneur <filename>Shar1</filename> en 
  appuyant sur la <keycap>barre d'espace</keycap>. Le conteneur 
  sélectionné est marqué par un <quote>x</quote>. Faites 
  <keycap>Entrée</keycap>.
  
  </para></listitem>
  
  <listitem>
    <para>La boîte de dialogue "Modify Container Properties - Configuration Options" s'ouvre. Faites défiler vers le bas avec la flèche descendante et utilisez la <keycap>barre d'espace</keycap> sur "Type".</para>
  </listitem>
  
  <listitem>
    <para>Appuyez sur la <keycap>barre d'espace</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>La boîte de dialogue "Change Option Value" s'ouvre. Sélectionnez "private" et faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>La boîte de dialogue "Modify Container Properties - Configuration Options" s'ouvre. Faites défiler la liste vers le bas jusqu'à "NodeId" avec la flèche descendante et appuyez sur la <keycap>barre d'espace</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>La boîte de dialogue "Change Option Value" s'ouvre. Sélectionnez <filename>node1</filename> et faites <keycap>Entrée</keycap>.</para>
  </listitem>
  
  <listitem>
    <para>La nouvelle valeur est maintenant affichée dans la boîte de dialogue "Modify Container Properties - Configuration Options". Faites <keycap>Entrée</keycap>.</para>
    <para>Le résultat de la commande s'affiche en bas de l'écran.</para>
  </listitem>
  
  <listitem>
    <para>Enregistrez les changements en cliquant sur <guibutton>Save</guibutton> dans le menu déroulant <guimenu>Actions</guimenu>.</para>
  </listitem>
</orderedlist>
</para>
</sect2>


<!-- 14.5.3. Utilisation du CLI -->
<sect2 id="convertshtoprcli"><title>Utilisation du CLI</title>

  <para>La commande <command>modify</command> modifie les propriétés d'un conteneur. Le premier argument de la commande correspond à l'objet à modifier, suivi des nouvelles propriétés. La commande ci-dessous convertit, dans notre exemple, un conteneur partagé en un conteneur privé &nbsp;:</para>
  <para><programlisting>modify: Shar1,type=private,node=node1</programlisting></para>

</sect2>
</sect1>



<!-- 14.6. Exemple: expulser un conteneur privé ou partagé -->
<sect1 id="deporttprivorhared"><title>Exemple&nbsp;: expulser un conteneur privé ou partagé</title>

<para>Quand un conteneur est expulsé, le nœud se détache du conteneur et supprime tous les objets créés en mémoire qui appartiennent à ce conteneur. Aucun nœud dans un cluster ne peut retrouver des objets résidant sur des conteneurs expulsés ou créer des objets pour un conteneur expulsé. Cette partie explique comment expulser un conteneur privé ou partagé.</para>

<blockquote>
  <example><title>Expulser un conteneur pour clusters</title>
    <para>Avec un système ayant un conteneur privé ou partagé nommé <filename>c1</filename>, expulsez <filename>c1</filename>.</para>
  </example>
</blockquote>


<!-- 14.6.1. Utilisation de l'interface graphique d'EVMS -->
<sect2 id="deporttprivorharedgui"><title>Utilisation de l'interface graphique d'EVMS</title>
  
<para>Pour expulser un conteneur avec l'interface graphique d'EVMS, suivez les étapes ci-dessous &nbsp;: 
<orderedlist>
  <listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
        <guimenuitem>Modify</guimenuitem>
        <guimenuitem>Container</guimenuitem></menuchoice>. </para></listitem>
  
  <listitem>
    <para>Sélectionnez le conteneur <filename>c1</filename> et appuyez sur <guibutton>Next</guibutton>.</para>
    <para>Une boîte de dialogue "Modify Properties" s'ouvre.</para>
  </listitem>

  <listitem>
    <para>Changez le type ["Type"] en mettant "deported". Cliquez sur "Modify".</para>
    <para>Une fenêtre affichant le résultat s'ouvre.</para>
  </listitem> 
  
  <listitem>
    <para>Confirmez les changements.</para>
  </listitem> 
</orderedlist>
</para>
</sect2>


<!-- 14.6.2. Utilisation de Ncurses -->
<sect2 id="deporttprivorharedncurses"><title>Utilisation de Ncurses</title>
<para>Pour expulser un conteneur avec Ncurses, suivez les étapes ci-dessous &nbsp;: 
<orderedlist>
  <listitem>
    <para>Faites défiler la liste vers le bas jusqu'à "Modify" avec la flèche descendante et faites <keycap>Entrée</keycap>.</para>
    <para>Un sous menu s'affiche.</para>
  </listitem>
  
  <listitem>
    <para>Faites défiler vers le bas jusqu' ce que "Container" soit en surbrillance. Faites <keycap>Entrée</keycap>.</para>
    <para>La boîte de dialogue "Modify Container Properties" s'ouvre.</para>
  </listitem>
  
  <listitem>
    <para>Sélectionnez le conteneur <filename>csm/c1</filename> en appuyant sur la <keycap>barre d'espace</keycap> barre d'espace. Le conteneur sélectionné est marqué par un « x ».</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
    <para>La boîte de dialogue "Modify Container Properties - Configuration Options" s'ouvre.</para>
  </listitem>
  
  <listitem>
    <para>Faites défiler vers le bas et appuyez sur la <keycap>barre d'espace</keycap> sur le champs "Type".</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>barre d'espace</keycap>.</para>
  </listitem>

  <listitem>
    <para>Tapez "deported" et faites <keycap>Entrée</keycap>.</para>
    <para>La nouvelle valeur est maintenant affichée dans la boîte de dialogue "Modify Container Properties - Configuration Options".</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
    <para>Le résultat de la commande s'affiche en bas de l'écran.</para>
  </listitem>
  
  <listitem>
    <para>Faites <keycap>Entrée</keycap>.</para>
    <para>Confirmez les changements en cliquant sur <guibutton>Save</guibutton> dans le menu déroulant <guibutton>Actions</guibutton>.</para>
  </listitem>
</orderedlist>
</para>
</sect2>


<!-- 14.6.3. Utilisation du CLI -->
<sect2 id="deporttprivorharedcli"><title>Utilisation du CLI</title>
  <para>Pour expulser un conteneur à partir du CLI, exécutez la commande ci-dessous à l'invite CLI&nbsp;:</para>
  <para><programlisting>modify: c1,type=deported</programlisting> </para>
</sect2>
</sect1>


<!-- 14.7. Supprimer un conteneur pour clusters. -->
<sect1 id="deletecontainer"><title>Supprimer un conteneur pour clusters.</title>
<para>La procédure pour supprimer un conteneur pour clusters est la même que pour supprimer n'importe quel conteneur. (cf. partie 21.2).</para>
</sect1>


<!-- 14.8. Basculement [failover] et reprise automatique [failback] d'un conteneur privé sur Linux-HA -->
<sect1 id="fofbprivatecont"><title>Basculement [failover] et reprise automatique [failback] d'un conteneur privé sur Linux-HA</title>
  <para>EVMS supporte le gestionnaire de clusters Linux-HA à partir de la version EVMS 2.0. La compatibilité avec le gestionnaire de clusters RSTC est également disponible à partir d'EVMS 2.1 mais n'a pas été aussi largement testée.</para>
  
  <note><title>NOTE</title>
    <para>Assurez-vous que <filename>evms_activate</filename> est appelé dans l'un des scripts de démarrage avant que le script de HeartBeat soit appelé. Si <filename>evms_activate</filename> n'est pas appelé, le basculement pourrait ne pas fonctionner normalement.</para>
  </note>
  
  <para>Suivez les étapes ci-dessous afin de configurer le basculement et la reprise automatique d'un conteneur privé&nbsp;:</para>
  
  <orderedlist>
    <listitem>
      <para>Ajoutez une ligne dans <filename>/etc/ha.d/haresources</filename> pour chaque conteneur privé qui doit être basculé. Par exemple, si <filename>container1</filename> et <filename>container2</filename> doivent être basculé ensemble vers le même nœud avec <filename>node1</filename> comme nœud propriétaire, ajoutez la ligne ci-dessous dans <filename>/etc/ha.d/haresources</filename>&nbsp;:</para>
      <para><programlisting>node1 evms_failover::container1 evms_failover::container2</programlisting></para>
      <para><filename>node1</filename> est le nœud de cluster qui possède cette ressource. La ressource est basculée vers l'autre nœud quand <filename>node1</filename> meurt.</para>
      <para>De la même manière, si <filename>container3</filename> et <filename>container4</filename> doivent être basculés ensemble  vers le même nœud avec <filename>node2</filename> comme nœud propriétaire, ajoutez la ligne ci-dessous dans <filename>/etc/ha.d/haresources</filename>&nbsp;: </para>
      <para><programlisting>node2 evms_failover::container3 evms_failover::container4</programlisting></para>
      <para>Reportez-vous à <ulink url="http://www.linux-ha.org/download/GettingStarted.html">http://www.linux-ha.org/download/GettingStarted.html</ulink> pour plus de détails sur la sémantique des groupes de ressource.</para>
    </listitem>
    
    <listitem>
      <para>Vérifiez que les fichiers <filename>/etc/ha.d</filename>, <filename>/etc/ha.cf</filename> et <filename>/etc/ha.d/haresources</filename> sont les mêmes sur tous les nœuds du cluster.</para>
    </listitem>
    
    <listitem>
      <para>Le gestionnaire de clusters HeartBeat doit être redémarré, comme suit, après que le fichier <filename>/etc/ha.d/haresources</filename> ait été modifié&nbsp;:</para>
      <para><programlisting>/etc/init.d/heartbeat restart</programlisting></para>
    </listitem>
  </orderedlist>
  
  <note><title>NOTE</title>
    <para>N'ajoutez pas de conteneurs partagés à la liste des ressources de basculement, sinon EVMS pourrait avoir des réactions imprévisibles.</para>  
  </note>
</sect1>


<!-- 14.9. Gestion de configuration à distance -->
<sect1 id="remoteconfig"><title>Gestion de configuration à distance</title>
  <para>EVMS supporte l'administration des nœuds de clusters à partir de n'importe quel nœud du cluster. Par exemple, le stockage sur un nœud de cluster distant <filename>node1</filename> peut être administré à partir d'un nœud de cluster <filename>node2</filename>. Les parties qui suivent montrent comment configurer l'administration à distance grâce aux multiples interfaces utilisateurs d'EVMS.</para>

  
<!-- 14.9.1. Utilisation de l'interface graphique d'EVMS -->
<sect2 id="remoteconfiggui"><title>Utilisation de l'interface graphique d'EVMS</title>
  <para>Afin de désigner, à partir de l'interface graphique d'EVMS, <filename>node2</filename> comme le nœud à administrer, suivez les étapes ci-dessous&nbsp;:</para>
  
  <orderedlist>
    <listitem><para>Sélectionnez
      <menuchoice><guimenu>Settings</guimenu>
        <guimenuitem>Node Administered...</guimenuitem>
      </menuchoice></para>
    </listitem>
    
    <listitem>
      <para>Sélectionnez "<filename>node2</filename>.</para>
    </listitem>
    
    <listitem>
      <para>Cliquez sur <guibutton>Administer</guibutton> pour basculer sur le nouveau nœud.</para>
    </listitem>
  </orderedlist>
  
  <para>L'interface graphique réunit les informations à propos des objets, des conteneurs, et des volumes sur les autres nœuds. La barre d'état affiche le message "Now administering node node2" qui indique que l'interface a basculé vers le nœud <filename>node2</filename>.</para>
</sect2>

<!-- 14.9.2. Utilisation de Ncurses -->
<sect2 id="remoteconfigncurses"><title>Utilisation de Ncurses</title>
  <para>Afin de désigner <filename>node2</filename> comme le nœud à administrer à partir de Ncurses, suivez les étapes ci-dessous&nbsp;:</para>
  
  <orderedlist>
    <listitem>
      <para>Allez dans le menu déroulant <guibutton>Settings</guibutton>.</para>
    </listitem>
    
    <listitem>
      <para>Faites défiler vers le bas avec la flèche descendante jusqu'à l'option "Node Adminitered" et faites <keycap>Entrée</keycap>.</para>
    </listitem>
    
    <listitem>
      <para>La boîte de dialogue "Administer Remote Node" s'ouvre. Sélectionnez <filename>node2</filename> et appuyez sur la <keycap>barre d'espace</keycap>.</para>
      <para>Le nœud que vous avez sélectionné est marqué d'un "x".</para>
    </listitem>
    
    <listitem>
      <para>Faites <keycap>Entrée</keycap>.</para>
    </listitem>
    
    <listitem>
      <para>Au bout de quelques instants, vous serez basculé vers le nœud <filename>node2</filename>.</para>
    </listitem>
  </orderedlist>  
</sect2>


<!-- 14.9.3. Utilisation du CLI -->
<sect2 id="remoteconfigcli"><title>Utilisation du CLI</title>
  <para>Afin de désigner <filename>node2</filename> comme nœud à administrer à partir du CLI, saisissez la commande ci-dessous&nbsp;:</para>
  <para><programlisting>evms -n node2</programlisting></para>
</sect2>
</sect1>


<!-- 14.10. Forcer un conteneur de clusters à être actif -->
<sect1 id="forcingcluster"><title>Forcer un conteneur de clusters à être actif</title>
  <para>Un conteneur privé et ses objets sont rendus actifs sur un nœud si&nbsp;:</para>
  <orderedlist>
    <listitem>
      <para>le conteneur privé appartient au nœud.</para>
    </listitem>
    
    <listitem>
      <para>le conteneur n'est pas expulsé.</para>
    </listitem>
    
    <listitem>
      <para>le nœud est dans un groupe de clusters qui a actuellement le quorum.</para>
    </listitem>
  </orderedlist>
  
  <para>De même, un conteneur partagé et ses objets sont rendus actifs sur un nœud si le nœud est dans un cluster qui a actuellement le quorum. Cependant, l'administrateur peut forcer l'activation de conteneurs privés ou partagés en ignorant ces règles.</para>
  
  <note><title>NOTE</title>
    <para>Soyez extrêmement prudent au cours de cette opération et assurez-vous que le nœud sur lequel le conteneur pour cluster réside est le seul nœud actif dans le cluster. Autrement, les données dans les volumes sur les conteneurs privés et partagés sur le nœud peuvent être corrompues.</para>
  </note>
  
  <orderedlist>
    <listitem>
      <para>Mise en service du mode de maintenance dans le fichier /etc/evms.conf. L'option à modifier dans le fichier /etc/evms.conf est la suivante&nbsp;:</para>
      <para><programlisting>
          #cluster segment manager section
          csm {
          # admin_mode=yes  #valeurs possibles: oui ou non
                #Par défaut, c'est non. Mettez la valeur à oui quand vous souhaitez 
                #forcer CSM à rendre visible des objets à partir de tous les  
                #conteneurs de clusters, vous permettant d'effectuer des configurations 
                #et de la maintenance. Avec admin_mode sur yes,  
                #CSM ne tiendra pas compte de l'appartenance des conteneurs, ce qui   
                #vous permettra de configurer le stockage en  mode « maintenance ».</programlisting></para>
    </listitem>
    
    <listitem>
      <para>Lancez evms_activate sur le nœud.</para>
    </listitem>
  </orderedlist>
</sect1>
</chapter>