Whamcloud - gitweb
LUDOC-11 osc: document tunable parameters
[doc/manual.git] / UpgradingLustre.xml
index c8a2fc2..d009f88 100644 (file)
-<?xml version="1.0" encoding="UTF-8"?>
-<chapter version="5.0" xml:lang="en-US" xmlns="http://docbook.org/ns/docbook" xmlns:xl="http://www.w3.org/1999/xlink" xml:id='upgradinglustre'>
-  <info>
-    <title xml:id='upgradinglustre.title'>Upgrading Lustre</title>
-  </info>
-  <para><anchor xml:id="dbdoclet.50438205_pgfId-1289198" xreflabel=""/>This chapter describes Lustre interoperability and how to upgrade to Lustre 2.0, and includes the following sections:</para>
-
-  <itemizedlist><listitem>
-          <para><xref linkend="dbdoclet.50438205_82079"/>Lustre Interoperability</para>
+<?xml version='1.0' encoding='utf-8'?>
+<chapter xmlns="http://docbook.org/ns/docbook"
+xmlns:xl="http://www.w3.org/1999/xlink" version="5.0" xml:lang="en-US"
+xml:id="upgradinglustre">
+  <title xml:id="upgradinglustre.title">Upgrading a Lustre File System</title>
+  <para>This chapter describes interoperability between Lustre software
+  releases. It also provides procedures for upgrading from Lustre software
+  release 1.8 to Lustre software release 2.x , from a Lustre software release
+  2.x to a more recent Lustre software release 2.x (major release upgrade), and
+  from a a Lustre software release 2.x.y to a more recent Lustre software
+  release 2.x.y (minor release upgrade). It includes the following
+  sections:</para>
+  <itemizedlist>
+    <listitem>
+      <para>
+        <xref linkend="dbdoclet.50438205_82079" />
+      </para>
+    </listitem>
+    <listitem>
+      <para>
+        <xref xmlns:xlink="http://www.w3.org/1999/xlink"
+        linkend="Upgrading_2.x" />
+      </para>
+    </listitem>
+    <listitem>
+      <para>
+        <xref xmlns:xlink="http://www.w3.org/1999/xlink"
+        linkend="Upgrading_2.x.x" />
+      </para>
+    </listitem>
+  </itemizedlist>
+  <section xml:id="dbdoclet.50438205_82079">
+    <title>
+    <indexterm>
+      <primary>Lustre</primary>
+      <secondary>upgrading</secondary>
+      <see>upgrading</see>
+    </indexterm>
+    <indexterm>
+      <primary>upgrading</primary>
+    </indexterm>Release Interoperability and Upgrade Requirements</title>
+    <para>
+      <emphasis role="italic">
+        <emphasis role="bold">Lustre software release 2.x (major)
+        upgrade:</emphasis>
+      </emphasis>
+      <itemizedlist>
+        <listitem>
+          <para>All servers must be upgraded at the same time, while some or
+          all clients may be upgraded independently of the servers.</para>
+        </listitem>
+        <listitem>
+          <para>All servers must be be upgraded to a Linux kernel supported by
+          the Lustre software. See the Lustre Release Notes for your Lustre
+         version for a list of tested Linux distributions.</para>
+        </listitem>
+        <listitem>
+          <para>Clients to be upgraded must be running a compatible Linux
+          distribution as described in the Release Notes.</para>
+        </listitem>
+      </itemizedlist>
+    </para>
+    <para>
+      <emphasis role="italic">
+        <emphasis role="bold">Lustre software release 2.x.y release (minor)
+        upgrade:</emphasis>
+      </emphasis>
+    </para>
+    <itemizedlist>
+      <listitem>
+        <para>All servers must be upgraded at the same time, while some or all
+        clients may be upgraded.</para>
       </listitem>
       <listitem>
-          <para><xref linkend="dbdoclet.50438205_51369"/>Upgrading Lustre 1.8.x to 2.0</para>
+        <para>Rolling upgrades are supported for minor releases allowing
+        individual servers and clients to be upgraded without stopping the
+        Lustre file system.</para>
       </listitem>
-  </itemizedlist>
-
-    <section xml:id="dbdoclet.50438205_82079">
-      <title>16.1 Lustre <anchor xml:id="dbdoclet.50438205_marker-1293321" xreflabel=""/>Interoperability</title>
-      <para><anchor xml:id="dbdoclet.50438205_pgfId-1294233" xreflabel=""/>Lustre 2.0 is built on a new architectural code base, which is different than the one used with Lustre 1.8. These architectural changes require existing Lustre 1.8.x users to follow a slightly different procedure to upgrade to Lustre 2.0 - requiring clients to be unmounted and the file system be shut down. Once the servers are upgraded and restarted, then the clients can be remounted. After the upgrade, Lustre 2.0 servers can interoperate with compatible 1.8 clients and servers. Lustre 2.0 does <emphasis>not</emphasis> support 2.0 clients interoperating with 1.8 servers.</para>
-
-              <note><para>Lustre 1.8 clients support a mix of 1.8 and 2.0 OSTs, not all OSSs need to be upgraded at the same time.</para></note>
-              <note><para>Lustre 2.0 is compatible with version 1.8.4 and above. If you are planning a heterogeneous environment (mixed 1.8 and 2.0 servers), make sure that version 1.8.4 is installed on the client and server nodes that are not upgraded to 2.0.</para></note>
-
-    </section>
-    <section xml:id="dbdoclet.50438205_51369">
-      <title>16.2 Upgrading <anchor xml:id="dbdoclet.50438205_marker-1294652" xreflabel=""/>Lustre 1.8.x to 2.0</title>
-      <para><anchor xml:id="dbdoclet.50438205_pgfId-1294654" xreflabel=""/>Upgrading to Lustre 2.0 involves shutting down the file system and upgrading servers, and optionally clients, all at the same time. Lustre 2.0 does not support a rolling upgrade in which the file system operates continuously while individual servers (or their failover partners) and clients are upgraded one at a time.</para>
-
-      <note><para>Although the Lustre 1.8 to 2.0 upgrade path has been tested, for best results we recommend performing a fresh Lustre 2.0 installation, rather than upgrading from 1.8 to 2.0.</para></note>
-
-      <section remap="h3">
-        <title><anchor xml:id="dbdoclet.50438205_pgfId-1291181" xreflabel=""/>16.2.1 <anchor xml:id="dbdoclet.50438205_80840" xreflabel=""/>Performing a <anchor xml:id="dbdoclet.50438205_marker-1293327" xreflabel=""/>File System Upgrade</title>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1291188" xreflabel=""/>This procedure describes a file system upgrade in which Lustre 2.0 packages are installed on multiple 1.8.x servers and, optionally, clients, requiring a file system shut down. You can choose to upgrade the entire Lustre file system to 2.0 or just upgrade the Lustre servers to 2.0 and leave the clients at 1.8.x. Lustre 2.0 servers can interoperate with compatible 1.8 clients and servers.</para>
-                <tip><para>In a Lustre upgrade, the package install and file system unmount steps are reversible; you can do either step first. To minimize downtime, this procedure first performs the 2.0 package installation, and then unmounts the file system.</para></tip>
-
-                <orderedlist><listitem>
-         <para><anchor xml:id="dbdoclet.50438205_pgfId-1291279" xreflabel=""/>Make a complete, restorable file system backup before upgrading Lustre.</para>
-
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1294770" xreflabel=""/>If any Lustre nodes will not be upgraded to 2.0, make sure that these client and server nodes are at version 1.8.4.</para>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1294786" xreflabel=""/>Lustre 2.0 is compatible with version 1.8.4 and above. If you are planning a heterogeneous environment (mixed 1.8 and 2.0 clients and servers), make sure that version 1.8.4 is installed on nodes that are not upgraded to 2.0.</para>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1290500" xreflabel=""/>Install the 2.0 packages on the Lustre servers and, optionally, the clients.</para>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1291180" xreflabel=""/>Some or all servers can be upgraded. Some or all clients can be upgraded.</para>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1290700" xreflabel=""/>For help determining where to install a specific package, see <link xl:href="InstallingLustre.html#50438261_21654">TABLE 8-1</link> (Lustre packages, descriptions and installation guidance).</para>
-                <orderedlist><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1290965" xreflabel=""/>Install the kernel, modules and ldiskfs packages. For example:</para>
-        <screen><anchor xml:id="dbdoclet.50438205_pgfId-1290527" xreflabel=""/>$ rpm -ivh
-<anchor xml:id="dbdoclet.50438205_pgfId-1292146" xreflabel=""/>kernel-lustre-smp-&lt;ver&gt; \
-<anchor xml:id="dbdoclet.50438205_pgfId-1290528" xreflabel=""/>kernel-ib-&lt;ver&gt; \
-<anchor xml:id="dbdoclet.50438205_pgfId-1290529" xreflabel=""/>lustre-modules-&lt;ver&gt; \
-<anchor xml:id="dbdoclet.50438205_pgfId-1290530" xreflabel=""/>lustre-ldiskfs-&lt;ver&gt;
-</screen>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1290595" xreflabel=""/>Upgrade the utilities/userspace packages. For example:</para>
-        <screen><anchor xml:id="dbdoclet.50438205_pgfId-1290597" xreflabel=""/>$ rpm -Uvh lustre-&lt;ver&gt;
-</screen>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1291701" xreflabel=""/>If a new e2fsprogs package is available, upgrade it. For example:</para>
-        <screen><anchor xml:id="dbdoclet.50438205_pgfId-1291702" xreflabel=""/>$ rpm -Uvh e2fsprogs-&lt;ver&gt;
-</screen>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1294595" xreflabel=""/>Use e2fsprogs-1.41-10 or later, available at:</para>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1294597" xreflabel=""/><link xl:href="http://downloads.lustre.org/public/tools/e2fsprogs/">http://downloads.lustre.org/public/tools/e2fsprogs/</link></para>
-        </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1291712" xreflabel=""/>(Optional) If you want to add optional packages to your Lustre system, install them now.</para>
-    </listitem></orderedlist>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1290496" xreflabel=""/>Shut down the file system.</para>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1290712" xreflabel=""/>Shut down the components in this order: clients, then the MDT, then OSTs. Unmounting a block device causes Lustre to be shut down on that node.</para>
-                <orderedlist><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1290276" xreflabel=""/>Unmount the clients. On each client node, run:</para>
-        <screen><anchor xml:id="dbdoclet.50438205_pgfId-1290492" xreflabel=""/>umount &lt;mount point&gt;
-</screen>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1291085" xreflabel=""/>Unmount the MDT. On the MDS node, run:</para>
-        <screen><anchor xml:id="dbdoclet.50438205_pgfId-1291086" xreflabel=""/>umount &lt;mount point&gt;
-</screen>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1291083" xreflabel=""/>Unmount the OSTs (be sure to unmount all OSTs). On each OSS node, run:</para>
-        <screen><anchor xml:id="dbdoclet.50438205_pgfId-1290318" xreflabel=""/>umount &lt;mount point&gt;
-</screen>
-    </listitem></orderedlist>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1292164" xreflabel=""/>Unload the old Lustre modules by rebooting the node or manually removing the Lustre modules.</para>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1294825" xreflabel=""/>Run lustre_rmmod several times and use lsmod to check the currently loaded modules.</para>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1292162" xreflabel=""/>Start the upgraded file system.</para>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1290713" xreflabel=""/>Start the components in this order: OSTs, then the MDT, then clients.</para>
-                <orderedlist><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1292183" xreflabel=""/>Mount the OSTs (be sure to mount all OSTs). On each OSS node, run:</para>
-        <screen><anchor xml:id="dbdoclet.50438205_pgfId-1290430" xreflabel=""/>mount -t lustre &lt;block device name&gt; &lt;mount point&gt;
-</screen>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1292179" xreflabel=""/>Mount the MDT. On the MDS node, run:</para>
-        <screen><anchor xml:id="dbdoclet.50438205_pgfId-1290431" xreflabel=""/>mount -t lustre &lt;block device name&gt; &lt;mount point&gt; 
-</screen>
-    </listitem><listitem>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1290404" xreflabel=""/>Mount the file system on the clients. On each client node, run:</para>
-        <screen><anchor xml:id="dbdoclet.50438205_pgfId-1290467" xreflabel=""/>mount -t lustre &lt;MGS node&gt;:/&lt;fsname&gt; &lt;mount point&gt; 
-</screen>
-    </listitem></orderedlist></listitem></orderedlist>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1294471" xreflabel=""/>If you have a problem upgrading Lustre, contact us via the <link xl:href="https://jira.whamcloud.com">Whamcloud Jira</link> bug tracker.</para>
-        <para><anchor xml:id="dbdoclet.50438205_pgfId-1292981" xreflabel=""/> </para>
-      </section>
+    </itemizedlist>
+  </section>
+  <section xml:id="Upgrading_2.x">
+    <title>
+    <indexterm>
+      <primary>upgrading</primary>
+      <secondary>major release (2.x to 2.x)</secondary>
+    </indexterm>
+    <indexterm>
+      <primary>wide striping</primary>
+    </indexterm>
+    <indexterm>
+      <primary>MDT</primary>
+      <secondary>multiple MDSs</secondary>
+    </indexterm>
+    <indexterm>
+      <primary>large_xattr</primary>
+      <secondary>ea_inode</secondary>
+    </indexterm>
+    <indexterm>
+      <primary>wide striping</primary>
+      <secondary>large_xattr</secondary>
+      <tertiary>ea_inode</tertiary>
+    </indexterm>Upgrading to Lustre Software Release 2.x (Major
+    Release)</title>
+    <para>The procedure for upgrading from a Lustre software release 2.x to a
+    more recent 2.x release of the Lustre software is described in this
+    section.</para>
+    <note>
+      <para>This procedure can also be used to upgrade Lustre software release
+      1.8.6-wc1 or later to any Lustre software release 2.x. To upgrade other
+      versions of Lustre software release 1.8.x, contact your support
+      provider.</para>
+    </note>
+    <note>
+      <para>In Lustre software release 2.2, a feature has been added for
+      ldiskfs-based MDTs that allows striping a single file across up to 2000
+      OSTs. By default, this "wide striping" feature is disabled. It is
+      activated by setting the <literal>ea_inode</literal> option on the MDT
+      using either <literal>mkfs.lustre</literal> or <literal>tune2fs</literal>.
+      For example after upgrading an existing file system to Lustre software
+      release 2.2 or later, wide striping can be enabled by running the
+      following command on the MDT device before mounting it:
+      <screen>tune2fs -O large_xattr</screen>
+      Once the wide striping feature is enabled and in use on the MDT, it is
+      not possible to directly downgrade the MDT file system to an earlier 
+      version of the Lustre software that does not support wide striping. To 
+      disable wide striping:
+      <orderedlist>
+        <listitem>
+          <para>Delete all wide-striped files, <emphasis>OR</emphasis>
+          use <literal>lfs_migrate -c 160</literal> (or fewer stripes)
+          to migrate the files to use fewer OSTs. This does not affect the
+          total number of OSTs that the whole filesystem can access.</para>
+        </listitem>
+        <listitem>
+          <para>Unmount the MDT.</para>
+        </listitem>
+        <listitem>
+          <para>Run the following command to turn off the 
+          <literal>large_xattr</literal> option:
+          <screen>tune2fs -O ^large_xattr</screen></para>
+        </listitem>
+      </orderedlist>Using either 
+      <literal>mkfs.lustre</literal> or 
+      <literal>tune2fs</literal> with 
+      <literal>large_xattr</literal> or 
+      <literal>ea_inode</literal> option reseults in 
+      <literal>ea_inode</literal> in the file system feature list.</para>
+    </note>
+    <note condition="l23">
+      <para>To generate a list of all files with more than 160 stripes use 
+      <literal>lfs find</literal> with the 
+      <literal>--stripe-count</literal> option:
+      <screen>lfs find ${mountpoint} --stripe-count=+160</screen></para>
+    </note>
+    <note condition="l24">
+      <para>In Lustre software release 2.4, a new feature allows using multiple
+      MDTs, which can each serve one or more remote sub-directories in the file
+      system. The 
+      <literal>root</literal> directory is always located on MDT0.</para>
+      <para>Note that clients running a release prior to the Lustre software
+      release 2.4 can only see the namespace hosted by MDT0 and will return an
+      IO error if an attempt is made to access a directory on another
+      MDT.</para>
+    </note>
+    <para>To upgrade a Lustre software release 2.x to a more recent major
+    release, complete these steps:</para>
+    <orderedlist>
+      <listitem>
+        <para>Create a complete, restorable file system backup.</para>
+        <caution>
+          <para>Before installing the Lustre software, back up ALL data. The
+          Lustre software contains kernel modifications that interact with
+          storage devices and may introduce security issues and data loss if
+          not installed, configured, or administered properly. If a full backup
+          of the file system is not practical, a device-level backup of the MDT
+          file system is recommended. See 
+          <xref linkend="backupandrestore" /> for a procedure.</para>
+        </caution>
+      </listitem>
+      <listitem>
+        <para>Shut down the entire filesystem by following
+        <xref linkend="dbdoclet.shutdownLustre"/></para>
+      </listitem>
+      <listitem>
+        <para>Upgrade the Linux operating system on all servers to a compatible
+        (tested) Linux distribution and reboot.</para>
+      </listitem>
+      <listitem>
+        <para>Upgrade the Linux operating system on all clients to Red Hat
+        Enterprise Linux 6 or other compatible (tested) distribution and
+        reboot.</para>
+      </listitem>
+      <listitem>
+        <para>Download the Lustre server RPMs for your platform from the 
+        <link xl:href="https://wiki.whamcloud.com/display/PUB/Lustre+Releases">
+        Lustre Releases</link>repository. See 
+        <xref xmlns:xlink="http://www.w3.org/1999/xlink"
+        linkend="table_cnh_5m3_gk" />for a list of required packages.</para>
+      </listitem>
+      <listitem>
+        <para>Install the Lustre server packages on all Lustre servers (MGS,
+        MDSs, and OSSs).</para>
+        <orderedlist numeration="loweralpha">
+          <listitem>
+            <para>Log onto a Lustre server as the 
+            <literal>root</literal> user</para>
+          </listitem>
+          <listitem>
+            <para>Use the 
+            <literal>yum</literal> command to install the packages:</para>
+            <para>
+              <screen># yum --nogpgcheck install pkg1.rpm pkg2.rpm ... </screen>
+            </para>
+          </listitem>
+          <listitem>
+            <para>Verify the packages are installed correctly:</para>
+            <para>
+              <screen>rpm -qa|egrep "lustre|wc"</screen>
+            </para>
+          </listitem>
+          <listitem>
+            <para>Repeat these steps on each Lustre server.</para>
+          </listitem>
+        </orderedlist>
+      </listitem>
+      <listitem>
+        <para>Download the Lustre client RPMs for your platform from the 
+        <link xl:href="https://wiki.whamcloud.com/display/PUB/Lustre+Releases">
+        Lustre Releases</link>repository. See 
+        <xref xmlns:xlink="http://www.w3.org/1999/xlink"
+        linkend="table_j3r_ym3_gk" />for a list of required packages.</para>
+        <note>
+          <para>The version of the kernel running on a Lustre client must be
+          the same as the version of the 
+          <literal>lustre-client-modules-</literal>
+          <replaceable>ver</replaceable>package being installed. If not, a
+          compatible kernel must be installed on the client before the Lustre
+          client packages are installed.</para>
+        </note>
+      </listitem>
+      <listitem>
+        <para>Install the Lustre client packages on each of the Lustre clients
+        to be upgraded.</para>
+        <orderedlist numeration="loweralpha">
+          <listitem>
+            <para>Log onto a Lustre client as the 
+            <literal>root</literal> user.</para>
+          </listitem>
+          <listitem>
+            <para>Use the 
+            <literal>yum</literal> command to install the packages:</para>
+            <para>
+              <screen># yum --nogpgcheck install pkg1.rpm pkg2.rpm ... </screen>
+            </para>
+          </listitem>
+          <listitem>
+            <para>Verify the packages were installed correctly:</para>
+            <para>
+              <screen># rpm -qa|egrep "lustre|kernel"</screen>
+            </para>
+          </listitem>
+          <listitem>
+            <para>Repeat these steps on each Lustre client.</para>
+          </listitem>
+        </orderedlist>
+      </listitem>
+      <listitem>
+        <para>(Optional) For upgrades to Lustre software release 2.2 or higher,
+        to enable wide striping on an existing MDT, run the following command
+        on the MDT:
+        <screen>tune2fs -O ea_inode /dev/<replaceable>mdtdev</replaceable></screen>
+        </para>
+        <para>For more information about wide striping, see 
+        <xref xmlns:xlink="http://www.w3.org/1999/xlink" linkend="wide_striping" />.</para>
+      </listitem>
+      <listitem>
+        <para>(Optional) For upgrades to Lustre software release 2.4 or higher,
+        to format an additional MDT, complete these steps:
+        <orderedlist numeration="loweralpha">
+          <listitem>
+            <para>Determine the index used for the first MDT (each MDT must
+            have unique index). Enter:
+            <screen>client$ lctl dl | grep mdc
+36 UP mdc lustre-MDT0000-mdc-ffff88004edf3c00 
+      4c8be054-144f-9359-b063-8477566eb84e 5</screen></para>
+            <para>In this example, the next available index is 1.</para>
+          </listitem>
+          <listitem>
+            <para>Add the new block device as a new MDT at the next available
+            index by entering (on one line):
+            <screen>mds# mkfs.lustre --reformat --fsname=<replaceable>filesystem_name</replaceable> --mdt \
+    --mgsnode=<replaceable>mgsnode</replaceable> --index <replaceable>1</replaceable> 
+<replaceable>/dev/mdt1_device</replaceable></screen></para>
+          </listitem>
+        </orderedlist></para>
+      </listitem>
+      <listitem>
+        <para>(Optional) If you are upgrading to Lustre software release 2.3 or
+        higher from Lustre software release 2.2 or earlier and want to enable
+        the quota feature, complete these steps: 
+        <orderedlist numeration="loweralpha">
+          <listitem>
+            <para>Before setting up the file system, enter on both the MDS and
+            OSTs:
+            <screen>tunefs.lustre --quota</screen></para>
+          </listitem>
+      <listitem>
+        <para>(Optional) If you are upgrading before Lustre software release
+        2.10, to enable the project quota feature enter the following on every
+        ldiskfs backend target:
+        <screen>tune2fs –O project /dev/<replaceable>dev</replaceable></screen>
+        </para>
+        <note><para>Enabling the <literal>project</literal> feature will prevent
+            the filesystem from being used by older versions of ldiskfs, so it
+            should only be enabled if the project quota feature is required and/or
+            after it is known that the upgraded release does not need to be
+            downgraded.</para></note>
+      </listitem>
+          <listitem>
+            <para>When setting up the file system, enter:
+            <screen>conf_param $FSNAME.quota.mdt=$QUOTA_TYPE
+conf_param $FSNAME.quota.ost=$QUOTA_TYPE</screen></para>
+          </listitem>
+        </orderedlist></para>
+      </listitem>
+      <listitem>
+        <para>(Optional) If you are upgrading from Lustre software release 1.8,
+        you must manually enable the FID-in-dirent feature. On the MDS, enter:
+        <screen>tune2fs –O dirdata /dev/<replaceable>mdtdev</replaceable></screen></para>
+        <warning>
+          <para>This step is not reversible. Do not complete this step until
+          you are sure you will not be downgrading the Lustre software.</para>
+        </warning>
+       <para condition='l24'>This step only enables FID-in-dirent for newly
+       created files. If you are upgrading to Lustre software release 2.4,
+       you can use namespace LFSCK to enable FID-in-dirent for the existing
+       files. For the case of upgrading from Lustre software release 1.8, it is
+    important to note that if you do NOT enable <literal>dirdata</literal> via
+    the <literal>tune2fs</literal> command above, the namespace LFSCK will NOT
+       generate FID-in-dirent for the existing files. For more information about
+       FID-in-dirent and related functionalities in LFSCK, see
+    <xref xmlns:xlink="http://www.w3.org/1999/xlink"
+    linkend="understandinglustre.storageio" />.</para>
+      </listitem>
+      <listitem>
+        <para>Start the Lustre file system by starting the components in the
+        order shown in the following steps:</para>
+        <orderedlist numeration="loweralpha">
+          <listitem>
+            <para>Mount the MGT. On the MGS, run
+            <screen>mgs# mount -a -t lustre</screen></para>
+          </listitem>
+          <listitem>
+            <para>Mount the MDT(s). On each MDT, run:
+            <screen>mds# mount -a -t lustre</screen></para>
+          </listitem>
+          <listitem>
+            <para>Mount all the OSTs. On each OSS node, run:</para>
+            <screen>oss# mount -a -t lustre</screen>
+            <note>
+              <para>This command assumes that all the OSTs are listed in the 
+              <literal>/etc/fstab</literal> file. OSTs that are not listed in
+              the 
+              <literal>/etc/fstab</literal> file, must be mounted individually
+              by running the mount command:</para>
+              <screen>mount -t lustre <replaceable>/dev/block_device</replaceable><replaceable>/mount_point</replaceable></screen>
+            </note>
+          </listitem>
+          <listitem>
+            <para>Mount the file system on the clients. On each client node,
+            run:</para>
+            <screen>client# mount -a -t lustre</screen>
+          </listitem>
+        </orderedlist>
+      </listitem>
+    </orderedlist>
+    <note>
+      <para>The mounting order described in the steps above must be followed
+      for the initial mount and registration of a Lustre file system after an
+      upgrade. For a normal start of a Lustre file system, the mounting order
+      is MGT, OSTs, MDT(s), clients.</para>
+    </note>
+    <para>If you have a problem upgrading a Lustre file system, see 
+    <xref xmlns:xlink="http://www.w3.org/1999/xlink"
+    linkend="dbdoclet.50438198_30989" />for some ways to get help.</para>
+  </section>
+  <section xml:id="Upgrading_2.x.x">
+    <title>
+    <indexterm>
+      <primary>upgrading</primary>
+      <secondary>2.X.y to 2.X.y (minor release)</secondary>
+    </indexterm>Upgrading to Lustre Software Release 2.x.y (Minor
+    Release)</title>
+    <para>Rolling upgrades are supported for upgrading from any Lustre software
+    release 2.x.y to a more recent Lustre software release 2.X.y. This allows
+    the Lustre file system to continue to run while individual servers (or
+    their failover partners) and clients are upgraded one at a time. The
+    procedure for upgrading a Lustre software release 2.x.y to a more recent
+    minor release is described in this section.</para>
+    <para>To upgrade Lustre software release 2.x.y to a more recent minor
+    release, complete these steps:</para>
+    <orderedlist>
+      <listitem>
+        <para>Create a complete, restorable file system backup.</para>
+        <caution>
+          <para>Before installing the Lustre software, back up ALL data. The
+          Lustre software contains kernel modifications that interact with
+          storage devices and may introduce security issues and data loss if
+          not installed, configured, or administered properly. If a full backup
+          of the file system is not practical, a device-level backup of the MDT
+          file system is recommended. See 
+          <xref linkend="backupandrestore" /> for a procedure.</para>
+        </caution>
+      </listitem>
+      <listitem>
+        <para>Download the Lustre server RPMs for your platform from the 
+        <link xl:href="https://wiki.whamcloud.com/display/PUB/Lustre+Releases">
+        Lustre Releases</link>repository. See 
+        <xref xmlns:xlink="http://www.w3.org/1999/xlink"
+        linkend="table_cnh_5m3_gk" />for a list of required packages.</para>
+      </listitem>
+      <listitem>
+        <para>For a rolling upgrade, complete any procedures required to keep
+        the Lustre file system running while the server to be upgraded is
+        offline, such as failing over a primary server to its secondary
+        partner.</para>
+      </listitem>
+      <listitem>
+        <para>Unmount the Lustre server to be upgraded (MGS, MDS, or
+        OSS)</para>
+      </listitem>
+      <listitem>
+        <para>Install the Lustre server packages on the Lustre server.</para>
+        <orderedlist numeration="loweralpha">
+          <listitem>
+            <para>Log onto the Lustre server as the 
+            <literal>root</literal> user</para>
+          </listitem>
+          <listitem>
+            <para>Use the 
+            <literal>yum</literal> command to install the packages:</para>
+            <para>
+              <screen># yum --nogpgcheck install pkg1.rpm pkg2.rpm ... </screen>
+            </para>
+          </listitem>
+          <listitem>
+            <para>Verify the packages are installed correctly:</para>
+            <para>
+              <screen>rpm -qa|egrep "lustre|wc"</screen>
+            </para>
+          </listitem>
+          <listitem>
+            <para>Mount the Lustre server to restart the Lustre software on the
+            server:
+            <screen>server# mount -a -t lustre</screen></para>
+          </listitem>
+          <listitem>
+            <para>Repeat these steps on each Lustre server.</para>
+          </listitem>
+        </orderedlist>
+      </listitem>
+      <listitem>
+        <para>Download the Lustre client RPMs for your platform from the 
+        <link xl:href="https://wiki.whamcloud.com/display/PUB/Lustre+Releases">
+        Lustre Releases</link>repository. See 
+        <xref xmlns:xlink="http://www.w3.org/1999/xlink"
+        linkend="table_j3r_ym3_gk" />for a list of required packages.</para>
+      </listitem>
+      <listitem>
+        <para>Install the Lustre client packages on each of the Lustre clients
+        to be upgraded.</para>
+        <orderedlist numeration="loweralpha">
+          <listitem>
+            <para>Log onto a Lustre client as the 
+            <literal>root</literal> user.</para>
+          </listitem>
+          <listitem>
+            <para>Use the 
+            <literal>yum</literal> command to install the packages:</para>
+            <para>
+              <screen># yum --nogpgcheck install pkg1.rpm pkg2.rpm ... </screen>
+            </para>
+          </listitem>
+          <listitem>
+            <para>Verify the packages were installed correctly:</para>
+            <para>
+              <screen># rpm -qa|egrep "lustre|kernel"</screen>
+            </para>
+          </listitem>
+          <listitem>
+            <para>Mount the Lustre client to restart the Lustre software on the
+            client:
+            <screen>client# mount -a -t lustre</screen></para>
+          </listitem>
+          <listitem>
+            <para>Repeat these steps on each Lustre client.</para>
+          </listitem>
+        </orderedlist>
+      </listitem>
+    </orderedlist>
+    <para>If you have a problem upgrading a Lustre file system, see 
+    <xref xmlns:xlink="http://www.w3.org/1999/xlink"
+    linkend="dbdoclet.50438198_30989" />for some suggestions for how to get
+    help.</para>
   </section>
 </chapter>