Whamcloud - gitweb
LUDOC-11 osc: document tunable parameters
[doc/manual.git] / UpgradingLustre.xml
index 5c5aeed..d009f88 100644 (file)
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- This document was created with Syntext Serna Free. --><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 Lustre</title>
-  <para>This chapter describes Lustre interoperability and how to upgrade from Lustre 1.8 to Lustre 2.x, and includes the following sections:</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"/>Lustre Interoperability</para>
+      <para>
+        <xref linkend="dbdoclet.50438205_82079" />
+      </para>
     </listitem>
     <listitem>
-      <para><xref linkend="dbdoclet.50438205_51369"/>Upgrading Lustre 1.8 to 2.x</para>
+      <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>
-          
-          Lustre Interoperability</title>
-    <para>Lustre 2.x 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 users to follow a slightly different procedure to upgrade to Lustre 2.x - 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.x servers can interoperate with compatible 1.8 clients and servers. Lustre 2.x does <emphasis>not</emphasis> support 2.x clients interoperating with 1.8 servers.</para>
-    <note>
-      <para>Lustre 1.8 clients can interoperate with 2.x servers, but the servers should all be upgraded at the same time.</para>
-    </note>
-    <note>
-      <para>Lustre 2.x servers are compatible with clients 1.8.6 and later, though it is strongly recommended that the clients are upgraded to the latest version of Lustre 1.8 available. If you are planning a heterogeneous environment (mixed 1.8 and 2.x servers), make sure that version 1.8.6 or later is installed on the client nodes that are not upgraded to 2.x.</para>
-    </note>
-  </section>
-  <section xml:id="dbdoclet.50438205_51369">
-    <title><indexterm><primary>upgrading</primary><secondary>1.8 to 2.x</secondary></indexterm>Upgrading Lustre 1.8 to 2.x</title>
-    <para>Upgrading from 1.8 to Lustre 2.x involves shutting down the file system and upgrading servers, and optionally clients, all at the same time. This upgrade process does <emphasis>not</emphasis> 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.x upgrade path has been tested, optimum performance will be seen with a freshly formatted 2.x filesystem.</para>
-    </note>
-    <section remap="h3">
-      <title><indexterm><primary>upgrading</primary><secondary>file system</secondary></indexterm>Performing a File System Upgrade</title>
-      <para>This procedure describes a file system upgrade in which Lustre 2.x packages are installed on multiple 1.8 servers and, optionally, clients, requiring a file system shutdown. You can choose to upgrade the entire Lustre file system to 2.x, or just upgrade the servers to Lustre 2.x and leave the clients running 1.8.6 or later.</para>
-      <tip>
-        <para>In a Lustre upgrade, the package install/update can be done either before or after the filesystem is unmount.  To minimize downtime, this procedure first performs the 2.x package installation, and then unmounts the file system.</para>
-      </tip>
-      <orderedlist>
+    <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>Make a complete, restorable file system backup before upgrading Lustre.  The Lustre 2.x on-disk format itself is compatible with the 1.8 on-disk format, but having a backup is always important.  If it is not possible to backup the full filesystem, it is still valuable to have a full device-level backup of the MDT filesystem, as described in <xref linkend="backupandrestore"/>.</para>
+          <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>If you are planning a heterogeneous environment (1.8 clients and 2.x servers), make sure that at least version 1.8.6 is installed on clients that are not upgraded to 2.x.</para>
+          <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>Install the 2.x packages on the Lustre servers and, optionally, the clients.</para>
-          <para>All servers must be upgraded from 1.8 to 2.x at the same time. Some or all clients can be upgraded to 2.x at this time.</para>
-          <para>For help determining where to install a specific package, see <xref linkend="installinglustre.tab.req"/>.</para>
-          <orderedlist>
-            <listitem>
-              <para>Install the kernel, modules and ldiskfs packages. For example:</para>
-              <screen>$ rpm -ivh
-kernel-lustre-smp-&lt;ver&gt; \
-kernel-ib-&lt;ver&gt; \
-lustre-modules-&lt;ver&gt; \
-lustre-ldiskfs-&lt;ver&gt;</screen>
-            </listitem>
-            <listitem>
-              <para>Upgrade the utilities/userspace packages. For example:</para>
-              <screen>$ rpm -Uvh lustre-&lt;ver&gt;</screen>
-            </listitem>
-            <listitem>
-              <para>If a new <literal>e2fsprogs</literal> package is available, upgrade it. For example:</para>
-              <screen>$ rpm -Uvh e2fsprogs-&lt;ver&gt;
-</screen>
-              <para>Use e2fsprogs-1.41.90-wc3 or later, available at:</para>
-              <para><link xl:href="http://downloads.whamcloud.com/public/e2fsprogs/latest/">http://downloads.whamcloud.com/public/e2fsprogs/latest/</link></para>
-            </listitem>
-            <listitem>
-              <para>If you want to add optional packages to your Lustre system, install them now.</para>
-            </listitem>
-          </orderedlist>
+          <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>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>
+  <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>Shut down the file system.</para>
-          <para>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>Unmount the clients. On each client node, run:</para>
-              <screen>umount -a -t lustre</screen>
-            </listitem>
-            <listitem>
-              <para>Unmount the MDT. On the MDS node, run:</para>
-              <screen>umount -a -t lustre</screen>
-            </listitem>
-            <listitem>
-              <para>Unmount the OSTs (be sure to unmount all OSTs). On each OSS node, run:</para>
-              <screen>umount -a -t lustre</screen>
-            </listitem>
-          </orderedlist>
+          <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>Since the kernel will typically be upgraded with a 1.8 to 2.x upgrade, the nodes will need to be rebooted in order to use the new kernel.</para>
+          <para>Unmount the MDT.</para>
         </listitem>
         <listitem>
-          <para>Start the upgraded file system.</para>
-          <para>Start the components in this order: OSTs, then the MDT, then clients.</para>
-          <orderedlist>
-            <listitem>
-              <para>Mount the OSTs (be sure to mount all OSTs). On each OSS node, run:</para>
-              <screen>mount -a -t lustre</screen>
-              <para>This command assumes that all OSTs are listed in the /etc/fstab file.  If the OSTs are not in the /etc/fstab file, they need to be mounted individually by running the mount command:</para>
-              <screen>mount -t lustre &lt;block device name&gt; &lt;mount point&gt; </screen>
-            </listitem>
-            <listitem>
-              <para>Mount the MDT. On the MDS node, run:</para>
-              <screen>mount -a -t lustre</screen>
-            </listitem>
-            <listitem>
-              <para>Mount the file system on the clients. On each client node, run:</para>
-              <screen>mount -a -t lustre</screen>
-            </listitem>
-          </orderedlist>
+          <para>Run the following command to turn off the 
+          <literal>large_xattr</literal> option:
+          <screen>tune2fs -O ^large_xattr</screen></para>
         </listitem>
-      </orderedlist>
-      <para>If you have a problem upgrading Lustre, use the <link xl:href="https://groups.google.com/a/whamcloud.com/group/wc-discuss/">wc-discuss</link> mailing list, or file a ticket at the <link xl:href="https://jira.whamcloud.com">Whamcloud Jira</link> bug tracker.</para>
-    </section>
+      </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>